How is document uniqueness being verified
Document uniqueness is being verified by the field internalDocumentId, which is a unique number in your system for each document that you issue. The field InternalDocumentId is being to produced in the early issue of the document and must stay the same for the specific invoice.
What should I do when I have network issues
In case of network errors the invoice must be kept in the ERP and transmit again when the problem resolved. In that case, the field IsDelayedCode in json file must be setted to value 1. If a hardcopy is issued for the customer the following error messages should being added:
- Entity unable to communicate with the provider (error 1)
What options do I have when IAPR is down
When IAPR is down, the document must been issued to the counterparty, being kept on the ERP and being sent again when IAPR is available with the field IsDelayedCode has been setted to value 2. If a hardcopy is issued for the customer the following error messages should being added:
- Inability of provider to communicate with myDATA (error 2)
How can I perform a delayed transmission of an e-invoice
Delayed transmissions are performed by settling the IsDelayedCode field in json file as following:
- LIVE (0): Online Transaction,
- CLIENT (1): Client Side Network Issues,
- IAPR (2): IAPR service down
- NOINT (3): No internet connection - ERP MODE only
- FORCED (4): Unexpected reason - ERP MODE only
How can I setup my IAPR credentials to use ERP-mode
In order to transmit any document with the ERP-mode procedure, the client must provide us with the Credentials used for the interconnection with the AADE. The provider in turn synchronizes its Portal and depending on the type of document transmitted it will show that the transmission was done either by the provider or by the client with ERP-mode.
How can I see invalid invoices on the portal
The invalid invoices can be found on the portal. There is an indication in every invoice so that to know if it is valid or invalid.
What data from the response should i display on the template of the invoice
On the template must been displayed the MARK, UID, authentication code, the provider’s name and the QR of the invoice.
How can I generate a QR code to print when no internet access is available?
The QR is generated by an algorithm which is given to the client and generates the format locally. This way the document can be issued with its unique QR and given to the customer. Heterochronously, when the connection is restored, when the document is sent again to AADE, the client using again the same original QRCode that was created will be automatically transferred to the issued document to view or print it, provided that the issuer VAT, customer VAT, customer name, invoice type, internal Id, the series, the number, the total amount, the total net amount, the total vat amount and the issued date and time are the same with the values of the QR string following.
The QR code is generated from the following string:
{domain}/TransmissionFailure?issuerTin={issuerTin}&customerTin={customerTin}&customerName={customerName}&invoiceType={invoiceType}&series={documentSeries}&number={documentNumber}&dateIssued={dateIssued}&totalAmount={totalAmount}&totalNetAmount={totalNetAmount}&totalVatAmount={totalVatAmount}&internalId={internalId}&signature={validationSignature}
- Domain is the UAT / Production domain
- IssuerTin is the VAT number of the issuer, including the country code prefix, ie EL111222333
- CustomerTin is the VAT number of the counterparty, including the counterparty code prefix, ie EL333222111. In cases of B2C, where the VAT is unknown, you must leave it blank
- CustomerName is the name of the counterparty, ie Demo Company
- InvoiceType is the invoice type code according to IAPR(ie 1.2)
- Series is the fiscal series of the document, ie ΤΔΑ
- Number is the fiscal number of the document, ie 60
- DateIssued is the date and the time the document is issued in the following format: yyyyMMddHHmmss, ie 20221231143059
- TotalAmount is the total amount of the invoice, ie 100.50
- TotalNetAmount is the total net amount of the invoice, ie 80.50
- TotalVatAmount is the total vat amount of the invoice, ie 24.58
- InternalId is the unique internal document ID, the identifier of the document. The same value is sent when posting the document in the DistributionDetails.InternalDocumentId field.
- ValidationSignature is a unique string produced by the following algorithm:
- Produce the following string: {issuerTin}-{customerTin}-{series}-{number}-{dateIssued}-{totalAmount}-{internalId}{APIKey}
- Convert to UTF8 byte array.
- Hash the byte array using the SHA1 algorithm.
- The signature is the generated byte array as a hexadecimal string(without delimeter)
To test your offline QR code generation implementation you can make a GET request to
https://einvoice-demo.s1ecos.gr/invoice/offlineqr?issuerTin={issuerTin}&customerTin={customerTin}&series={series}&number={number}&dateIssued={dateIssued}&totalAmount={totalAmount}&internalId={internalId}
which will result in a response with the expected validationSignature value.