You have built and tested your integration in the sandbox. Before you swap your API key prefix from mfx_test_ to mfx_live_ and start sending real faxes, walk through this checklist. Each item takes a few minutes to verify and prevents the most common production issues.
The checklist
Error handling
Your code should parse the structured error envelope on every non-2xx response. Match on the error field (stable, machine-readable) rather than message (human-readable, may change).
See the error catalog for every code and its recommended action.
Idempotency keys
Every POST /fax request should include an Idempotency-Key header. Without one, a network retry can create a duplicate fax.
See Idempotency for key requirements and retry patterns.
Webhook endpoints
Webhooks are how you find out a fax was delivered, failed, or that your balance is running low.
See Webhooks for event types and Verify webhook signatures for verification code in five languages.
Rate limit handling
mintfax enforces per-environment rate limits. The response headers tell you where you stand.
See Rate limits for header details and limit tiers.
Retry logic
Your client-side retry logic handles failures that happen before mintfax accepts the fax. Once mintfax returns 201, it owns delivery retries to the receiving machine.
See Idempotency - retry contract for which failures are yours and which are ours.
Balance monitoring
Live environments use real prepaid credits. A fax submission is rejected with 402 insufficient_balance if the available balance cannot cover the hold.
See Credits for the balance lifecycle and top-up options.
File validation
Validate files before sending them to avoid unnecessary 422 errors in production.
Credential management
Live API keys grant access to real billing and real fax delivery.
Make the switch
The API base URL is the same for both environments. The key prefix determines routing, so switching to live is a credential change, not a URL change.
- Add a payment method in the dashboard to activate your live environment.
- Purchase credits for the live environment. Each live environment starts with a zero balance.
- Generate a live API key (
mfx_live_) from the dashboard.
- Deploy the new key to your production environment.
- Send a real fax to a known number you control and confirm delivery end to end: submission, webhook events, status polling, and balance deduction.
Sandbox numbers (+1-555-XXX-XXXX) are rejected in the live environment. Make sure your sandbox sends to a real E.164 number.
The first few days
After going live, keep an eye on a few things:
- Delivery rates - real fax machines are slower and less predictable than sandbox simulations. Expect delivery times measured in seconds to minutes, not milliseconds.
- Retry behavior - busy signals and temporary line errors trigger automatic retries (configurable 0-10 per fax). Monitor
fax.failed events to catch permanent failures.
- Balance consumption - credits are captured on delivery. If you send in bursts, watch the held amount via
GET /account/balance to make sure your available balance stays above zero.
- Webhook reliability - confirm your endpoint stays responsive under production load. Slow responses (over 5 seconds) trigger redelivery, which can compound if your endpoint is already backed up.
- Retention settings - your data retention configuration carries over from sandbox. Verify it matches your production compliance requirements, especially if you handle HIPAA-regulated documents.
What to do next
Last modified on May 14, 2026