Send invoice
- The destination format (Peppol BIS Billing), through the country's invoicing API.
- The A-Cube standard CSV, through SFTP or the file upload API using A-Cube Transfer. Transfer converts your files to Peppol BIS Billing.
- Your own format, the files your ERP already exports, with A-Cube Transfer. A-Cube builds the conversion to Peppol BIS Billing during onboarding.
Ask A-Cube to activate A-Cube Transfer and confirm your format and file upload API access for this destination before the first upload.
The outbound invoicing module allows your system to transmit invoices to the Slovak customers while simultaneously fulfilling state tax reporting requirements. The communication workflow is split into two distinct operational parts: an initial asynchronous submission followed by continuous status monitoring.
For more details on supported formats, see Formats & Transmission Flow.
Submission and Detail Retrieval
To send an invoice, you must forward the structured file content to A-Cube. The platform validates the payload synchronously and responds immediately with a unique identifier (uuid). This ID is a critical piece of data; it must be stored in your database to fetch the current invoice layout, details, and historic processing state.
- Submit an outbound invoice:
POST /invoices - Fetch invoice details:
GET /invoices/{uuid}
Sample Submission Response (202 Accepted)
{
"uuid": "01a03e4a-ee3a-7e1f-b372-c8382bd4ec73",
"invoiceNumber": "Invoice-1",
"invoiceDate": "2017-11-17",
"dueDate": "2017-12-01",
"currency": "EUR",
"totalAmount": "1656.25",
"netAmount": "1325.00",
"direction": "outgoing",
"sender": {
"name": "SupplierOfficialName Ltd",
"address": "0245:5554444445",
"country": "SK"
},
"recipient": {
"name": "ReceiverOfficialName Ltd",
"address": "9922:5555444444",
"country": "SK"
},
"status": "invoice.processing",
"downloaded": false,
"downloadedAt": null,
"createdAt": "2026-08-26T13:38:13+00:00",
"updatedAt": "2026-08-26T13:38:13+00:00"
}
Validation
When you submit an invoice, A-Cube performs synchronous validation against both the XML schema and the Schematron ruleset defined for the Slovakia mandate.
The schema check verifies the structural correctness of the document, while the Schematron rules enforce the business and fiscal constraints required for acceptance.
If either check fails, the POST /invoices response returns the validation errors immediately, allowing you to correct and resubmit the document without waiting for a status update from the tax authority.
Sample Lifecycle Webhook Payload
{
"eventId": "dd3411eb-b492-4b90-9c22-14c3cf4e1d7b",
"event": "invoice.outbound",
"delivery": "webhook",
"target": "https://example.com/webhook?param=xxx",
"authType": "header",
"authKey": "Authorization",
"authToken": "xxxxxxxxxxxxxxxxx",
"createdAt": "2026-06-17T07:40:15+00:00",
"updatedAt": "2026-06-17T07:40:15+00:00"
}
Configure your your webhook handlers to catch these states automatically. This ensures your application's user interface can display when an invoice is accepted by the state, currently in dispute, or successfully settled without requiring manual calls.
Downloading invoices
- Download the original payload:
GET /invoices/{uuid}/source
Listing your invoices
- List invoices:
GET /invoices
Returns the flat list of your invoices (both directions), sorted by the most recent first.