Skip to main content

Sandbox vs Production

Differences between sandbox and production environments, how to switch, and what carries over.

Written by Ryan O
Updated today

Two Environments, One API

Anton Payments provides two completely isolated environments: sandbox and production. They run the same API with the same endpoints, validation, and behavior. The key difference is whether real money moves and real compliance checks execute.

Environment Comparison

Sandbox

Production

Base URL

API key prefix

ak_test_

ak_live_

Compliance screening

Simulated (auto-pass)

Real OFAC, PEP, and sanctions checks

Funds

Pre-loaded test balances

Real money (must fund account)

Payout delivery

Instant simulation

Real rail processing (minutes to days)

Webhooks

Delivered normally

Delivered normally

Rate limits

Relaxed

Enforced per plan

Sandbox

The sandbox is your development and testing environment. It behaves identically to production, so code that works in sandbox will work in production without changes.

What You Can Do in Sandbox

  • Create payees and attach payment instruments

  • Submit payouts and observe the full lifecycle

  • Upload and process batch payouts

  • Register webhook endpoints and receive deliveries

  • Query balances and transaction history

  • Test error handling with invalid inputs

Key Differences from Production

  • Compliance screening is simulated -- All payouts pass screening automatically. No real OFAC, PEP, or sanctions checks run. In production, payouts can be held for manual review or rejected.

  • Payouts settle instantly -- Sandbox payouts move through every lifecycle status (screening, processing, sent, completed), but transitions happen in seconds rather than minutes or days.

  • Balances are pre-funded -- Your sandbox account comes with test balances in supported currencies. These reset periodically. In production, you must fund your account before submitting payouts.

  • No real money moves -- Nothing submitted in sandbox results in a real payment. You cannot accidentally send real funds.

Production

Production processes real payouts through real payment rails. Compliance checks run against live sanctions lists. Funds are delivered to real bank accounts, mobile wallets, and crypto addresses.

Important: Production payouts are irreversible once they reach sent status. Verify payee details and amounts before submitting. Use idempotency keys on every request to prevent duplicates.

Requirements Before Going Live

  1. Approved merchant application -- KYB verification, document review, and compliance approval must be complete.

  2. Certification call -- A technical walkthrough of your integration with the Anton team.

  3. Funded account -- Wire funds to your production account and confirm balances via the API.

  4. Production API keys -- Generate ak_live_ keys from the merchant portal.

How to Switch Environments

Switching between environments requires two changes:

  1. Change the base URL -- Use api.antonpayments.dev for sandbox or api.antonpayments.com for production.

  2. Use the correct API key -- ak_test_ keys only work in sandbox; ak_live_ keys only work in production.

Using a sandbox key against the production URL (or vice versa) will return a 401 Unauthorized error. Keys are scoped to their environment and cannot cross over.

What Does Not Carry Over

Each environment is completely isolated. The following objects created in one environment do not exist in the other:

  • API keys

  • Payees

  • Payouts

  • Balances

  • Webhook subscriptions

  • Payment instruments

You will need to recreate your payees and webhook subscriptions when you move from sandbox to production. Use environment variables to manage your base URL and API keys -- never hardcode either.

Did this answer your question?