SendInvoices
Εκδίδει ένα παραστατικό, το διαβιβάζει στο myDATA της ΑΑΔΕ, παράγει το PDF και το στέλνει στον λήπτη.
POST
{baseUrl}/api/v1/Provider/SendInvoices?skipSignature={true|false}
|
|
| Αυθεντικοποίηση |
Header API-KEY |
| Content-Type |
application/json |
| Παραστατικά ανά κλήση |
1. Το body είναι πίνακας για συμβατότητα με το σχήμα της ΑΑΔΕ, αλλά το API δέχεται ακριβώς ένα παραστατικό ανά κλήση. |
| Χρέωση |
Τα credits εξαρτώνται από τον τύπο. Δείτε Χρεώσεις. |
| Επανάληψη |
Με βάση το UID. Η ΑΑΔΕ το υπολογίζει από ΑΦΜ εκδότη, ημερομηνία, εγκατάσταση, τύπο, σειρά και ΑΑ. Αν ξαναστείλετε το ίδιο παραστατικό, απορρίπτεται με σφάλμα ΑΑΔΕ 228, και το μήνυμα περιέχει το MARK του αρχικού. |
Παράμετροι query
| Όνομα |
Τύπος |
Προεπιλογή |
Περιγραφή |
skipSignature |
boolean |
true |
Αφορά μόνο πληρωμές με type 7 (κάρτα) ή 8 (IRIS). true: το παραστατικό εκδίδεται αμέσως, χωρίς υπογραφή Παρόχου. false: το παραστατικό δεν διαβιβάζεται ακόμη. Η απάντηση φέρνει υπογραφή Παρόχου, χρεώνετε στο POS και μετά ολοκληρώνετε με το CompletionPosInvoices. Δείτε Πληρωμή με κάρτα / IRIS. |
Το body
{
"invoice": [ ← ακριβώς ένα στοιχείο
{
"issuer": PartyType (υποχρεωτικό)
"counterpart": PartyType (B2B: υποχρεωτικό)
"invoiceHeader": InvoiceHeader (υποχρεωτικό)
"paymentMethods": PaymentMethod[] (υποχρεωτικό, εκτός 8.6 / 9.x / 10.x)
"invoiceDetails": InvoiceRow[] (υποχρεωτικό)
"taxesTotals": TaxTotal[] (προαιρετικό)
"invoiceSummary": InvoiceSummary (υποχρεωτικό)
"packingsDeclarations": [...] (προαιρετικό, μόνο παραστατικά διακίνησης)
"transmissionFailure": 1 (προαιρετικό)
"providerAdditionalInvoiceDetails": (υποχρεωτικό, στοιχεία του PDF)
}
]
}
Υπόμνημα: υποχρ. υποχρεωτικό · προαιρ. προαιρετικό · νέο νέο στο myDATA 2.0.x · PDF = χρησιμοποιείται μόνο στο έντυπο, δεν στέλνεται στην ΑΑΔΕ · Novus = πεδίο του Παρόχου, όχι της ΑΑΔΕ.
invoice
| Πεδίο |
Τύπος |
|
Περιγραφή |
issuer |
PartyType |
υποχρ. |
Ο εκδότης. Ο issuer.vatNumber πρέπει να είναι ενεργός στον λογαριασμό σας. |
counterpart |
PartyType |
προαιρ. |
Ο λήπτης. Η ΑΑΔΕ τον ζητά στα τιμολόγια (1.x, 2.x, 5.x …). Στη λιανική (11.x) παραλείπεται. |
invoiceHeader |
InvoiceHeader |
υποχρ. |
|
paymentMethods |
PaymentMethod[] |
υποχρ. |
Υποχρεωτικό σε όλους τους τύπους εκτός από 8.6, 9.1, 9.2, 9.3, 10.1, 10.2. Στο 8.6 απαγορεύεται. Το άθροισμα των amount πρέπει να ισούται με το invoiceSummary.totalGrossValue. |
invoiceDetails |
InvoiceRow[] |
υποχρ. |
Τουλάχιστον μία γραμμή. |
taxesTotals |
TaxTotal[] |
προαιρ. |
Φόροι εκτός ΦΠΑ σε επίπεδο παραστατικού. Αν το χρησιμοποιείτε, δεν στέλνετε τους ίδιους φόρους και ανά γραμμή. |
invoiceSummary |
InvoiceSummary |
υποχρ. |
|
packingsDeclarations νέο |
PackingsDeclaration[] |
προαιρ. |
Μόνο σε παραστατικά διακίνησης. |
transmissionFailure |
integer |
προαιρ. |
1 = το παραστατικό εκδόθηκε ενώ η εφαρμογή σας δεν έφτανε στον Πάροχο, και το στέλνετε τώρα. Στέλνεται μέσα σε 1 ημέρα από το issueDate. Το 2 το βάζει ο ίδιος ο Πάροχος και απορρίπτεται αν το στείλετε. Δείτε Offline. |
providerAdditionalInvoiceDetails |
ProviderAdditionalInvoiceDetails |
υποχρ. |
Στοιχεία μόνο για το PDF: επωνυμίες, διευθύνσεις, ετικέτες, παραλήπτες. |
Πεδία που ΔΕΝ στέλνετε
Τα uid, mark, authenticationCode, qrCodeUrl και downloadingInvoiceUrl τα συμπληρώνει η ΑΑΔΕ ή ο Πάροχος. Στα paymentMethods, τα transactionId, ProvidersSignature, tipAmount και ECRToken απορρίπτονται: τα συμπληρώνει η ροή του POS.
PartyType
Για τα issuer, counterpart και otherCorrelatedEntities[].entityData. Όλα τα πεδία στέλνονται στην ΑΑΔΕ.
| Πεδίο |
Τύπος |
|
Περιγραφή |
vatNumber |
string |
υποχρ. |
ΑΦΜ. Χωρίς κενά στην αρχή ή στο τέλος: ο Πάροχος απορρίπτει counterpart.vatNumber με κενά. |
country |
string |
υποχρ. |
ISO 3166-1 alpha-2, π.χ. GR. |
branch |
integer |
υποχρ. |
Αριθμός εγκατάστασης όπως στο Taxis. Έδρα = 0. |
name |
string |
προαιρ. |
Επωνυμία. Δεν γίνεται δεκτή από την ΑΑΔΕ για ελληνικές οντότητες (χώρα GR), άρα τη στέλνετε μόνο για αλλοδαπούς λήπτες. |
address |
Address |
προαιρ. |
Για τον εκδότη, δεν γίνεται δεκτή για ελληνικές οντότητες. Για αλλοδαπό λήπτη, υποχρεωτική με postalCode και city. |
documentIdNo |
string(100) |
προαιρ. |
Αριθμός επίσημου εγγράφου του λήπτη (π.χ. διαβατήριο). Μόνο σε tax free (specialInvoiceCategory = 4). |
supplyAccountNo |
string(100) |
προαιρ. |
Αριθμός παροχής ρεύματος. Μόνο σε τιμολόγια καυσίμων (fuelInvoice = true). |
countryDocumentId |
string |
προαιρ. |
Χώρα που εξέδωσε το documentIdNo. Μόνο σε tax free. |
Address
| Πεδίο |
Τύπος |
|
Περιγραφή |
street |
string |
προαιρ. |
Οδός |
number |
string |
προαιρ. |
Αριθμός |
postalCode |
string |
υποχρ. |
Ταχυδρομικός κώδικας |
city |
string |
υποχρ. |
Πόλη |
| Πεδίο |
Τύπος |
|
Περιγραφή |
series |
string(50) |
υποχρ. |
Σειρά. "0" αν το παραστατικό δεν έχει σειρά. |
aa |
string(50) |
υποχρ. |
Αύξων αριθμός μέσα στη σειρά. |
issueDate |
date yyyy-MM-dd |
υποχρ. |
Η σημερινή ημερομηνία για παραστατικά μέσω Παρόχου (σφάλμα ΑΑΔΕ 238). Εξαίρεση: transmissionFailure = 1. |
invoiceType |
string |
υποχρ. |
Τύπος παραστατικού. Μέσω Παρόχου επιτρέπονται μόνο οι τύποι 1.1 έως 11.5. Οι τύποι 12.x έως 17.x δεν διαβιβάζονται ποτέ από Πάροχο. |
vatPaymentSuspension |
boolean |
προαιρ. |
Αναστολή καταβολής ΦΠΑ. |
currency |
string |
προαιρ. |
ISO 4217, π.χ. EUR. |
exchangeRate |
decimal(5) |
προαιρ. |
Μόνο όταν το currency δεν είναι EUR. |
correlatedInvoices |
long[] |
προαιρ. |
MARK των συσχετιζόμενων παραστατικών, π.χ. το αρχικό τιμολόγιο ενός πιστωτικού 5.1. |
correlatedInvoicesLabel |
string |
προαιρ. |
PDF. Η αναφορά στα συσχετιζόμενα που τυπώνεται. Υποχρεωτικό όταν στέλνετε correlatedInvoices. |
correlatedInvoicesUids |
string[] |
προαιρ. |
Novus. UID των συσχετιζόμενων, που ο Πάροχος μετατρέπει σε MARK. Προς το παρόν ισχύει μόνο στην ολοκλήρωση πληρωμών POS και στην επαναποστολή offline. Σε κανονική κλήση χρησιμοποιήστε το correlatedInvoices. |
selfPricing |
boolean |
προαιρ. |
Αυτοτιμολόγηση. |
dispatchDate |
date |
προαιρ. |
Προγραμματισμένη ημερομηνία αποστολής. Από το myDATA 2.0 τα πραγματικά στοιχεία μεταφοράς τα δηλώνει ο μεταφορέας στη ροή του ψηφιακού δελτίου αποστολής. |
dispatchTime |
time HH:mm:ss |
προαιρ. |
Προγραμματισμένη ώρα αποστολής. |
vehicleNumber |
string |
προαιρ. |
Προγραμματισμένος αριθμός οχήματος. |
movePurpose |
integer |
προαιρ. |
Σκοπός διακίνησης. Οι τιμές 6, 15, 16, 17 και 18 δεν γίνονται πλέον δεκτές. |
movePurposeLabel |
string |
προαιρ. |
PDF. Το κείμενο του σκοπού διακίνησης που τυπώνεται. |
otherMovePurposeTitle |
string |
προαιρ. |
Μόνο όταν movePurpose = 19. |
fuelInvoice |
boolean |
προαιρ. |
Παραστατικό πώλησης καυσίμων. |
specialInvoiceCategory |
integer |
προαιρ. |
Ειδική κατηγορία παραστατικού. |
invoiceVariationType |
integer |
προαιρ. |
Τύπος απόκλισης. Δεν επιτρέπεται μέσω Παρόχου. |
otherCorrelatedEntities |
EntityType[] |
προαιρ. |
Άλλες συσχετιζόμενες οντότητες: μεταφορέας, φορολογικός αντιπρόσωπος κ.λπ. |
otherDeliveryNoteHeader |
OtherDeliveryNoteHeader |
προαιρ. |
Υποχρεωτικό στα δελτία αποστολής (9.x) και στα τιμολόγια με isDeliveryNote = true. |
isDeliveryNote |
boolean |
προαιρ. |
Το τιμολόγιο είναι και δελτίο αποστολής, π.χ. 1.1 με στοιχεία μεταφοράς. |
thirdPartyCollection |
boolean |
προαιρ. |
Μόνο σε 8.4 / 8.5. |
multipleConnectedMarks |
long[] |
προαιρ. |
Πολλαπλά συνδεδεμένα MARK. Κυρίως για το κλείσιμο δελτίων 8.6. Δεν γίνεται δεκτό σε 1.6, 2.4 και 5.1. |
multipleConnectedUids |
string[] |
προαιρ. |
Novus. Το ίδιο, με UID. Χρήσιμο για δελτία 8.6 που εκδόθηκαν όσο η ΑΑΔΕ ήταν offline. |
tableAA |
string (GUID) |
προαιρ. |
Αναγνωριστικό τραπεζιού. Υποχρεωτικό στο 8.6, και χρησιμοποιείται στο κλείσιμο του τραπεζιού. Δείτε Εστίαση. |
totalCancelDeliveryOrders |
boolean |
προαιρ. |
Μόνο σε 8.6: ακυρώνει όλα τα δελτία του multipleConnectedMarks. |
reverseDeliveryNote |
boolean |
προαιρ. |
Μόνο σε 9.3: αντίστροφη διακίνηση. |
reverseDeliveryNotePurpose |
integer |
προαιρ. |
Σκοπός αντίστροφης διακίνησης. Υποχρεωτικό όταν reverseDeliveryNote = true. |
toWeigh νέο |
boolean |
προαιρ. |
«Προς ζύγιση». Μόνο σε 9.1, 9.2 και 9.3. |
receivingNotePurpose νέο |
integer |
προαιρ. |
Σκοπός δελτίου ποσοτικής παραλαβής. Υποχρεωτικό σε 10.1 και 10.2, και γίνεται δεκτό μόνο εκεί. |
otherReceivingNotePurposeTitle νέο |
string |
προαιρ. |
Μόνο όταν receivingNotePurpose = 7. |
nonObligatedRecipient νέο |
boolean |
προαιρ. |
Μόνο σε παραστατικά διακίνησης: ο λήπτης δεν είναι υπόχρεος να συμμετέχει στην ψηφιακή διακίνηση. |
withoutDigitalTransportTracking νέο |
boolean |
προαιρ. |
Μόνο σε παραστατικά διακίνησης: το παραστατικό δεν συμμετέχει στην ψηφιακή παρακολούθηση της μεταφοράς. Η κατάστασή του γίνεται Ολοκληρωμένη με την έκδοση. |
EntityType
| Πεδίο |
Τύπος |
|
Περιγραφή |
loadingAddress |
Address |
υποχρ. |
Διεύθυνση φόρτωσης. |
deliveryAddress |
Address |
υποχρ. |
Διεύθυνση παράδοσης. |
startShippingBranch |
integer |
προαιρ. |
Εγκατάσταση του εκδότη από όπου ξεκινά η διακίνηση, αν διαφέρει από την εγκατάσταση έκδοσης. |
completeShippingBranch |
integer |
προαιρ. |
Εγκατάσταση του λήπτη όπου ολοκληρώνεται η διακίνηση, αν διαφέρει. |
paymentMethods
| Πεδίο |
Τύπος |
|
Περιγραφή |
type |
integer |
υποχρ. |
Τρόπος πληρωμής. |
amount |
decimal(2) |
υποχρ. |
Το ποσό που πληρώνεται με αυτόν τον τρόπο. Τα ποσά όλων των τρόπων πρέπει να αθροίζουν στο totalGrossValue. |
paymentMethodInfo |
string |
προαιρ. |
Επιπλέον πληροφορία που στέλνεται στην ΑΑΔΕ, π.χ. IBAN. |
terminalId |
string(200) |
προαιρ. |
Novus. Κωδικός τερματικού POS (TID). Υποχρεωτικό σε type 7/8 με skipSignature=false. Γίνεται δεκτό και με το όνομα της ΑΑΔΕ, tid. |
posNspId |
integer |
προαιρ. |
Novus. Πάροχος POS / NSP του τερματικού. Υποχρεωτικό σε type 7/8 με skipSignature=false. Καθορίζει τη μορφή της υπογραφής. |
invoiceDetails
| Πεδίο |
Τύπος |
|
Περιγραφή |
lineNumber |
integer |
υποχρ. |
Αριθμός γραμμής, από 1. |
lineCode |
string |
προαιρ. |
PDF. Κωδικός είδους που τυπώνεται. |
lineDescription |
string |
υποχρ. |
PDF. Περιγραφή γραμμής που τυπώνεται. |
recType |
integer |
προαιρ. |
Είδος γραμμής. Το 7 (αρνητικό πρόσημο) χρησιμοποιείται στη μερική ακύρωση 8.6. |
TaricNo |
string(10) |
προαιρ. |
Κωδικός TARIC. Μόνο σε τιμολόγια που είναι και δελτία αποστολής, και σε παραστατικά διακίνησης. |
itemCode |
string(50) |
προαιρ. |
Κωδικός είδους που στέλνεται στην ΑΑΔΕ. Ίδιος περιορισμός με το TaricNo. |
itemDescr |
string(300) |
προαιρ. |
Περιγραφή είδους που στέλνεται στην ΑΑΔΕ. Tax free, παραστατικά διακίνησης και 8.6. |
fuelCode |
integer |
προαιρ. |
Κωδικός καυσίμου. Μόνο όταν fuelInvoice = true. |
quantity |
decimal |
προαιρ. |
Ποσότητα (≥ 0). |
measurementUnit |
integer |
προαιρ. |
Μονάδα μέτρησης. |
measurementUnitLabel |
string |
προαιρ. |
PDF. Η μονάδα που τυπώνεται, π.χ. τεμ.. |
otherMeasurementUnitQuantity |
integer |
προαιρ. |
Υποχρεωτικό όταν measurementUnit = 7. |
otherMeasurementUnitTitle |
string |
προαιρ. |
Υποχρεωτικό όταν measurementUnit = 7, π.χ. 3_Παλέτες. |
invoiceDetailType |
integer |
προαιρ. |
Επισήμανση. Για τιμολόγια εκκαθάρισης 1.5. |
lineUnitPrice |
decimal |
υποχρ. |
PDF. Τιμή μονάδας. |
totalNetPriceBeforeDiscount |
decimal |
υποχρ. |
PDF. lineUnitPrice × quantity. |
totalDiscountValue |
decimal |
υποχρ. |
PDF. Συνολική έκπτωση γραμμής (0 αν δεν υπάρχει). |
netValue |
decimal(2) |
υποχρ. |
Καθαρή αξία γραμμής, μετά την έκπτωση. |
vatCategory |
integer |
υποχρ. |
Κατηγορία ΦΠΑ. |
vatCategoryPercent |
decimal |
υποχρ. |
PDF. Ο συντελεστής ΦΠΑ που τυπώνεται, π.χ. 24.00. |
vatAmount |
decimal(2) |
υποχρ. |
Ποσό ΦΠΑ της γραμμής. |
vatExemptionCategory |
integer |
προαιρ. |
Αιτία εξαίρεσης ΦΠΑ. Υποχρεωτικό όταν vatCategory = 7. |
vatExemptionCategoryLabel |
string |
προαιρ. |
PDF. Το κείμενο της εξαίρεσης που τυπώνεται. |
dienergia |
Ship |
προαιρ. |
Δήλωση διενέργειας δραστηριότητας (άρθρο 27, ΠΟΛ 1177/2018, πλοία). |
discountOption |
boolean |
προαιρ. |
Δικαίωμα έκπτωσης. |
withheldAmount / withheldPercentCategory |
decimal / integer |
προαιρ. |
Παρακρατούμενος φόρος (κατηγορίες). |
stampDutyAmount / stampDutyPercentCategory |
decimal / integer |
προαιρ. |
Ψηφιακό Τέλος συναλλαγής, πρώην χαρτόσημο (κατηγορίες). |
feesAmount / feesPercentCategory |
decimal / integer |
προαιρ. |
Τέλη (κατηγορίες). |
otherTaxesAmount / otherTaxesPercentCategory |
decimal / integer |
προαιρ. |
Λοιποί φόροι (κατηγορίες). |
deductionsAmount |
decimal(2) |
προαιρ. |
Κρατήσεις. |
lineComments |
string |
προαιρ. |
Σχόλια που στέλνονται στην ΑΑΔΕ (δεν τυπώνονται). |
incomeClassification |
Classification[] |
προαιρ. |
Χαρακτηρισμός εσόδων της γραμμής. |
expensesClassification |
Classification[] |
προαιρ. |
Χαρακτηρισμός εξόδων, π.χ. στην αυτοτιμολόγηση. |
quantity15 |
decimal |
προαιρ. |
Ποσότητα στους 15 °C. Μόνο σε τιμολόγια καυσίμων. |
notVAT195 νέο |
boolean |
προαιρ. |
Τα ποσά της γραμμής δεν συμμετέχουν στη δήλωση ΦΠΑ (εκροές). Μόνο σε τύπους 1.1 έως 11.5. |
movePurposeLine νέο |
integer |
προαιρ. |
Σκοπός διακίνησης της γραμμής, όταν διαφέρει από της επικεφαλίδας. |
otherMovePurposeLineTitle νέο |
string(150) |
προαιρ. |
Υποχρεωτικό όταν movePurposeLine = 19. |
Ship (dienergia)
| Πεδίο |
Τύπος |
|
Περιγραφή |
applicationId |
string |
υποχρ. |
Αριθμός δήλωσης διενέργειας δραστηριότητας. |
applicationDate |
date |
υποχρ. |
Ημερομηνία δήλωσης. |
doy |
string |
προαιρ. |
ΔΟΥ της δήλωσης. |
shipId |
string |
υποχρ. |
Στοιχεία πλοίου. |
Classification
| Πεδίο |
Τύπος |
|
Περιγραφή |
classificationType |
string |
προαιρ. |
Τύπος εσόδων (E3_…) ή τύπος εξόδων (E3_…, VAT_…). |
classificationCategory |
string |
υποχρ. |
Κατηγορία εσόδων (category1_…, category3) ή κατηγορία εξόδων (category2_…). |
amount |
decimal(2) |
υποχρ. |
Το ποσό που χαρακτηρίζεται. |
vatAmount, vatCategory, vatExemptionCategory |
|
προαιρ. |
Μόνο στον χαρακτηρισμό εξόδων. |
id |
integer |
προαιρ. |
Αύξων αριθμός του χαρακτηρισμού. |
taxesTotals
Παρακράτηση, τέλη, λοιποί φόροι, ψηφιακό τέλος συναλλαγής και κρατήσεις για όλο το παραστατικό. Στα τιμολόγια B2G είναι ο μόνος επιτρεπτός τρόπος.
| Πεδίο |
Τύπος |
|
Περιγραφή |
taxType |
integer |
υποχρ. |
Είδος φόρου: 1 παρακρατούμενος, 2 τέλη, 3 λοιποί φόροι, 4 ψηφιακό τέλος συναλλαγής, 5 κρατήσεις. |
taxCategory |
integer |
προαιρ. |
Η κατηγορία από τον πίνακα που αντιστοιχεί στο taxType. |
underlyingValue |
decimal |
προαιρ. |
Το ποσό πάνω στο οποίο υπολογίζεται ο φόρος. |
taxAmount |
decimal(2) |
υποχρ. |
Ποσό φόρου. |
id |
integer |
προαιρ. |
Αύξων αριθμός. |
reducesPayable |
boolean |
προαιρ. |
PDF. true αν το ποσό μειώνει το πληρωτέο, π.χ. παρακράτηση. |
taxTypeLabel |
string |
υποχρ. |
PDF. Η ετικέτα που τυπώνεται για τον φόρο, π.χ. Φόρος διαμονής 4*. |
invoiceSummary
| Πεδίο |
Τύπος |
|
Περιγραφή |
totalNetValue |
decimal(2) |
υποχρ. |
Άθροισμα των netValue. |
totalVatAmount |
decimal(2) |
υποχρ. |
Άθροισμα των vatAmount. |
totalWithheldAmount |
decimal(2) |
υποχρ. |
0 αν δεν υπάρχει. |
totalFeesAmount |
decimal(2) |
υποχρ. |
0 αν δεν υπάρχει. |
totalStampDutyAmount |
decimal(2) |
υποχρ. |
Σύνολο ψηφιακού τέλους συναλλαγής. 0 αν δεν υπάρχει. |
totalOtherTaxesAmount |
decimal(2) |
υποχρ. |
0 αν δεν υπάρχει. |
totalDeductionsAmount |
decimal(2) |
υποχρ. |
0 αν δεν υπάρχει. |
totalGrossValue |
decimal(2) |
υποχρ. |
καθαρή αξία + ΦΠΑ − παρακράτηση + τέλη + ψηφιακό τέλος + λοιποί φόροι − κρατήσεις. Πρέπει να ισούται με το άθροισμα των paymentMethods[].amount. |
incomeClassification |
Classification[] |
προαιρ. |
Το άθροισμα των χαρακτηρισμών των γραμμών, ανά τύπο και κατηγορία. |
expensesClassification |
Classification[] |
προαιρ. |
Το ίδιο για τα έξοδα. |
packingsDeclarations νέο
Μόνο σε παραστατικά διακίνησης. Κάθε στοιχείο έχει μια λίστα Packages:
| Πεδίο |
Τύπος |
|
Περιγραφή |
Packages[].packagingType |
integer |
υποχρ. |
Είδος συσκευασίας (1–6). Δείτε ΑΑΔΕ «Ψηφιακό Δελτίο Αποστολής», πίνακας 8.23. |
Packages[].quantity |
integer |
υποχρ. |
Πλήθος συσκευασιών. |
Packages[].otherPackagingTypeTitle |
string(150) |
προαιρ. |
Τίτλος για «λοιπές» συσκευασίες. |
providerAdditionalInvoiceDetails
Όλα εδώ χρησιμοποιούνται μόνο για το PDF και το email προς τον λήπτη. Τίποτα δεν στέλνεται στην ΑΑΔΕ.
issuer (υποχρεωτικό)
| Πεδίο |
|
Περιγραφή |
name, profession, taxoffice |
υποχρ. |
Επωνυμία, δραστηριότητα και ΔΟΥ. |
addressStreet, addressNumber, addressPostalCode, addressCity, addressCountry |
υποχρ. |
Η διεύθυνση όπως τυπώνεται. |
phone, fax, email, webSite, registryNumber |
προαιρ. |
registryNumber = ΓΕΜΗ. |
emtyLine, emtyLine2 |
προαιρ. |
Δύο ελεύθερες γραμμές κάτω από τον εκδότη, π.χ. IBAN. (Τα ονόματα γράφονται emty….) |
counterpart (προαιρετικό)
| Πεδίο |
|
Περιγραφή |
code |
προαιρ. |
Ο κωδικός πελάτη σας. |
vat |
προαιρ. |
ΑΦΜ που τυπώνεται σε παραστατικά λιανικής (11.1/11.2) όταν το ζητήσει ο πελάτης. |
name, profession, taxoffice |
προαιρ. |
Στα τιμολόγια (B2B) προτείνουμε να τα συμπληρώνετε πάντα. |
addressStreet, addressNumber, addressPostalCode, addressCity, addressCountry, phone, email |
προαιρ. |
|
additionalDetails (υποχρεωτικό)
| Πεδίο |
Τύπος |
|
Περιγραφή |
documentLabel |
string |
υποχρ. |
Ο τίτλος του παραστατικού που τυπώνεται, π.χ. Τιμολόγιο Πώλησης. |
paymentMethodInvoiceLabel |
string |
υποχρ. |
Ο τρόπος πληρωμής που τυπώνεται, π.χ. Μετρητά. |
documentSizeCode |
integer |
προαιρ. |
Πρότυπο PDF: A4, A5, 80mm, 57mm. Προεπιλογή 0 (A4). |
documentLanguageCode |
string |
προαιρ. |
EL (προεπιλογή) ή EN. |
documentComments |
string |
προαιρ. |
Ελεύθερα σχόλια που τυπώνονται. Για αλλαγή γραμμής, \n. |
recipients.email |
string |
προαιρ. |
Το email όπου στέλνεται το PDF μετά την έκδοση. |
digitsQty |
integer 2–5 |
προαιρ. |
Δεκαδικά ψηφία στις ποσότητες. Προεπιλογή 3. |
digitsItemPrice |
integer 2–5 |
προαιρ. |
Δεκαδικά ψηφία στις τιμές μονάδας. Προεπιλογή 2. |
dispatchPlaceFrom, dispatchPlaceTo |
string |
προαιρ. |
Τόπος φόρτωσης / προορισμού που τυπώνεται στα παραστατικά διακίνησης. |
logoId |
GUID |
προαιρ. |
Logo που ανεβάσατε στο portal. |
oldLogoId |
integer |
προαιρ. |
Παλιό. Μόνο για παλιούς λογαριασμούς. |
Έλεγχοι του Παρόχου (πριν την ΑΑΔΕ)
Ο Πάροχος κάνει αυτούς τους ελέγχους πριν διαβιβάσει. Αν αποτύχει κάποιος, το παραστατικό δεν στέλνεται στην ΑΑΔΕ και δεν χρεώνονται credits. Η απάντηση είναι HTTP 400/401 με body {"errors": ["<μήνυμα>"]}. Τα μηνύματα έρχονται στα αγγλικά, όπως στη στήλη «Μήνυμα».
| HTTP |
Κανόνας |
Μήνυμα |
| 401 |
Λείπει ή είναι άκυρο το API-KEY. |
(κενό body) |
| 400 |
Το invoice είναι κενό. |
There is no invoice in the request. |
| 400 |
Περισσότερα από ένα παραστατικά στο invoice[]. |
At this moment you can send only one invoice per request. |
| 401 |
Ο λογαριασμός δεν επιτρέπεται να εκδίδει (π.χ. σε αναστολή). |
You don't have the authority to send invoices this time. |
| 400 |
Τύπος 8.6 με paymentMethods. |
Invoice type 8.6 can't have payment methods. |
| 400 |
Χωρίς paymentMethods (τύποι εκτός 8.6, 9.x, 10.x). |
Invoice needs to have payment methods. |
| 400 |
Σφάλματα σχήματος / υποχρεωτικών πεδίων. |
Ένα μήνυμα ανά πεδίο, π.χ. The DocumentLabel field is required. |
| 400 |
transmissionFailure = 2. |
You have transmissionFailure with value 2 in one or more invoices. |
| 400 |
Το counterpart.vatNumber έχει κενά στην αρχή ή στο τέλος. |
Counterpart VAT number should not contain leading or trailing spaces. |
| 400 |
transmissionFailure = 1 και issueDate παλαιότερο από 1 ημέρα. |
If you have one or more invoices with transmissionFailure = 1, the invoice issue date cannot be more than 1 day old. |
| 400 |
Σ paymentMethods[].amount ≠ totalGrossValue. |
The sum of the payment methods amount must be equal to the total gross value of the invoices. |
| 400 |
skipSignature=false, πληρωμή 7/8 χωρίς terminalId/tid. |
If one of the payment methods requires pos then the Terminal Id (tid) field is required. |
| 400 |
skipSignature=false, πληρωμή 7/8 χωρίς posNspId. |
If one of the payment methods requires pos then the Pos Nsp Id fields is required. |
| 400 |
Συμπληρωμένα transactionId, ProvidersSignature, tipAmount ή ECRToken. |
The transactionId, ProvidersSignature, tipAmount, ECRToken fields is not allowed to be filled. |
| 401 |
Ο issuer.vatNumber δεν είναι ενεργός στον λογαριασμό σας. |
You don't have the authority to send for this vat numbers ... |
| 401 |
Εστίαση: η εγκατάσταση έχει τραπέζι 8.6 ανοιχτό πάνω από 24 ώρες. |
You don't have the authority to send invoices for this branch becouse you have open table more than 24h. |
| 400 |
Εστίαση: ασυνεπής ακύρωση με recType = 7. |
You can't send this invoice because it includes inconsistent recType 7 details, ... |
| 400 |
Εστίαση: το παραστατικό κλεισίματος δεν ταιριάζει με τα ανοιχτά δελτία. |
Multiple connected marks are not as invoice details. ... / The total quantity of products and the total net value in the closing order invoice ... do not match ... |
| 400 |
Δεν επαρκούν τα credits. |
You don't have enough balance to send this request. |
Η απάντηση
Το HTTP 200 σημαίνει ότι ο Πάροχος επεξεργάστηκε την κλήση. Αν το παραστατικό εκδόθηκε, το λέει το response[0].statusCode.
{
"response": [
{
"index": 1,
"statusCode": "Success",
"invoiceUid": "C10262E0AE13C6AFD7DD2C980900BB0DF266D9C5",
"invoiceMark": 400001939576037,
"authenticationCode": "1D0F38488D532D3BB715408E01283D39E8D56A3A",
"invoiceUrl": "https://provider.timologisi.online/api/v1/Provider/GetInvoicePdf/671899191d6d0b3d947bc4bb.pdf",
"qrUrl": "https://provider.timologisi.online/api/v1/Provider/GetInvoicePdf/671899191d6d0b3d947bc4bb.pdf",
"aadeQrUrl": "…",
"credits": "1,00",
"paymentMethodMark": 0,
"providerSignature": null,
"receptionProviders": null,
"receptionEmails": null,
"errors": null
}
]
}
| Πεδίο |
Τύπος |
Περιγραφή |
index |
integer |
Η θέση του παραστατικού στην κλήση (από 1). |
statusCode |
string |
Success, Offline, ValidationError, XMLSyntaxError, TechnicalError. Δείτε statusCode. |
invoiceUid |
string(40) |
Το UID. Επιστρέφεται και σε Offline. |
invoiceMark |
long |
Το MARK. 0 σε Offline ή σε σφάλμα. |
authenticationCode |
string |
Το Authentication Code. Κενό σε Offline. |
invoiceUrl |
string |
Link στο PDF. Το τυπώνετε ως QR code, ή το χρησιμοποιείτε για προβολή και λήψη. |
qrUrl |
string |
Ίδιο με το invoiceUrl. Μένει για συμβατότητα. |
aadeQrUrl |
string |
Το επίσημο link επαλήθευσης της ΑΑΔΕ. Πληροφοριακό. |
credits |
string |
Τα credits που χρεώθηκαν, με υποδιαστολή κόμμα, π.χ. "0,50". |
paymentMethodMark |
long |
MARK της εγγραφής τρόπου πληρωμής (ροές POS). |
providerSignature |
array |
Μόνο με skipSignature=false και πληρωμή με κάρτα / IRIS. Δείτε Πληρωμή με κάρτα / IRIS. |
receptionProviders |
object |
Οι Πάροχοι μέσω των οποίων ο λήπτης παραλαμβάνει ηλεκτρονικά τιμολόγια, όταν τους επιστρέφει η ΑΑΔΕ. |
receptionEmails |
object |
Τα emails που έχει δηλώσει ο λήπτης για παραλαβή ηλεκτρονικών τιμολογίων, όταν τα επιστρέφει η ΑΑΔΕ. |
errors |
array |
[{ "error": [ { "code": "…", "message": "…" } ] }] όταν το statusCode είναι σφάλμα. Δείτε Κωδικοί σφαλμάτων ΑΑΔΕ. |
Δείτε επίσης: Σφάλματα & statusCode · Κωδικοί σφαλμάτων ΑΑΔΕ · Χρεώσεις