Verteco

Integrations / Universal formats / JSON

JSON logo

E-invoices in the JSON format: export and sending

Export + import

JSON in the Verteco portal serves two directions. The JSON export in the Exports section returns the complete data of received and sent documents read from the original XML: both parties with company ID, tax ID and VAT ID, totals, the VAT recap per rate and the individual lines; the Excel export is assembled in the browser from this very file. For sending there is the simple verteco-invoice/1 format on the Send by file tab: the same fields as the form, your script writes them into a file and we build and send the Peppol BIS 3.0 e-invoice.

Vendor documentation ↗

How it works

  1. 1Export: open Exports in the left menu, choose the company, the direction of documents and, if you like, a period From date and To date, then in the Universal formats section click Download on the JSON (.json) card. You get the file peppol-doklady.json.
  2. 2Process it in your own system: the root has the fields company, generatedAt, count and documents. Every document carries direction, status, peppolMessageId, receivedAt, documentTypeCode, invoiceNumber, issueDate, dueDate, deliveryDate, taxPointDate, currency, variableSymbol, iban, buyerReference, note, supplier and customer (name, ico, dic, icDph, address, peppolId), netTotal, taxTotal, grossTotal, payableAmount, the vat array (category, percent, base, amount, exemptionReason) and the lines array (id, name, quantity, unit, unitPrice, netAmount, vatCategory, vatPercent).
  3. 3Automation: the same JSON is returned by the export.json endpoint of the portal API with the parameters direction, from, to or ids (at most 500 documents). You create an API token in the left menu under API tokens, API keys tab, Create token button.
  4. 4Sending: on the Send e-invoice page open the Send by file tab, choose JSON and click Download the sample JSON (pre-filled). The sample has the verteco-invoice/1 format, your company as the supplier, your numbering, due date and IBAN and an explanation of all fields; just replace the sample customer and the lines.
  5. 5Upload the finished file with one invoice or a list of invoices. The portal checks the fields, shows a preview with the amounts and after your confirmation sends the invoices through the Peppol network; you then see the delivery status and the MLS receipt for every invoice.

What the integration solves

  • ✓The JSON export reads the data from the original XML: both parties with company ID, tax ID and VAT ID, totals, the VAT recap per rate and the lines
  • ✓The same data as the Excel export: the workbook is assembled in the browser from this very JSON, so the two never drift apart
  • ✓Sending in the verteco-invoice/1 format: the same fields as the form (customer, lines, dueDate); we compute the amounts and VAT and build the e-invoice
  • ✓A sample file pre-filled with your company (numbering, due date, IBAN and the note from Invoice settings) with an explanation of the fields; the portal refuses the sample customer, so the sample never leaves by mistake
  • ✓Tolerant input: numbers as a number or text (also 1 250,50), dates YYYY-MM-DD or D.M.YYYY; an unknown field is reported, keys starting with _ are ignored
  • ✓The supplier is always the company chosen in the portal; a file naming another company is refused

Frequently asked questions: e-invoices for JSON

Are the JSON export and the verteco-invoice/1 sending format the same thing?
No, they are two structures. The JSON export is the read content of existing documents (parties, totals, VAT recap, lines) meant for reading and integrations. The verteco-invoice/1 format is a record of the form fields from which we build the e-invoice; the root has format, an optional _comment and the invoices array, but we also accept a bare invoice object or a list of invoices.
Which fields are mandatory when sending from JSON?
invoiceNumber, issueDate (YYYY-MM-DD), customer.name together with customer.dic or customer.peppolId, and lines with the fields description, quantity, unitPrice and vatRate (23, 19, 5 or 0). Optional are docType (380 invoice, 381 credit note, 383 debit note, 389 and 261 self-billing), deliveryDate, dueDate, buyerReference, originalInvoiceNumber and originalInvoiceDate for a credit note, iban, paymentRef (variable symbol), note, exemptionReason for the 0 rate, line.detail (line description, BT-154), line.unit, line.discount and line.discountIsPct.
What limits does sending from JSON have?
From a file we send only invoices in EUR; use the form for another currency. VAT rates must be 23, 19, 5 or 0 with an exemption reason, the customer's company ID has 8 digits and the country is a two-letter code. The reachability of the customer in the Peppol network, the due date and the exemption reason are checked by the portal just as for the form and CSV.
Can I download the JSON export automatically?
Yes. The export.json endpoint of the portal API accepts the parameters direction, from and to (YYYY-MM-DD) or a list of ids of specific documents, at most 500 at once. You sign in with an API token from the left menu API tokens (API keys tab, Create token button); the token sees only the companies you created it for.
Is JSON also suitable for my accounting program?
JSON is meant for developers and custom integrations. For accounting programs the Exports section has native formats ready (POHODA, MK-soft, MRP-K/S, Money S3, Money S4, KROS OMEGA, KROS ALFA plus, PROLUC) and ISDOC, which the program loads directly.
How much does it cost?
The connection is free. The service costs from €2/month excl. VAT per company ID (IČO) that sends or has the Data archive switched on; receiving with the archive off is free (up to 1,000 invoices a month). During the voluntary period before the mandate of 1 January 2027 everything is free of charge.

Start today: selecting us on the Financial Administration portal is enough

Receiving is free · no lock-in, no hidden feesMeet your 2027 legal obligation in 2 minutesSlovak Financial AdministrationChoose Verteco on the Financial Administration portal →On the portal, click “Pokračovať” (Continue), sign in (slovensko.sk / eID or your FS portal credentials) and confirm the selection. We handle the rest automaticallyCertified provider of the Financial Administration (EFSK000031) · no commitment · you can change providers at any time
How does the selection work? (3 steps, ~2 minutes)
  1. 1Click the button above. The official Financial Administration page “Certified provider selection” opens with Verteco pre-selected. Click “Pokračovať” (Continue).
  2. 2Sign in to the Financial Administration portal, via slovensko.sk (eID / ID card with a chip) or with your PFS credentials, and confirm the provider selection.
  3. 3Done. A sign-in e-mail arrives. We create your account, company and Peppol network registration automatically. If another provider already holds your receiving record, we do not take it over: you get the migration-code procedure, or you choose in the portal that receiving stays with them and you only send through us.
  4. No eID? You can also sign in to the Financial Administration portal with your PFS identifier and password. Or register here with an e-mail and password, add your company manually and finish the selection later.
  5. Your company is not offered in the “taxpayer selection” step? Only entities you are authorised for on the FS portal appear. Add the authorisation in your Personal Internet Zone (Autorizácie → Pridať autorizovaného používateľa), then finish the selection.
  6. Detailed guide to the FS portal selection (in Slovak) →

Related: Peppol company check · e-invoicing guide 2027 · price list · all integrations