Pactman Developer Resources · Nonprofit verification answers for developers and compliance teams
Home  /  Artifacts  /  How to Check Whether a 501(c)(3) Was Automatically Revoked for Failure to File
Artifact · Developer How-To

How to Check Whether a 501(c)(3) Was Automatically Revoked for Failure to File

Use `revocation_code` and `revocation_date` to identify Automatic Revocation file data, and use `filing_req_code` to preserve the organization's filing-requirement code. However, the supplied current API schema does not include a dedicated field that states the cause of revocation or proves a specific missed-filing history. Do not claim failure-to-file causation solely from these fields.

Updated September 28, 20266 min readFor developers, compliance teams, grantmaking platforms & fintech and nonprofit software teams

Direct answer

Use revocation_code and revocation_date to identify Automatic Revocation file data, and preserve filing_req_code as the organization's filing-requirement code.

The supplied current response does not contain a dedicated field that states why the organization was revoked or records a specific missed-filing sequence. The API fields support detecting revocation data and filing requirements, but they do not by themselves prove the failure-to-file cause described in the article title.

  1. Normalize the EIN.
  2. Send the EIN to the Nonprofit Check Plus API.
  3. Confirm the organization.
  4. Confirm 501(c)(3) context. Review bmf_subsection and subsection_description.
  5. Review Automatic Revocation data. Check revocation_code and revocation_date.
  6. Review filing requirements. Check filing_req_code.
  7. Check reinstatement. Review reinstatement_date.
  8. Review BMF and Pub. 78 separately. Check bmf_status and pub78_verified.
  9. Check freshness.
  10. Do not infer the revocation cause. Require an explicit source if your workflow needs that fact.

Example request(s)

curl --request GET \
  --url https://entities.pactman.org/api/entities/nonprofitcheck/v1/us/ein/YOUR_EIN \
  --header 'Authorization: Bearer YOUR_API_KEY'

Implementation note: The endpoint name above reflects the Pactman single-EIN Nonprofit Check endpoint used in Pactman's Production/Customer Environment.

curl --request POST \
  --url https://entities.pactman.org/api/entities/nonprofitcheckbulk/v1/us/eins \
  --header 'accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '[
    "YOUR_EIN_1",
    "YOUR_EIN_2",
    "YOUR_EIN_3",
    "YOUR_EIN_4",
    "YOUR_EIN_5"
  ]'

Implementation note: The endpoint name above reflects the Pactman bulk-EIN Nonprofit Check endpoint used in Pactman's Production/Customer Environment. You can have at most 50 EINs in a bulk-EIN Nonprofit Check endpoint request.

What your application should evaluate

Signal Why it matters Typical application decision
bmf_subsection / subsection_description Provides BMF subsection context. Preserve the returned 501(c) classification information.
revocation_code Comes from the IRS Automatic Revocation file according to the mapping. Use as Automatic Revocation file context.
revocation_date Provides the revocation date, if any. Date the revocation event.
filing_req_code Specifies the main tax return or returns the organization is obligated to file. Preserve filing requirements separately from revocation.
reinstatement_date Provides a reinstatement date, if any. Distinguish historical revocation from later reinstatement.
Source dates most_recent_bmf, most_recent_pub78 and organization_info_last_modified provide freshness context. Use for broader current-status evaluation.

Example decision logic

A conservative workflow might:

  • confirm the nonprofit's returned subsection;
  • detect Automatic Revocation data using the revocation fields;
  • retain filing_req_code;
  • check reinstatement;
  • preserve BMF and Pub. 78 status separately; and
  • label the revocation cause as unknown unless an explicit source provides that cause.

The supplied current examples contain null revocation fields, so they do not provide a positive automatically-revoked test case.

Important: filing_req_code describes required returns. It is not a missed-filing counter or revocation-cause field in the supplied schema.

Why use a consolidated nonprofit verification API?

A revocation workflow benefits from BMF subsection, filing requirements, revocation history and current-source context together.

Pactman Nonprofit Check Plus returns those signals while preserving separate meanings.

One normalized response

Bring filing-requirement and Automatic Revocation data together.

Separate source signals

Avoid treating a filing requirement as proof of a filing failure.

Reusable compliance rules

Apply conservative cause-handling across grantmaking, donations and onboarding.

Developer-friendly automation

Automate what the response supports while flagging what requires additional evidence.

Frequently asked questions

Can the current API prove that the revocation happened because the nonprofit failed to file?

Not from the supplied fields alone.

What does filing_req_code tell me?

It specifies the main tax return or returns the organization is obligated to file.

Which fields identify Automatic Revocation data?

Use revocation_code and revocation_date.

Should I also check reinstatement_date?

Yes. A later reinstatement can change how your workflow treats historical revocation.

Next step

Use the revocation fields to detect Automatic Revocation data and filing_req_code for filing obligations, but require explicit evidence before assigning a failure-to-file cause.

Ready to automate 501(c)(3) revocation screening?

Use Pactman Nonprofit Check Plus API to combine Automatic Revocation data with filing-requirement context.

Get an API Key →