Skip to main content

US TCPA Junk Fax Prevention Act Compliance for Fax

Fax is a fully shipped Orbit channel. You send with POST /api/v1/messages/fax on the unified Messaging API and track delivery under /api/v1/fax (see Fax); inbound faxes arrive on the fax webhook (see Fax receive workflow). Any unsolicited fax advertisement you send to a US recipient also sits inside the Junk Fax Prevention Act of 2005, which amended the Telephone Consumer Protection Act (TCPA), 47 U.S.C. § 227, and the FCC’s implementing rules at 47 C.F.R. § 64.1200. This page maps what those rules require onto the Orbit controls you already own, so a marketing-adjacent fax program is configured deliberately rather than by accident. Like every compliance control on Orbit outside the platform’s sole federal voice dialing-window guard, fax posture is tenant-owned. Orbit ships the send surface and the suppression machinery; it does not write your cover page or choose your consent basis. This page is not legal advice — confirm your fax obligations with counsel.

What the Junk Fax Prevention Act requires

Three obligations drive everything else on this page:
  1. Opt-out notice on the first page. Every unsolicited advertisement sent to a telephone facsimile machine must carry, on its first page, a clear and conspicuous notice that the recipient may opt out of future faxes, together with a cost-free mechanism (a fax number, a telephone number, or both) that works at all times.
  2. The established business relationship (EBR) carve-out. An unsolicited ad fax is permissible only where you have an established business relationship with the recipient and the recipient voluntarily provided the fax number — a prior purchase or a current relationship from a voluntary submission, such as a checkout form that asked for the fax number. The EBR is a carve-out, not a blanket permission: the first-page opt-out notice is still required on every fax you send under it, and any opt-out request ends the relationship for fax purposes.
  3. Do-not-fax list maintenance. A recipient’s opt-out request must be honored within 30 days and indefinitely, and you must keep an internal do-not-fax list so a number that asked out never re-enters a campaign.
Statutory damages are 500perunlawfulfax∗∗,trebledto∗∗500 per unlawful fax**, trebled to **1,500 for willful or knowing violations. A 10,000-recipient fax blast that skipped the suppression list is not a rounding error; it is the entire lawsuit. The statute regulates your content and your lists, not the transport — Orbit’s job is the mechanics: one send surface, a durable suppression ledger, and gates that consult your records before dispatch.

What is tenant-owned on Orbit

Sending flows through one surface only: POST /api/v1/messages/fax. Because every fax crosses the same endpoint, the gates and suppression checks described below see every fax you send, whether it came from a campaign, a flow, or a direct API call.

Configure a TCPA-safe fax posture

Work through these in order before the first campaign fax:
  1. Put the opt-out notice on every cover page. Render a first page that names your organization, states the fax is an advertisement where that is not obvious, and gives the opt-out mechanism with its “operable at all times” number. Keep it in the base template so no campaign ships without it. Orbit does not inject this language for you — the cover page is your content.
  2. Classify campaign faxes as marketing. Tag campaign sends with the marketing class in your campaign configuration so the consent, suppression, and quiet-hours gates evaluate them under your marketing posture rather than a transactional one.
  3. Enable the fax quiet-hours window. Quiet hours are opt-in per channel; turn the fax channel on in your organization’s quiet-hours settings and set the window your reviewers expect (the 8 am to 9 pm recipient-local window is the familiar TCPA default for other channels). Check GET /api/v1/compliance/quiet-hours/preview?channel=fax with a destination number before scheduling a blast.
  4. Alias the STOP-fax keyword. Add STOP-FAX and its spelling variants to the opt-out keyword alias table so a recipient who replies “stop faxing me” lands on the suppression ledger instead of an inbox.
  5. Import your do-not-fax list before any legacy program. If you are migrating an existing fax program, run the suppression CSV import with the fax (or cross-channel) scope before the first send, not after the first complaint. Revoked rows stay exported with status=all, which is also your audit artifact later.

How the send gates evaluate a fax

A fax held before dispatch has usually moved through this chain. The order is the order the gates consult your records:
  1. Consent gate. If your organization’s consent policy requires consent for the send classification, a fax without a consent record on file is rejected with MESSAGING_CONSENT_REQUIRED. The gate reads the consent controller’s records — the EBR you recorded in step 2 of your posture setup is what passes this gate.
  2. DNC / suppression scrub. The destination is checked against your suppression ledger and do-not-fax entries. A matching entry does not dispatch: the send result comes back as a skipped / suppressed outcome, and the drop is visible in your delivery events. This is the gate your CSV import and STOP-fax aliases feed.
  3. Quiet hours. With the fax channel enabled in your quiet-hours settings, a fax outside the configured window is held with QUIET_HOURS_BLOCKED; the preview endpoint above returns allowed_now: false and the next allowed time, so a scheduler can defer instead of fail.
  4. Frequency caps. If your organization’s frequency caps cover the contact, a fax beyond the cap is held like any other channel’s send.
Every gate except the suppression scrub is opt-in per organization and per channel, shipping off by default — the posture is yours to set, and the send gates page carries each gate’s toggle and fail-default. The scrub is the one that exists to make your own list stick: a suppression entry that exists blocks the send, every time.

Canada and the UK apply the same rules to fax

The opt-out discipline does not stop at the US border:
  • Canada. CASL and the CRTC’s Unsolicited Telecommunications Rules reach fax the way they reach voice: internal do-not-contact lists, identification, and an unsubscribe mechanism that is honored promptly. The posture map is CASL — Canada’s Anti-Spam Legislation.
  • United Kingdom. PECR requires prior consent for marketing faxes to individuals and obliges senders to screen against the Fax Preference Service (FPS) and corporate opt-out registers; business-to-business fax carries identification and opt-out obligations. See UK PECR and ePrivacy.
The cross-channel rows in your suppression ledger are the portable part: a contact who opted out in one jurisdiction stays out of the fax queue in every other.

FAQ

Does Orbit add opt-out language to my fax automatically? No. The cover page is your content; Orbit transmits the pages you render without editing them. The statute binds the sender, so the notice, the opt-out number, and your identification belong in your template — kept in the base template, the way CAN-SPAM footers are kept in an email template. How is a replied STOP-fax keyword recorded? An inbound reply matching an alias in the opt-out keyword alias table writes a suppression entry for that sender, scoped so later fax sends to the number are dropped before dispatch, and appends the opt-out to your audit log — the same lifecycle as a STOP on SMS. How do we prove opt-out compliance in an audit? Export the ledger: GET /api/v1/compliance/suppression-list/export with status=all preserves revoked rows, so the file proves when a number was suppressed and that no later fax crossed it; pair it with GET /api/v1/compliance/consent/export for the consent basis you relied on (the EBR record), and the opt-out audit events for the requests themselves. The same exports back the quarterly posture review your counsel asks for.