About this endpoint
What it does
Generates an electronic invoice from the invoice data in the request body and returns the created document metadata, totals, and validation results. The response also includes downloadable document descriptors for the generated invoice files.
Request Body
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
| number | String | Yes | Invoice number. |
| issueDate | String | Yes | Issue date in date format. |
| currency | String | Yes | Invoice currency. |
| buyerReference | String | Yes | Buyer reference. |
| seller | Object | Yes | Seller details. Include name, address, and vatId; see nested fields below. |
| seller.name | String | Yes | Seller name. |
| seller.taxId | String | No | Seller tax ID. |
| seller.vatId | String | Yes | Seller VAT ID. |
| seller.address | Object | Yes | Seller address. Include city, postalCode, and countryCode; see nested fields below. |
| seller.address.city | String | Yes | City. |
| seller.address.street | String | No | Street. |
| seller.address.postalCode | String | Yes | Postal code. |
| seller.address.countryCode | String | Yes | Country code. |
| seller.address.additionalStreet | String | No | Additional street line. |
| seller.address.countrySubdivision | String | No | Country subdivision. |
| seller.contact | Object | No | Seller contact details. |
| seller.contact.name | String | No | Contact name. |
| seller.contact.email | String | No | Contact email. |
| seller.contact.phone | String | No | Contact phone. |
| seller.legalId | Object | No | Seller legal identifier. Include value; see nested fields below. |
| seller.legalId.value | String | Yes | Legal identifier value. |
| seller.legalId.scheme | String | No | Legal identifier scheme. |
| seller.tradingName | String | No | Seller trading name. |
| seller.identifications | Object Array | No | Seller identification entries. Each item includes value and optional scheme. |
| seller.identifications[].value | String | Yes | Identification value. |
| seller.identifications[].scheme | String | No | Identification scheme. |
| seller.electronicAddress | Object | No | Seller electronic address. Include scheme and value; see nested fields below. |
| seller.electronicAddress.value | String | Yes | Electronic address value. |
| seller.electronicAddress.scheme | String | Yes | Electronic address scheme. |
| buyer | Object | Yes | Buyer details. Include name, address, and vatId; see nested fields below. |
| buyer.name | String | Yes | Buyer name. |
| buyer.taxId | String | No | Buyer tax ID. |
| buyer.vatId | String | Yes | Buyer VAT ID. |
| buyer.address | Object | Yes | Buyer address. Include city, postalCode, and countryCode; see nested fields below. |
| buyer.address.city | String | Yes | City. |
| buyer.address.street | String | No | Street. |
| buyer.address.postalCode | String | Yes | Postal code. |
| buyer.address.countryCode | String | Yes | Country code. |
| buyer.address.additionalStreet | String | No | Additional street line. |
| buyer.address.countrySubdivision | String | No | Country subdivision. |
| buyer.contact | Object | No | Buyer contact details. |
| buyer.contact.name | String | No | Contact name. |
| buyer.contact.email | String | No | Contact email. |
| buyer.contact.phone | String | No | Contact phone. |
| buyer.legalId | Object | No | Buyer legal identifier. Include value; see nested fields below. |
| buyer.legalId.value | String | Yes | Legal identifier value. |
| buyer.legalId.scheme | String | No | Legal identifier scheme. |
| buyer.tradingName | String | No | Buyer trading name. |
| buyer.identifications | Object Array | No | Buyer identification entries. Each item includes value and optional scheme. |
| buyer.identifications[].value | String | Yes | Identification value. |
| buyer.identifications[].scheme | String | No | Identification scheme. |
| buyer.electronicAddress | Object | No | Buyer electronic address. Include scheme and value; see nested fields below. |
| buyer.electronicAddress.value | String | Yes | Electronic address value. |
| buyer.electronicAddress.scheme | String | Yes | Electronic address scheme. |
| lines | Object Array | Yes | Invoice line items. At least one item is required. Each item includes name, quantity, unitPrice, and vatRate; see nested fields below. |
| lines[].id | String | No | Line identifier. |
| lines[].name | String | Yes | Line item name. |
| lines[].note | String | No | Line note. |
| lines[].charge | Object | No | Charge details for the line. Include amount, reason, and percent as defined in the schema. |
| lines[].vatRate | Number/String | Yes | VAT rate. |
| lines[].discount | Object | No | Discount details for the line. Include amount, reason, and percent as defined in the schema. |
| lines[].itemCode | Object | No | Item code. Include value; see nested fields below. |
| lines[].itemCode.value | String | Yes | Item code value. |
| lines[].itemCode.scheme | String | No | Item code scheme. |
| lines[].quantity | Number/String | Yes | Quantity. |
| lines[].unitCode | String | No | Unit code. Default: C62. |
| lines[].unitPrice | Number/String | Yes | Unit price. |
| lines[].description | String | No | Line description. |
| lines[].vatCategory | ENUM | No | VAT category. Allowed values: S, Z, E, AE, K, G, O, L, M. |
| lines[].exemptionReason | String | No | VAT exemption reason. |
| lines[].exemptionReasonCode | String | No | VAT exemption reason code. |
| note | String | No | Invoice note. |
| dueDate | String | No | Due date in date format. |
| payment | Object | No | Payment details. |
| payment.bic | String | No | BIC. |
| payment.iban | String | No | IBAN. |
| payment.meansCode | String | No | Payment means code. Default: 30. |
| payment.reference | String | No | Payment reference. |
| payment.accountName | String | No | Account name. |
| profile | ENUM | No | Invoice profile. Allowed values: basic, en16931, extended. |
| delivery | Object | No | Delivery details. |
| delivery.date | String | No | Delivery date in date format. |
| delivery.address | Object | No | Delivery address. Include city, postalCode, and countryCode; see nested fields below. |
| delivery.address.city | String | No | City. |
| delivery.address.street | String | No | Street. |
| delivery.address.postalCode | String | No | Postal code. |
| delivery.address.countryCode | String | No | Country code. |
| delivery.address.additionalStreet | String | No | Additional street line. |
| delivery.address.countrySubdivision | String | No | Country subdivision. |
| delivery.partyName | String | No | Delivery party name. |
| documentType | ENUM | No | Document type. Allowed values: invoice, credit_note. |
| paymentTerms | String | No | Payment terms. |
| orderReference | String | No | Order reference. |
| projectReference | String | No | Project reference. |
| contractReference | String | No | Contract reference. |
Response
Returns a JSON object with createdAt, currency, documentType, documents, dueDate, id, issueDate, number, profile, status, totals, and validation fields. The status field is generated on success, and documents, totals, and validation contain the generated document metadata, invoice totals, and validation outcome.
Success status code: 200
| Attribute | Type | Mandatory | Description |
|---|---|---|---|
| createdAt | String | No | Creation timestamp in date-time format. |
| currency | String | No | Invoice currency. |
| documentType | ENUM | No | Document type. Allowed values: invoice, credit_note. |
| documents | Object Array | No | Generated document descriptors. Each item may include url, kind, bytes, sha256, filename, and mediaType. |
| documents[].url | String | No | Document URL. |
| documents[].kind | ENUM | No | Document kind. Allowed values: ubl, cii. |
| documents[].bytes | Integer | No | Document size in bytes. |
| documents[].sha256 | String | No | SHA-256 hash. |
| documents[].filename | String | No | Document filename. |
| documents[].mediaType | String | No | Media type. |
| dueDate | String | No | Due date in date format. |
| id | String | No | Generated invoice identifier. |
| issueDate | String | No | Issue date in date format. |
| number | String | No | Invoice number. |
| profile | ENUM | No | Invoice profile. Allowed values: basic, en16931, extended. |
| status | ENUM | No | Generation status. Allowed values: generated. |
| totals | Object | No | Totals summary. Includes vatBreakdown and amount fields. |
| totals.vatBreakdown | Object Array | No | VAT breakdown entries. Each item may include tax, rate, taxable amount, category, and exemption details. |
| totals.vatBreakdown[].tax | String | No | VAT tax amount. |
| totals.vatBreakdown[].rate | String | No | VAT rate. |
| totals.vatBreakdown[].taxable | String | No | Taxable amount. |
| totals.vatBreakdown[].category | ENUM | No | VAT category. Allowed values: S, Z, E, AE, K, G, O, L, M. |
| totals.vatBreakdown[].exemptionReason | String | No | VAT exemption reason. |
| totals.vatBreakdown[].exemptionReasonCode | String | No | VAT exemption reason code. |
| totals.lineNetAmount | String | No | Line net amount. |
| totals.payableAmount | String | No | Payable amount. |
| totals.prepaidAmount | String | No | Prepaid amount. |
| totals.taxTotalAmount | String | No | Tax total amount. |
| totals.chargeTotalAmount | String | No | Charge total amount. |
| totals.taxExclusiveAmount | String | No | Tax exclusive amount. |
| totals.taxInclusiveAmount | String | No | Tax inclusive amount. |
| totals.allowanceTotalAmount | String | No | Allowance total amount. |
| validation | Object | No | Validation result summary. |
| validation.valid | Boolean | No | Indicates whether validation passed. |
| validation.ruleset | String | No | Validation ruleset used. |
| validation.errorCount | Integer | No | Number of validation errors. |
| validation.violations | Object Array | No | Validation violations. Each item may include path, rule, message, and severity. |
| validation.violations[].path | String | No | Violation path. |
| validation.violations[].rule | String | No | Violated rule. |
| validation.violations[].message | String | No | Violation message. |
| validation.violations[].severity | ENUM | No | Violation severity. Allowed values: error, warning. |
| validation.warningCount | Integer | No | Number of validation warnings. |



