Compare General, Research, and Ownership Payments
Understand the three CMS Open Payments datasets before combining or comparing them.

Understand the three CMS Open Payments datasets before combining or comparing them. The CMS Open Payments Scraper provides a bounded connector to the authoritative publisher while preserving stable identifiers and source URLs on every row.
Start with a small, reviewable query
{"paymentType":"general","year":2025,"offset":0,"maxResults":1000}Run a small sample before expanding the result limit. Inspect identifiers, dates, null values, units, qualifiers, and source fields in the Apify Dataset. Export as JSON for nested fields or CSV and Excel for review. For recurring ingestion, upsert on the publisher stable record dimensions instead of assuming every run is append-only.
Build a reliable data pipeline
The Actor uses direct HTTP requests, bounded inputs, transient-error retries, and explicit empty-result failures. It does not require a browser or paid proxy, so scheduled runs remain inexpensive. Keep the input in an Apify Task, send completion through a webhook, and load the dataset into a warehouse or dashboard. Store collection time downstream so source revisions can be distinguished from newly published records.
Interpret the source responsibly
Official publication does not remove the need for context. Preserve footnotes, status fields, dataset type, reporting period, and source attribution. A missing value is not zero, and a revised record is not necessarily a new event. For legal, medical, financial, safety, protection, or public-policy decisions, confirm material findings with the publisher and a qualified specialist.
This workflow is designed for healthcare transparency teams, journalists, and compliance researchers. It is an independent integration and is not affiliated with or endorsed by the source institution.
Keep the three CMS record families distinct
General payments describe transfers such as consulting, food, travel, or education; research payments cover research-related transfers; ownership records describe investment interests. Their units and meanings differ, so build separate fact tables with a shared recipient dimension rather than stacking them as identical transactions. Compare recipient coverage, payer concentration, record counts, and disclosed amounts within each family. If a combined view is necessary, label the record type on every row and avoid one undifferentiated total. Confirm the program year and applicable definitions in CMS documentation before explaining a cross-category difference.
Frequently asked questions
Does this workflow require a source API key?
No. It uses the source publisher public keyless interface.
Can I schedule the export?
Yes. Save the input as an Apify Task and attach a schedule or webhook.
Related
100 free credits, no credit card.
About 30 real searches. Add the MCP to Claude or Cursor in two minutes.