Skip to main content
If your integration works in sandbox, it works in production. Going live is four steps, not a migration.

The checklist

  1. Subscribe. In the dashboard or with agent-cards companies subscribe. The subscription is what unlocks production.
  2. Create production credentials. A production client_id and client_secret from Settings → Developers → Credentials. Nothing else in your code changes; the base URL stays api.agentcard.sh.
  3. Point webhooks at production. Create a production webhook endpoint and verify signatures against its own secret. Sandbox and production endpoints are separate.
  4. Run the loop once with real money. Connect a real user, add a real card, make a small real purchase. Watch the same webhooks you saw in sandbox arrive with livemode: true.

The gate fires at use time

You can create production credentials before subscribing, and they will authenticate. What they can’t do is act: calls that create wallet links, add cards, or issue cards fail with subscription_required (HTTP 402) until the subscription is active. If production suddenly returns 402 where sandbox worked, this is why.

Rules for your agent

Rules for your agent

What changes with real money

  • Identity verification is real: documents and a face check, no simulate endpoint.
  • Card eligibility is enforced for real. Almost any credit or debit card works; the known exception today is Chase.
  • Balance funding uses real payment providers, including ones sandbox can’t simulate.
  • The one-time code is never 111111 again.
Next: Errors and troubleshooting