CMS Open Payments Scraper (Physician Payments)
Scrape US CMS Open Payments records of industry payments to physicians and teaching hospitals. Get recipient name, NPI, specialty, paying company, amount, nature of payment, drug or device and program year. Export to JSON, CSV or Excel.
{ "recipientName": "MEI YU LIANG", "recipientNpi": "1043514243", "recipientProfileId": "274727", "recipientType": "Covered Recipient Non-Physician Practitioner", "recipientFirstName": "MEI YU", "recipientLastName": "LIANG", "recipientSpecialty": "Physician Assistants & Advanced Practice Nursi…", "recipientPrimaryType": "Nurse Practitioner", "recipientLicenseState": "NY" }
Every run returns clean, typed records, ready for your CRM, spreadsheet or database.
- One clean record per result, deduped and normalized
- Stable schema in JSON, CSV or Excel, or read it via the Apify API
- Pay per use in the cloud, nothing to install or maintain
A real example record, exactly the shape you receive.
| Recipient Name | Recipient Npi | Recipient Profile Id | Recipient Type |
|---|---|---|---|
| MEI YU LIANG | 1043514243 | 274727 | Covered Recipient Non-Physician P… |
| RACHEL CARNICELLI | 1114600012 | 11511899 | Covered Recipient Non-Physician P… |
| SARAH DONOHUE | 1598274789 | 11306437 | Covered Recipient Non-Physician P… |
{ "recipientName": "MEI YU LIANG", "recipientNpi": "1043514243", "recipientProfileId": "274727", "recipientType": "Covered Recipient Non-Physician Practitioner", "recipientFirstName": "MEI YU", "recipientLastName": "LIANG", "recipientSpecialty": "Physician Assistants & Advanced Practice Nursi…", "recipientPrimaryType": "Nurse Practitioner", "recipientLicenseState": "NY" }
Frequently asked questions
Where does this data come from?
It comes from the US Open Payments program, the national disclosure system that requires drug and device companies to report payments and transfers of value they make to physicians, other covered clinicians and teaching hospitals. The records are public federal disclosures.
Can I search by a specific doctor?
Yes. Enter the physician's 10-digit NPI for an exact match, or use the first and last name filters. Every matching payment for the selected program year is returned.
Can I find every payment a company made?
Yes. Enter the company name in the paying company filter. Partial names work, so Stryker or Novartis will match all of that company's reported entities. Combine it with a state or nature of payment to narrow further.
What is the difference between General, Research and Ownership payments?
General payments are everyday transfers of value such as consulting fees, meals, travel and gifts. Research payments are tied to a research study or protocol. Ownership payments cover physician ownership and investment interests in a company.
Which years are available?
Program years 2019 through 2025 are all supported. Newer years are published each summer.
How many records can I pull?
As many as match your filters. Broad searches can contain hundreds of thousands of records, so use the filters and Max Items to keep result sets manageable.
What formats can I export?
JSON, CSV and Excel, plus direct access to the dataset through the Apify API.
Ready when you are.
Run the scraper live on Apify right now, or have us build one tailored to exactly what you need.