Direct answer
To determine a nonprofit's IRS subsection from its EIN, send the EIN to Pactman Nonprofit Check Plus API and review bmf_subsection together with subsection_description.
bmf_subsection is the subsection code returned from the IRS Business Master File data used by Pactman. subsection_description provides the mapped description for that code. Confirm bmf_status, bmf_ein and bmf_organization_name first so the subsection is tied to the intended BMF record, then keep foundation, Pub. 78, revocation and source-conflict information separate.
Recommended verification flow
- Normalize the EIN. Remove spaces or dashes so
12-3456789becomes123456789. - Send the EIN to the Nonprofit Check Plus API. Use the single-EIN endpoint for one nonprofit or the bulk endpoint for multiple EINs.
- Confirm the organization. Match
einandorganization_nameto the nonprofit your application intended to evaluate. - Confirm BMF presence. Review
bmf_status. - Confirm the BMF record identity. Review
bmf_einandbmf_organization_name. - Read the subsection code. Use
bmf_subsection. - Read the mapped subsection description. Use
subsection_descriptionwith the code instead of storing the code alone. - Keep foundation classification separate. Review
foundation_code,foundation_code_description,foundation_509a_status,foundation_type_codeandfoundation_type_descriptionwhen your workflow also needs public-charity/private-foundation context. - Check freshness. Review
most_recent_bmfandorganization_info_last_modified. - Use other IRS signals separately. Review
pub78_verified, revocation fields andirs_bmf_pub78_conflictonly when the workflow needs information beyond the BMF subsection.
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_status |
Indicates whether the organization appears in the Business Master File data used by Pactman. | Interpret BMF subsection fields only in the context of the returned BMF record. |
bmf_ein / bmf_organization_name |
Preserves the EIN and organization name as represented in the BMF data. | Confirm that the subsection belongs to the intended nonprofit. |
bmf_subsection |
Returns the subsection code from the Business Master File. The supplied mapping states that the code designates the type of tax-exempt organization. | Store or route the returned subsection code as its own IRS classification attribute. |
subsection_description |
Provides the mapped description corresponding to bmf_subsection. |
Present or store the human-readable classification together with the code. |
exempt_status_code |
Provides the EO status code describing the type of exemption held by the organization. | Keep as a separate exemption-status attribute rather than treating it as the subsection code. |
| Foundation classification fields | foundation_code, foundation_code_description, foundation_509a_status, foundation_type_code and foundation_type_description describe foundation context separately from subsection. |
Do not infer public-charity/private-foundation classification from bmf_subsection alone. |
most_recent_bmf |
Provides the date of the most recent IRS Business Master File used by Pactman. | Use as a freshness input for the subsection result. |
bmf_church_message |
Can provide context when a church or religious organization does not follow ordinary BMF-presence expectations. | Apply religious-organization exception logic when this field is populated. |
| Other IRS signals | pub78_verified, revocation fields and irs_bmf_pub78_conflict answer questions separate from BMF subsection classification. |
Preserve them independently when the broader workflow requires those checks. |
Example decision logic
A practical subsection lookup might:
- match
einandorganization_nameto the intended nonprofit; - confirm
bmf_statusand the BMF identity fields; - read
bmf_subsection; - pair it with
subsection_description; - retain
exempt_status_codeand foundation fields separately; and - consider
most_recent_bmfbefore treating the subsection information as current enough for the workflow.
The supplied bulk sample provides a concrete example. For EIN "680343125", Pactman returns bmf_status: true, bmf_ein: "680343125", bmf_subsection: "03" and subsection_description: "501(c)(3) Public Charity". The same record separately returns foundation_code: "16", foundation_type_code: "pc" and foundation_type_description: "Public charity described in section 509(a)(1) or (2)".
Important: Do not interpret bmf_subsection as a complete substitute for foundation classification, Pub. 78 contribution status or current revocation status. The Pactman response exposes those as separate fields because they answer different nonprofit-verification questions.
Why use a consolidated nonprofit verification API?
An IRS subsection lookup is more useful when the application can receive the subsection code, its description, BMF identity, exemption status, foundation context and source freshness in one normalized record.
Pactman Nonprofit Check Plus returns those fields alongside Pub. 78, revocation and other verification signals. The supplied single-EIN and bulk examples use the same current 43 organization-level fields, so the same subsection logic can be reused for interactive and batch workflows.
One normalized response
Retrieve BMF presence, source identity, subsection code, subsection description, exemption status and foundation context from one Pactman organization record.
Separate source signals
Keep bmf_subsection, foundation fields, pub78_verified, revocation fields and irs_bmf_pub78_conflict distinct so your application preserves what each field actually represents.
Reusable compliance rules
Apply one subsection-interpretation layer across nonprofit onboarding, donations, grants, fintech and recurring compliance workflows.
Developer-friendly automation
Convert the EIN directly into structured BMF subsection attributes instead of requiring users or staff to manually search and interpret IRS records.
Frequently asked questions
Which Pactman field contains the IRS subsection code?
Use bmf_subsection. The supplied data mapping describes it as the subsection code from the Business Master File that designates the type of tax-exempt organization.
What is subsection_description used for?
It provides the description corresponding to bmf_subsection. Store or display both fields together so your application retains the IRS code and its human-readable classification.
Does a subsection code tell me whether the organization is a public charity or private foundation?
Not by itself. Pactman returns separate foundation-specific fields such as foundation_code, foundation_509a_status, foundation_type_code and foundation_type_description. Keep those separate from BMF subsection classification.
What if the nonprofit is not present in the BMF?
Review bmf_church_message when populated and evaluate the other source signals required by your workflow. The supplied data mapping specifically includes this message for church or religious-organization cases where ordinary BMF inclusion may not be required to validate status.
Related Pactman artifacts
- How to Interpret IRS BMF Data for a Nonprofit
- How to Check a Nonprofit in the IRS Business Master File
- How to Interpret the IRS Deductibility Code for a Nonprofit
Next step
Use bmf_subsection and subsection_description as a paired IRS classification result, preserve foundation and exemption fields separately, and apply Pub. 78, revocation and conflict logic only when the broader verification workflow requires them.
Ready to automate IRS subsection lookups?
Use Pactman Nonprofit Check Plus API to retrieve IRS BMF subsection data directly from an EIN.