Sell staff medical certificates from inside your product
Your customers order food handler, driver Form 1A or employee fitness certificates for their staff. Each person gets their own link and sees a PingMeDoc™ doctor online. You get each person's status, signed callbacks and a share of every paid order. No health data reaches your systems.
Tell us what you run. Someone from our team replies to set up a call. Terms are agreed in writing with each partner, so nothing is switched on until you sign.
Two ways to sell
Start with the link. Move to the API when you want orders and statuses inside your own screens.
A link in your product
You place a link with your partner code where your customers will see it. The business opens our page, chooses the certificate, adds its staff by typing, pasting from a sheet or uploading a CSV, and pays. Orders through your link count towards your share.
order counts and statuses. The names and numbers the business typed on our page stay with us.
The API
Your product sends us the order: the business and its people. We return a pay link you show the business. You then read each person's status against your own reference, and we call your server when something changes.
Build work:
four calls and one https address for callbacks.
What you see:
each person's name, your reference, status and renewal date.
Our order page opens in a new tab or as a full page, never inside a frame. Card and UPI apps often fail inside frames, our site refuses to be framed, and phone numbers are safer typed on our page.
How it works
What the business does, and what each of its people does. You do not have to run either.
For the business (your customer)
Step 1
Adds its people
A name and mobile number for each person, email optional. 1 to 500 people in one order, no number twice.
Step 2
Pays once
One pay link for the whole order, and a GST invoice.
Step 3
Watches progress
The order page lists each person by name and where they are, from waiting to issued. It never shows their code or link.
Step 4
Renews in one step
30 and 7 days before the renewal date we send an email and WhatsApp notice with a signed link. One click reorders for the same people; anyone who has left can be unticked.
For each person
Step 1
Gets their own link
By WhatsApp once the order is paid, or by email if WhatsApp does not reach them. They are never asked to pay.
Step 2
Applies from their phone
The link works only for the mobile number the business gave. A one-time SMS code goes to that number, and the name must match.
Step 3
Sees a doctor online
A registered medical practitioner reviews the case. Food handlers are examined on a video call they must join; the doctor orders tests only if the exam suggests an infection.
Hi Karthik, Sample Kitchen has paid for your medical fitness certificate. Apply from your phone here, you will not be asked to pay: pingmedoc.com/...
What you see, and what you never see
The short answer to the health-data question: your systems see progress, never health information.
You send us
The business: name, city, GSTIN if it has one, and a contact's name, mobile and email
For each person: name, mobile number, email if any, and your own reference
You get back
Order number, payment status, and the pay link while it is unpaid
For each person: a status (awaiting_payment, code_unused, applied, issued) and a link status
The renewal date once the certificate is issued
Names and your references, only on orders your API placed
You never get
The person's code or link
Their mobile number, played back
Their answers, the doctor's findings, test reports or the certificate file
Why a case did not end in a certificate
Consent
Each person applies on our site themselves and agrees there to the doctor's examination. The business and you see a status, not what was asked or found.
Identity
A link only works for the mobile number the business gave, with a matching name and a one-time SMS code. If a certificate is issued to a different name or number, we flag it and do not report it to you as issued.
Orders typed on our page
When the business adds its staff on our page through your link, you see counts and statuses only: no names, numbers or references.
Your agreement
The written agreement with each partner sets what each side may do with the data. API keys are stored hashed and shown to you once.
Price per person
The business pays our published price for its head count. You do not set the price or collect the payment.
Price per person by order size
Certificate
1+ people
5+ people
25+ people
100+ people
Food handler certificate (FSSAI)
₹699
₹599
₹549
₹499
Driver medical certificate (Form 1A)
₹999
₹849
₹799
₹749
Employee fitness certificate
₹699
₹599
₹549
₹499
1 to 4 people pay the single-certificate price; the steps start at 5. Up to 500 people in one order.
Work out an order
₹7,188 for 12 people, at ₹599 each.
From 25 people the price drops to ₹549 each.
Your share
You earn a percentage of each paid order, on the amount before tax. The percentage is agreed with each partner in writing; we do not publish one rate. A refunded order reverses its share. Each month the statement shows your orders, the paid value, the share owed and the share paid out, and every payout carries its bank reference.
The API
For the engineer who will build it. Keys are issued when you sign. Base address: https://www.pingmedoc.com/api/partner/v1
Authentication
Authorization: Bearer pmdch_live_.... The key is shown once and stored hashed. A wrong, revoked or paused key always gets the same 401.
Limits
60 requests a minute and 30 new orders an hour for each key. Past that you get a 429 with a Retry-After header.
Idempotency
Creating an order needs an Idempotency-Key header, 8 to 120 characters. The same key with the same body returns the first order (200, replayed: true). The same key with a different body is a 422.
People
1 to 500 per order, Indian mobile numbers, no number twice. certificate_type is food_handler, driver_form1a or employee_fitness.
Partner API calls
Call
What it does
POST /bulk/orders
Creates an order for the business and its people. Returns the pay link to show the business.
GET /bulk/orders
Your orders, newest first. Takes limit (up to 100) and before (a date) to page back.
GET /bulk/orders/{order_id}
Payment status and each person's status, link status and renewal date. Another partner's order answers 404.
GET /bulk/statement
Your share rate and, month by month: orders, paid orders, paid value, share owed and share paid out.
The answer never includes a link to our order page or any person's code. The values shown are samples.
Signed callbacks
Give us one https address. We send a POST when an order is paid, cancelled or refunded, and when a person's certificate is issued or revoked. Reply with any 2xx.
import {
createHmac,
timingSafeEqual,
} from "node:crypto";
// header: the X-PMD-Signature value
// rawBody: the request body exactly as received
export function verified(secret, header, rawBody) {
const [t, v1] = header
.split(",")
.map((p) => p.split("=")[1]);
const expected = createHmac("sha256", secret)
.update(`${t}.${rawBody}`)
.digest("hex");
const age = Date.now() / 1000 - Number(t);
if (Math.abs(age) >= 300) return false;
return (
expected.length === v1.length &&
timingSafeEqual(
Buffer.from(expected),
Buffer.from(v1),
)
);
}
Signature
X-PMD-Signature: t=<unix time>,v1=<hex>, where v1 is the HMAC-SHA256 of t.rawBody with your signing secret. Reject anything more than 5 minutes old.
Retries
If you do not answer 2xx we try again up to 7 more times, waiting 1 minute, 5 minutes, 30 minutes, 2 hours, 6 hours, 24 hours, 24 hours. Then we stop.
Your address
https on port 443 with a public host name. We look the name up ourselves and connect only to a public address, so private and internal networks are refused.
Delivery
Redirects are not followed, and each attempt stops after 8 seconds.
Who does what
You keep the customer. We run the medical and the money.
Who does what
Task
Who
Your customer relationship and your product screens
You
Showing the link, or the pay link from the API
You
Taking the payment and issuing the GST invoice
PingMeDoc
Sending each person their own link
PingMeDoc
Checking that the right person applies
PingMeDoc
The doctor's review and the certificate
PingMeDoc
QR verification for anyone who asks
PingMeDoc
Renewal notices to the business
PingMeDoc
Monthly statement and your payout
PingMeDoc
Launch steps
We are opening the partner channel one partner at a time.
Step 1
Tell us about your product
Send the form above. We set up a call to understand your customers and which certificates they ask for.
Step 2
Agree terms in writing
Your share, when it is paid, GST on the share, and what each side may do with the data.
Step 3
Get your partner account
A partner code for your link. For the API, a key and a callback signing secret, each shown once.
Step 4
Build and try it
Add the link, or make the calls and check a signed callback. A first order for one person shows every step.
Step 5
Go live, get paid monthly
Your customers order. Each month you get the statement and the payout.
Questions partners ask
How is this different from the PingMeDoc partner program for recruiters?
The partner program at /partner-program is for nursing recruiters sending candidates to Germany, and /partners/recruitment-agencies gives overseas recruiters and study-abroad consultancies a referral code. This page is for companies whose customers need medical certificates for staff working in India: food handlers, drivers and employees. Your customers place orders, we take the payment, and you earn a share of each paid order.
Does our platform ever hold certificate codes?
No. Each person's link goes from us straight to that person by WhatsApp, or by email when WhatsApp does not reach them. It works only for the mobile number the business gave for that person. Your API calls and your customer's order page show a status for each person, never the code or the link.
Does our platform touch health data?
No. You send us names and mobile numbers. We send back statuses and a renewal date. The person's answers, the doctor's findings, any test reports and the certificate itself stay between the person, the doctor and PingMeDoc. We also never tell you why a case did not end in a certificate.
How does the revenue share work?
You earn a percentage of each paid order, worked out on the amount before tax. The percentage is agreed in writing with each partner; we do not publish one rate. If an order is refunded, its share is reversed. Each month you get a statement of orders, paid value, the share owed and the share paid out, and each payout is recorded with its bank reference.
What do the businesses pay?
Our published price for the number of people in the order. One to four people pay the single-certificate price, and the price per person drops at 5, 25 and 100 people. The business gets one pay link for the whole order and a GST invoice.
Can we set our own price or add a margin?
Not today. The pay link always shows our published price, and we collect the payment. What you earn comes from the revenue share.
Can we put your order page inside our app in an iframe?
No. Card and UPI apps often fail inside a frame, our site refuses to be framed for security, and staff phone numbers should be typed on our page. Open the link in a new tab, or call the API and show the pay link on your own screen.
Which certificates can our customers order?
Three: the food handler medical fitness certificate that FSSAI asks for, the driver medical certificate (Form 1A) for a licence or renewal, and an employee medical fitness certificate. Each person sees a registered medical practitioner online. Food handlers are examined on a video call they must join.
Will every food safety officer accept the food handler certificate?
We cannot promise that. The certificate follows the format in the FSS (Licensing and Registration of Food Businesses) Regulations, 2011, Schedule 4, Part II, para 10.1.2, and says the examination was a video consultation. No lab tests are included unless the doctor finds signs of an infection, and no vaccinations are given. Some officers and employers ask for an in-person exam or specific tests, so businesses should check with theirs.
How long does a certificate last?
The food handler certificate is valid for one year. Form 1A shows the date it was issued; the transport office decides how long it counts. For an employee fitness certificate the doctor decides. Through the partner channel each person gets a renewal date one year after issue, and the business gets a notice 30 and 7 days before it.
What happens when a person's link does not reach them?
Their link status shows as undeliverable. Usually the number is wrong or not on WhatsApp and no email was given. The business can check the number with the person and contact us to fix it.
Is there a test environment?
Not a separate one. Keys are issued when you sign, and the simplest test is a first order for one person, such as yourself, which shows every step from the pay link to the certificate.
How much do we have to build?
For the link: one link in your product with your partner code. For the API: four calls and one https address that receives signed callbacks. Placing orders, collecting payment, sending each person their link, the doctor's review and renewal notices all run on our side.
Can anyone check that a certificate is real?
Yes. Every certificate carries a QR code. Anyone can scan it, or check it at pingmedoc.com/medical-certificates/verify, without logging in.