Pay Per Fax API

Your app prepares the fax. Your user reviews and pays.

Send a document or Markdown to the PayPerFax API and get a link to the fax preview and checkout. Your user checks the fax and pays, and PayPerFax handles delivery. No account, API key, prepaid balance or subscription. Your user pays only if the fax is delivered.

Not a developer? See can ChatGPT or Claude send a fax for me?

The request

curl https://fax.payperfax.com/api/fax \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+14155550101",
    "email": "[email protected]",
    "markdown": "Please send me my records."
  }'

The response

{
  "id": "<id>",
  "url": "https://fax.payperfax.com/fax/<id>/continue",
  "status_url":
    "https://fax.payperfax.com/api/fax/<id>/status"
}

Give url to your user. It opens the preview with the final price, and your user pays there. status_url tells you when the fax is delivered.

What you do not build

Add faxing with one call

PayPerFax does the document conversion, the preview, the checkout, the billing and the delivery. Your part is the call and the link.

No document conversion

Send a file (PDF, DOC, DOCX, JPG, PNG or TIFF), or write the letter as Markdown. PayPerFax turns it into fax pages and a preview.

No checkout or billing

Your user pays by card or PayPal in the browser, after they see the preview. Your code never handles a payment or a card number.

No API credentials to manage

No key, no account and no prepaid balance. Nothing to sign up for before the first call.

No fax line to run

No fax machine, phone line or fax provider. PayPerFax sends the fax and reports whether it was delivered.

How it works

1

Your app sends one call

The fax number and a document: one or more files, or a letter as Markdown, with an optional cover page. Or only the number, when your user will add the file.

2

Show it on screen, or send it in an email or a chat.

3

Your user reviews and pays

The preview shows the fax as the receiving machine will get it, with the final price.

4

PayPerFax delivers

Your app can ask for the status. Your user gets the confirmation and the receipt by email.

Ideas

What you can build

The API gets one fax from one person to one fax machine. What you build around it is up to you.

A “Fax it” button on a letter generator

Lease terminations, records requests, debt validation letters. Build the letter from your form fields, send it as Markdown, and send your visitor to the link. You never make a PDF or take a payment.

“Fax this number” on a directory

A site that lists the fax numbers of tax offices, motor vehicle departments or courts. Send only the number. Your visitor gets the fax form with the number filled in and adds the file there. No file handling on your side.

“Fax your representative” for a campaign

The organizer writes the letter and picks the number. Each supporter checks their own fax, pays for it and gets their own receipt. The organizer holds no account and no balance.

The professional prepares, the client pays

An accountant, an immigration consultant or a patient advocate prepares the fax from the case file. The client gets the link, checks the fax and pays with their own card. The confirmation and the receipt go to the client.

Also: a command-line tool or a printer driver that faxes any document, with no sign-up step. Or an AI assistant that runs commands, such as Claude Code, Codex or Cursor, that prepares a fax from a file on the person’s computer and gives them the link. For AI apps that add a connector, see the fax MCP server.

Pricing

The same price as the website. There is no API tier.

$2

for the first three pages

✓

The optional cover page counts as one of the three


✓

$0.75 for each additional page


✓

No charge for a failed fax: the payment is charged only if the fax is delivered


✓

Billing in USD, EUR, GBP, JPY or KRW

Before you build

What this is not

The PayPerFax API is not for automated or high-volume faxing. Every fax needs a person who checks it and pays. There are no webhooks, and the service sends faxes only. It does not receive them.

For a healthcare platform that sends many referral faxes a day, choose a service built for that use.

The details

Documentation

The documentation is in English.

Questions from developers

Does my user leave my app?

Yes. The link opens PayPerFax pages: the fax form, the preview, the checkout and the tracking page. They show the PayPerFax name, and there is no white-label option. The pages are in seven languages: English, Spanish, German, French, Italian, Japanese and Korean. Your app can set the language in the call.

Can I try it without paying?

Yes. A call prepares the fax, and nothing is sent or charged until someone opens the link and pays. Open the link to see the preview and the price. There is no sandbox: to see a delivery from start to end, pay for one real fax.

Does my user need an account?

No. Your user needs only an email address, for the confirmation and the receipt. Your app sends it in the call.

Which files can I send?

PDF, DOC, DOCX, JPG, PNG, TIFF and Markdown, up to 10 MB in total for one fax. Send each file as documents[] in a multipart call. You can send more than one file, and PayPerFax faxes them in the order you send them. You can also send the letter as Markdown text in the call.

Can the API add a cover page?

Yes. Set cover_page to true. The cover page shows the date, the fax number, the names you send (sender_name, recipient_name) and your cover_message. It comes before the letter and the files. A cover page with a message can also be the whole fax. See Add a cover page in the documentation.

Which countries can I fax?

The same destinations as the website. The pricing page lists them, with the rate for each country.

How are the documents protected?

Uploads use an encrypted connection (TLS), and documents are deleted after 30 days. The full policy is on the security page.