Getting started
From zero to a reported invoice in four steps.
Every example targets https://api.invonexa.example/v1. Pick your language once per step and copy the snippet.
Sandbox only — demo API
Step 1: Get an API key
Create a sandbox key from your dashboard. Keys starting with sk_sandbox_ never touch a real tax authority. Keep the key in an environment variable, never in source control.
shellexport INVONEXA_KEY="sk_sandbox_..." curl https://api.invonexa.example/v1/ping \ -H "Authorization: Bearer $INVONEXA_KEY"
Step 2: Create a company (entity)
An entity is the legal issuer of invoices. Register its tax ID and country once, and every invoice you send for it is routed through the right rules.
shellcurl https://api.invonexa.example/v1/entities \ -H "Authorization: Bearer $INVONEXA_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Acme S.L.", "tax_id": "ESB12345678", "country": "ES" }'Step 3: Issue your first invoice
Post a document. The sandbox validates it, signs it and reports it in about two seconds. You can run the same call live in the API reference.
shellcurl https://api.invonexa.example/v1/invoices \ -H "Authorization: Bearer $INVONEXA_KEY" \ -H "Content-Type: application/json" \ -d '{ "entity": "ent_8f2k1a", "country": "ES", "customer": "Globex GmbH", "total": 1210.00, "currency": "EUR" }'Step 4: Track status with a webhook
Register an HTTPS endpoint and we call it whenever an invoice changes state. Verify the signature header before trusting the payload.
shellcurl https://api.invonexa.example/v1/webhooks \ -H "Authorization: Bearer $INVONEXA_KEY" \ -H "Content-Type: application/json" \ -d '{ "url": "https://example.com/hooks/invonexa", "events": ["invoice.reported", "invoice.rejected"] }'