Skip to main content

Environments

Invostaq has two environments — sandbox and production. Both use the same API base URL. The environment is determined by your API key prefix.


Sandbox

  • API key prefix: sk_test_
  • Peppol network: TEST
  • Invoices: Validated and submitted to the test network. Never reach real recipients.
  • Webhooks: Status callbacks (Delivered / Failed) arrive with real timing from the test network.
  • Lookup: Returns test-network registrations only.

Use sandbox for development, integration testing, and CI pipelines.


Production

  • API key prefix: sk_live_
  • Peppol network: PROD
  • Invoices: Legally binding. Delivered to real recipients via the Peppol network.
  • Webhooks: Status callbacks reflect real delivery outcomes.
  • Lookup: Returns production-network registrations only.

Switching environments

The API base URL and request format are identical. The only difference is the key:

# Sandbox — invoices go to Peppol TEST
curl -H "x-api-key: sk_test_..." \
https://api.invostaq.com/api/v2/lookup?participantId=0196:971501234567

# Production — invoices go to Peppol PROD
curl -H "x-api-key: sk_live_..." \
https://api.invostaq.com/api/v2/lookup?participantId=0196:971501234567

There is no separate sandbox URL. Environment routing is determined entirely by the key prefix.


Best practices

  • Use sk_test_ keys in development, staging, and CI environments
  • Use sk_live_ keys only in production
  • Each environment should have its own API key — don't share keys across environments
  • Test your full integration flow (send, receive webhook, handle errors) in sandbox before going live