Skip to Content
Getting StartedSandbox vs Production

Sandbox vs Production

Yona uses a single base URL. Your API key prefix determines whether you’re in sandbox or production.

Base URL

https://gateway.useyona.com

How it works

SandboxProduction
Key prefixsk_test_*sk_live_*
Tax submissionsSimulated (mock tax authority)Real (irreversible)
Data isolationSeparate from productionSeparate from sandbox
Plan requiredFree plan worksPaid plan required

Sandbox behavior

In sandbox mode (sk_test_* keys):

  • Invoices are NOT submitted to the real tax authority
  • A mock tax authority service simulates submission responses
  • All operations work identically to production except no real tax submissions
  • Sandbox data is isolated from production data
  • Free plan restricts to sandbox only (liveApiAccess: false)

Switching environments

With the SDK, environment is auto-detected from the key prefix:

Sandbox

const sandbox = new EInvoice({ apiKey: 'sk_test_your_key_here' });

Production

const production = new EInvoice({ apiKey: 'sk_live_your_key_here' });

With raw HTTP, use the same base URL — the key determines environment:

Sandbox request

bash
curl https://gateway.useyona.com/i/v1/invoices \
  -H "Authorization: Bearer sk_test_your_key_here"

Production request

bash
curl https://gateway.useyona.com/i/v1/invoices \
  -H "Authorization: Bearer sk_live_your_key_here"

When to go live

See the Going Live Checklist for a complete pre-launch checklist.

Last updated on