The sandbox
Try everything with a test key (fkn_test_…, created in the portal under API keys → Test). It uses the same
endpoints and the same validation as live keys, but it only ever reaches the sandbox.
- Separate data. Test invoices, documents, deliveries and idempotency keys are stored apart from live data. A test
key never sees live invoices and a live key never sees test invoices (
404). Sellers are shared and readable. - Marked as test. Every test invoice carries the note "TESTRECHNUNG – keine gültige Rechnung / TEST INVOICE – not a valid invoice" and is otherwise schema-valid XRechnung, ZUGFeRD or RO e-Factura.
- Free. Nothing is billed or counted; no plan limits, no seller verification.
- Deleted after 30 days. Test data is never archived.
- Safe deliveries. Peppol is always simulated (
"simulated": true): receivers containingrejectare rejected,offlinestay pending,unknownare not found, everything else is delivered. E-mail goes only to the verified addresses of your own portal users, with[TEST]in the subject. ANAF is never contacted (403 sandbox.anaf-unavailable). - Webhooks of sandbox events carry
"livemode": "false".
Limits
60 requests per minute and 2 at a time (separate from your live limits), at most 500 stored test invoices or 100 MB,
200 test invoices and 200 deliveries per 24 hours, 20 e-mails per 24 hours (409 sandbox.limit, 503 sandbox.busy).
What a test key cannot do
API keys, webhooks, seller changes and usage need a live key or the portal: a test key gets
403 sandbox.live-only. Test keys have scope invoices only.
A note added to every test invoice counts towards national note limits (CIUS-RO); a draft already at the limit is refused only in the sandbox.