Integration API: send your program's sales to TicketBAI and to Vectura
Your software —another brand's POS, a kiosk, an online shop, an ERP or a hotel system— sends each sale to Vectura with a JSON call. Vectura issues the ticket or invoice, signs it with TicketBAI or Veri*Factu, submits it to the tax authority and returns the QR for you to print. No libraries, nothing to install and one key per program.
Demo account
Fictitious data, nothing sent to the tax authority or by email. Reset every night.
{
"seriefactura": "KIOSKO1",
"numfactura": "105",
"fechaexpedicionfactura": "2026-11-06",
"importetotalfactura": "3,50",
"baseimponible": "2,89",
"tipoimpositivo": "21",
"cuotaimpuesto": "0,61"
}
{
"error": "0",
"leyenda": "TicketBAI",
"fiscal_estado": "aceptado",
"qr_url": "https://batuz.eus/QRTBAI/?id=…"
}
Integrating is this simple
Create a key
In your user area, under Settings → API and integrations, you create a key for each program. It can be deleted at any time.
Send the sale
Your program makes a POST with the sale's JSON. Without a tax ID you get a simplified ticket; with one, a full invoice.
Print the QR
Vectura signs and submits to the tax authority, and replies with the QR and the legend to print on the ticket.
What's included
One call per sale
Your program sends a JSON with the tax ID (optional), the amount and the VAT. Without a tax ID a simplified ticket is issued; with one, a full invoice to that customer.
Signing and submission to the tax authority
Vectura signs with your certificate and submits to the provincial tax authority (TicketBAI in Bizkaia, Gipuzkoa and Álava) or to the Spanish Tax Agency (Veri*Factu in the rest of Spain).
The QR, ready to print
The response includes the QR address and its legend (TicketBAI or VERI*FACTU), and you can ask Vectura for the QR image.
Safe retries and your numbering
We respect your program's series and number. If you repeat a sale with the same series and number, Vectura returns the original without creating another: a network drop never duplicates an invoice.
Cancel, query and correct
Cancel a ticket, check the tax status of a sale or correct an invoice with a corrective invoice, all through the same API.
Full invoices, payments and quotes
With lines, several VAT rates, customer, payment and the PDF sent by email; invoices pending payment, quotes and document lookup.
For programs that only leave files
If your software cannot make web calls, a PowerShell script uploads the JSON files from a folder by itself and writes the response with the QR. No programming.
Manual and keys in your user area
Create one key per program and read the API manual, with examples in curl, PHP, C#, JavaScript and Python and the list of errors.
Frequently asked questions
What do I need to get started?
A Vectura Suite account and your company's tax details. To sign for real you need your electronic certificate (and, with TicketBAI, the software licence, which our support team configures). While you test, the company is in test mode.
Does it work with TicketBAI and Veri*Factu?
Yes. Depending on your company's regime, Vectura signs with TicketBAI (Bizkaia, Gipuzkoa and Álava) or generates the Veri*Factu record; the calling program does not need to tell them apart.
Can I test without sending anything to the tax authority?
Yes. While the company is in test mode, everything is signed and sent to the tax authority's test environment and the QR codes have no legal validity. When everything works, you switch to live.
What happens if the connection drops in the middle of a sale?
You retry with the same series and number (or the same reference): Vectura returns the original sale without duplicating it.
Is there a limit on calls?
Yes: 120 requests per minute, plenty for a shop. If you exceed it, the API replies 429 and you retry after a moment.
Where is the documentation?
Inside Vectura Suite, in your user area: Help → API manual. It includes a getting started guide, every API endpoint with examples in curl, PHP, C#, JavaScript and Python, and the list of errors. You can read it with the free trial.
Who can see my key?
Nobody: it is shown only once when you create it and Vectura only stores a fingerprint. If you lose it, delete it and create another; deleting a key does not affect the others.
Can I connect a hotel system?
Yes: besides sales, there are API endpoints for occupied rooms and room charges, which the hotel system queries and settles.
Shall we try it with your business?
Create your account and try it with your own data, no card and no commitment.