Before you start
1
Get the fax number from irs.gov
IRS fax numbers depend on the form and the person’s state. Look up the
number for the form on irs.gov, on the form’s
own instructions page. Show the source to the person before you send.Do not guess the number and do not use one from a third-party directory.
The person’s own IRS notice is also a valid source.
2
Ask for the person's email
The confirmation and the receipt go there. Ask the person for the
address. Do not guess it.
3
Do not retype the signed form
The signed form is a file. Do not retype it as text. A typed copy of a
signed form is not the form.
Prepare the fax
The person has the signed form on their own device. You do not have the file. So you call the create endpoint withfile_expected=true: the answer
is a link to the web form, with the fax number already filled in. The person
adds the file there.
The number above is an example. Use the number from
irs.gov for the form the person is sending.
200 with only url:
url to the person. The link opens the web form with the IRS fax
number already filled in and a notice that the AI assistant prepared the
fax. The person uploads the signed form, sees the preview with the price,
and pays. The link is good for 24 hours.
If you also wrote a cover letter
If the person needs a short cover letter (for example “Attached: Form 2848 for tax year 2025, signed 2026-04-15, from Jane Doe, SSN XXX-XX-1234”), write it as Markdown and send it in the same call. The letter becomesletter.md, the first document of the fax; the signed form is added by the
person on the web form and goes after it.
The same call over MCP
If the AI app has the PayPerFax MCP server connected, the same call is the toolcreate_fax, with the same fields. Set to to the IRS fax
number for the form, email to the person’s address, file_expected to
true for a signed form, and markdown for the cover letter. The answer is
the same url. MCP has no file transfer, so a signed form is always added by
the person on the web form.
country on the MCP call for the currency of the price shown on the
preview. The HTTP call picks the currency from the caller’s IP by default;
the MCP call reaches us from the AI app’s server, so without country it
defaults to USD.
After the person pays
Once the person pays, the fax enterssending. Poll the status endpoint
every 15 seconds and stop when is_terminal is true. The person is not
charged if the fax fails to deliver.
See Check the status for the full list of fields and
the polling rules.
What to tell the person
- The link opens the web form. You add the signed form there.
- Nothing is sent and nothing is charged before you pay.
- A failed fax is not charged. If the IRS line is busy, you can try again.
- The link is good for 24 hours.
Related
Send a fax
Create call reference
Check the status
Status values and polling
Page for AI assistants
The rules in plain language
Fax the IRS
Main-site page for faxing the IRS
