Skip to main content
One request prepares the fax. The person opens the link, checks the preview with the price, and pays. Then you follow the status until the fax is finished. No account and no API key are needed. See payperfax.com/pay-per-fax-api/ for what you can build with it.
1

Prepare the fax

Send the fax number, the person’s email address, and the letter as Markdown:
The response is 201:
Nothing is sent and nothing is charged yet.You can also attach files (PDF, Word, images) and add a cover page. See A complete fax and Add a cover page.
2

Open the link

Give url to the person, or open it yourself. It shows the preview as the receiving machine will get it, with the final price. The draft is kept for 4 hours.You can stop here: a fax that nobody pays for is never sent and never charged.
3

The person pays

The person pays on the preview page, and PayPerFax sends the fax. There is no sandbox: to test a delivery from start to finish, pay for one real fax. A fax that fails is not charged.
4

Follow the status

After payment, read status_url every 15 seconds:
Stop when is_terminal is true. The status is then delivered, failed, or expired. The person also gets the result and the receipt by email.
Do not poll while the stage is awaiting_payment: a person must pay first. Check the status has the polling rules for each stage.

Next

Send a fax

Every field, files, the cover page, the form link, rate limits, and errors

Check the status

Status values, stages, and polling rules