Pactman Developer Resources · Nonprofit verification answers for developers and compliance teams
Home  /  Artifacts  /  How to Determine Which IRS Record Is Newer When Nonprofit Data Conflicts
Artifact · Developer How-To

How to Determine Which IRS Record Is Newer When Nonprofit Data Conflicts

Compare `most_recent_pub78` with `most_recent_bmf` when the conflict is between Pub. 78 and BMF. Use `organization_info_last_modified` only as the date Pactman last refreshed the organization's details, not as a substitute IRS source date. Keep `report_date` separate as the time the API returned the result.

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

Direct answer

When Pub. 78 and BMF conflict, compare their source-specific dates: most_recent_pub78 and most_recent_bmf.

Use organization_info_last_modified separately. The mapping defines it as the date the organization's details were last refreshed in the Pactman database. report_date is also separate: it is when the Nonprofit Check API returned the result.

  1. Identify the fields that conflict.
  2. Determine which source each field belongs to.
  3. Read most_recent_pub78 for Pub. 78.
  4. Read most_recent_bmf for BMF.
  5. Compare the source dates directly.
  6. Review organization_info_last_modified.
  7. Keep report_date separate.
  8. Review irs_bmf_pub78_conflict only for its documented private-foundation scope.
  9. Preserve both source values.
  10. Apply a policy based on the question your application is answering.

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
most_recent_pub78 Date of the most recent Pub. 78 represented in the response. Use as the Pub. 78 freshness date.
most_recent_bmf Date of the most recent BMF represented in the response. Use as the BMF freshness date.
organization_info_last_modified Date the organization's details were last refreshed in Pactman's database. Use as Pactman refresh context, not an IRS source date.
report_date Date and time the API returned the result. Treat as response-generation time, not source freshness.
irs_bmf_pub78_conflict Specific private-foundation conflict flag. Use only for the documented conflict scope.

Example decision logic

A freshness layer might:

  • identify the conflicting source values;
  • compare most_recent_pub78 and most_recent_bmf;
  • preserve both values and dates;
  • use organization_info_last_modified to understand Pactman refresh timing; and
  • avoid substituting report_date for an IRS source date.

In the supplied bulk sample, most_recent_pub78 is later than most_recent_bmf for the shown records. That demonstrates how the source dates can differ in the same response.

Important: "Newer" does not automatically mean "correct for every business question." Preserve source meaning as well as chronology.

Why use a consolidated nonprofit verification API?

Source conflicts are easier to analyze when source values and source dates are returned together.

Pactman exposes both freshness dimensions in one response.

One normalized response

Compare IRS-source dates without separate data pipelines.

Separate source signals

Keep Pub. 78, BMF, Pactman refresh and API report timestamps distinct.

Reusable compliance rules

Apply consistent freshness logic across onboarding, donations and grants.

Developer-friendly automation

Route newer/older source combinations through testable application logic.

Frequently asked questions

Which fields tell me the Pub. 78 and BMF source dates?

Use most_recent_pub78 and most_recent_bmf.

Is organization_info_last_modified an IRS source date?

No. It is the Pactman database refresh date for the organization details.

Is report_date the same as source freshness?

No. It is the date and time the API returned the result.

Should I always choose the newer source?

The supplied files do not define a universal precedence rule. Use source meaning and your application policy as well as chronology.

Next step

Compare most_recent_pub78 and most_recent_bmf, preserve both source values, and keep Pactman refresh and report timestamps separate.

Ready to make source freshness explicit?

Use Pactman Nonprofit Check Plus API to compare Pub. 78, BMF and Pactman refresh timestamps without collapsing their meanings.

Get an API Key →