A Vevőszámla fogadás elnevezésű API elem segítségével lehetőség van vevőszámlákat érkeztetni a sERPába egy külső rendszerből.
Egy hívásban lehetőség van egy vagy több tételt is felvenni, Cikk, Normál, Szolgáltatás típussal.
Csatolmányt is iktathatunk, ha a Vevőszámla sorozatban megadásra került iratgyűjtő. Ha nem kerül töltésre, akkor az irat csatolás nem történik meg az interfész futtatásakor.
Az iratgyűjtőhöz kötelezően meg kell adni saját ügyintézőt. Az ajánlás történhet, paraméterből, ügyféltörzsből vagy felhasználóból.
A hívásban a csatolmány útvonalát "Path" vagy "Link" URL paraméterrel kell felvenni. A csatolmány a Fejlécen található Kapcsolódó iratok táblázatban lesz látható.
További információ a swaggerben és az Interfész funkcióban található.
POST / invoice
Vevőszámla fogadás eredményhalmaz - API |
Bemenőparaméter változat = Alapértelmezett |
Vevőszámla fogadás |
|
Művelet paraméter |
Azonosító (JSON path) |
Leírás |
Külső azonosító |
$.Invoice.ExternalID |
A mezők leírása megfelel a Vevőszámla bevitel mezőleírásának |
Év |
$.Invoice.Year |
|
Sorozat |
$.Invoice.Series |
|
Sorszám |
$.Invoice.Number |
|
Állapot1 |
$.Invoice.Status1 |
|
Állapot2 |
$.Invoice.Status2 |
|
Számla típus |
$.Invoice.InvoiceType |
|
Előleg típus |
$.Invoice.ProformaType |
|
Előlegszámlaszám |
$.Invoice.ProformaReferenceNo |
|
Helyesbítés típus |
$.Invoice.AdvanceType |
|
Helyesbített vevőszámla év |
$.Invoice.CorrectedInvoiceYear |
|
Helyesbített vevőszámla sorozat |
$.Invoice.CorrectedInvoiceSeries |
|
Helyesbített vevőszámla sorszám |
$.Invoice.CorrectedInvoiceNumber |
|
Helyesbített számla külső azonosító |
$.Invoice.CorrectedInvoiceExternalID |
|
Kézi Számlaszám |
$.Invoice.InvoiceNumber |
|
Ügyfél kód |
$.Invoice.CustomerCode |
|
Ügyfél Telephely kód |
$.Invoice.CustomerPremise |
|
Ügyfél ügyintéző név |
$.Invoice.CustomerAdministrator |
|
Ügynök kód |
$.Invoice.AgentCode |
|
Ügyfél EU adószám |
$.Invoice.CustomerEUTaxNumber |
|
Saját ügyintéző kód |
$.Invoice.SuppliersAdministrator |
|
Számla dátum |
$.Invoice.InvoiceDate |
|
Teljesítés dátum |
$.Invoice.PerformanceDate |
|
Vámolás dátum |
$.Invoice.CustomsClearanceDate |
|
Vámhatározatszám |
$.Invoice.CustomsDecisionNo |
|
Tagország név |
$.Invoice.MemberCountry |
|
Fizetési mód név |
$.Invoice.PaymentType |
|
Ügyfél bankszámlaszám |
$.Invoice.CustomerBankAccount |
|
Esedékesség dátum |
$.Invoice.DueDate |
|
Számlázás alapja |
$.Invoice.Reference |
|
Kötésszám kód |
$.Invoice.Bondnumber |
|
Szállítási mód név |
$.Invoice.ShippingMethod |
|
Szállítási feltétel név |
$.Invoice.Delivery terms |
|
Deviza kód |
$.Invoice.Currency |
|
Fizetési feltétel név |
$.Invoice.PaymentTerms |
|
Végösszeg |
$.Invoice.GrandTotal |
|
Megjegyzés |
$.Invoice.Note |
|
Megjegyzés nyomtatás |
$.Invoice.PrintNote |
|
Elszámolási főkönyvi szám kód |
$.Invoice.ReconsiliationLedgerNo |
|
Kerekítés |
$.Invoice.Rounding |
|
Kerekítés eltérés |
$.Invoice.RoundingDifference |
|
Áfa dátum |
$.Invoice.VATDate |
|
Késedelmi kamat számítás név |
$.Invoice.LatePaymentCalc |
|
Könyvelés dátum |
$.Invoice.AccountingDate |
|
Pénzforgalmi áfa |
$.Invoice.VATPayment |
|
Kisadózó |
$.Invoice.SmallTAXPayer |
|
Áthárított áfa |
$.Invoice.PassedVAT |
|
Elszámolt időszak kezdete |
$.Invoice.StartAccountingPeriod |
|
Elszámolt időszak vége |
$.Invoice.EndAccountingPeriod |
|
Részletfizetések |
$.Invoice.Installment |
|
Részletfizetés dátum |
$.Invoice.Installment.Date |
|
Részletfizetés összeg |
$.Invoice.Installment.Amount |
|
Részeltfizetés típus |
$.Invoice.Installment.Type |
|
Részletfizetés megjegyzés |
$.Invoice.Installment.Note |
|
Részletfizetés garanciális visszatartás |
$.Invoice.Installment.RetentionWarranty |
|
Tételek |
$.Invoice.Item |
|
Tétel sorrend |
$.Invoice.Item.Sequence |
|
Tétel típus |
$.Invoice.Item.Type |
|
Szöveg |
$.Invoice.Item.ProductName |
|
Termék kód |
$.Invoice.Item.ProductCode |
|
Mennyiség |
$.Invoice.Item.Quantity |
|
Mennyiség egység név |
$.Invoice.Item.Unit |
|
Nettó tömeg |
$.Invoice.Item.NetWeight |
|
Besorolási szám kód |
$.Invoice.Item.ClassificationCode |
|
Vámtarifa kód |
$.Invoice.Item.CustomsTariffCode |
|
Származási hely név |
$.Invoice.Item.PlaceOfOrigin |
|
Származási ország név |
$.Invoice.Item.CountryofOrigin |
|
Ügyletkód kód |
$.Invoice.Item.TransactionCode |
|
Közvetített szolgáltatás |
$.Invoice.Item.IntermediaryService |
|
Nettó egységár |
$.Invoice.Item.NetPrice |
|
Engedmény százalék |
$.Invoice.Item.DiscountPercentage |
|
Engedmény összeg |
$.Invoice.Item.DiscountAmount |
|
Nettó érték |
$.Invoice.Item.NetAmount |
|
Áfa analitika 1 |
$.Invoice.Item.VATAnalysis1 |
|
Áfa analitika 2 |
$.Invoice.Item.VATAnalysis2 |
|
Áfa analitika 3 |
$.Invoice.Item.VATAnalysis3 |
|
Áfa kulcs |
$.Invoice.Item.VATRate |
|
Áfa érték |
$.Invoice.Item.VATAmount |
|
Tétel Megjegyzés nyomtatás |
$.Invoice.Item.Note |
|
Tétel Megjegyzés |
$.Invoice.Item.PrintNote |
|
Stornó tétel |
$.Invoice.Item.StornoItem |
|
Költséghely kód |
$.Invoice.Item.CostCenter |
|
Témaszám kód |
$.Invoice.Item.Subjectno |
|
Pozíciószám kód |
$.Invoice.Item.Positionno |
|
Főkönyvi szám kód |
$.Invoice.Item.GeneralLedger Account |
|
Áfa Főkönyvi szám kód |
$.Invoice.Item.VATLedgerno |
|
Elhatárolások |
$.Invoice.Item.Delimination |
|
Elhatárolás dátum |
$.Invoice.Item.Delimination.Date |
|
Elhatárolás összeg |
$.Invoice.Item.Delimination.Amount |
|
Iratok |
$.Invoice.Attachment |
Iratok táblázat |
Irat típus |
$.Invoice.Attachment.Type |
A csatolt irat típusa |
Irat sorrend |
$.Invoice.Attachment.Sequence |
A csatolt irat sorrendje |
Irat külső azonosító |
$.Invoice.Attachment.ExternalID |
A csatolt irat külső azonosítója |
Tárgy |
$.Invoice.Attachment.Subject |
A csatolt irat típusa |
Link |
$.Invoice.Attachment.Link |
A csatolt irat link elérhetősége |
Path |
$.Invoice.Attachment.Path |
A csatolt irat elérési útvonala |
Paraméter |
Paraméter érték |
Leírás |
Felhasználó |
Felhasznalo_ID, Felhasznalo_IDNev |
sERPa felhasználó |
Azonosító |
Leírás |
|---|---|
InvoiceNumber |
Bizonylatszám (sERPa iktatószám) |
Date |
Felvétel dátum |
ErrorMessage |
Hibaüzenet |
59115: "Létező külső azonosító (%1)"
59114: "Termék kód megadása kötelező Cikk / Szolgáltatás típusú terméknél"
50876: "A megadott ÁFA analitika hibás! A bizonylat nem menthető!"
51007: "Az ügyfél dolgozó nem létezik!"
50243: "Hiányzó vagy érvénytelen termékkód! [%1]"
50999: "Hibás adatformátum."
50368: "Nincsenek tételek!"
50241: "Hiányzó vagy érvénytelen ügyfélkód!"
60001: "A következő mező(k) kitöltése kötelező: %1"
59144: "Nem létező külső azonosító"
50618: "A telephely kód nem használható! %1"
50367: "Érvénytelen fizetési mód! [%1]"
50224: "A fizetési mód nem lehet üres!"
52001: "Érvénytelen Kötésszám kód."
52001: "Érvénytelen Szállítási feltétel."
50489: "Érvénytelen személy! [%1]"
50362: "Érvénytelen besorolási szám! [%1]"
51035: "Nem létező mennyiség egység."
50363: "Érvénytelen költséghely! [%1]"
50363: "Érvénytelen pozíciószám! [%1]"
50364: "Érvénytelen témaszám! [%1]"
50365: "Érvénytelen pozíciószám! [%1]"
59145: "Nem létező ország [%1]"
50748: "A sERPában nem szereplő főkönyvi szám: %1"
59030: "Nem létező ügyfélkód."
59030: "Nem létező vámtarifa."
59109: "A számlasorozat nem létezik!"
50242: "Hiányzó vagy érvénytelen ügynökkód! %1"
Részletfizetések:
59181: "Érvénytelen részletfizetés típus! %1"
59183: "A részletfizetések együttes összege nem térhet el a számla végösszegétől!" - Ellenőrzés figyeli, hogy a részletfizetések összege megegyezik-e a vevőszámla végösszegével, ha eltérés van akkor pedig, hibaüzenetet ír és ne engedi betölteni a számlát.
Iratcsatolás:
59190: "Nincs beállítva iratgyűjtő a megadott sorozatra! [HUG4]",
59191: "Az iratgyűjtőhöz saját ügyintéző megadása kötelező! [Irattár \/ Bejövő]",
Előlegfelhasználás kezelés:
59187: "Olyan előlegszámla lett megadva, amelynek több tétele van!" - Egy végszámlához egy előlegszámlát (előlegfelhasználás kapcsolódó eseményt) lehet felvenni, egy tételes előlegszámlára vonatkozik, ha több tételes az előlegszámla, akkor hibaüzenet érkezik.
59185: "Előleg típusú számlához nem lehet előlegfelhasználást kapcsolni!" - Számla típus ellenőrzés: ha a számla típusa előleg, és az előlegszámla mezőben meg van adva számlaszám, akkor hibaüzenet érkezik.
59186: "Nem létező kéziszámlaszám!" - A Előlegszámlaszám (Invoice.ProformaReferenceNo) mezőbe csak előlegszámlaszám kerülhet, az API ellenőrzi, hogy a rögzített számlák között létezik-e a megadott számlaszám, mint előlegszámla.
59188: "Az előlegszámlának nincs szabad egyenlege!" - Ha az előlegszámlának nincs szabad egyenlege, azt ne lehessen hozzákapcsolni, hibaüzenet érkezik.
59189: "Az importálandó számla és az előlegszámla devizája nem egyezik!" - Az importálandó számla és az előlegszámla devizája nem egyezik!- Deviza ellenőrzés: csak azonos devizájú számlák kapcsolhatók össze, ha a végszámla és az előlegszámla devizája eltér, hibaüzenet érkezik.
- A számla végösszegének és az előlegszámla végösszegének ellenőrzése: az előleg felhasználás maximum a végszámla összegéig kerülhet rögzítésre, max az importálandó végszámla bruttó összegéig használjuk fel az előleget.
[1]. Minden számlát sikerült beküldeni.
{
"Eredmeny": [
{
"InvoiceNumber": "2025-HUG5\/000004",
"ErrorNumber": 0,
"ErrorMessage": null,
"ExternalID": "202702060002",
"ItemID": null
},
{
"InvoiceNumber": "2025-HUG5\/000005",
"ErrorNumber": 0,
"ErrorMessage": null,
"ExternalID": "202702060033",
"ItemID": null
}
]
}
[2]. Hiba volt a fejlécben:
{
"Eredmeny": [
{
"InvoiceNumber": null,
"ErrorNumber": 60001,
"ErrorMessage": "A következő mező(k) kitöltése kötelező: UgyfelKod",
"ExternalID": "202702060002",
"ItemID": null
}
]
}
[3]. Hiba volt a tételben
{
"Eredmeny": [
{
"InvoiceNumber": null,
"ErrorNumber": 50891,
"ErrorMessage": "A tétel megnevezése nem lehet üres!",
"ExternalID": "202702060002",
"ItemID": 1
}
]
}
1.) Az irat ellenőrzés és a csatolmány importálásának folyamata:
Vizsgálatra kerül, hogy van-e csatolmánya az importált számlának.
Ha van csatolmány:
Ellenőrzésre kerül, hogy az irat létezik-e. Ha nem, akkor eredményben visszaadásra kerül egy hiba, hogy az iratoldal felvétele nem sikerült. (Ismeretlen elem!)
Ellenőrizzük és ha lehet felvételre kerül az irat és az iratoldal
Ha nincs csatolmány:
Tovább megy a folyamat és további ellenőrzés nem történik
2.) Helyesbítő számla felvételére is van lehetőség. A hívás fejlécében meg kell adni a Helyesbítés típus, a Helyesbített számla külső azonosítót és a tételeknél a Helyesbített tétel azonosítót. Fontos, hogy a jelenlegi működés szerint fel kell venni - előjellel az eredeti tételt és az új helyesbített tételt is (Mivel össze tartoznak, mind a két tételnél ugyanazt a helyesbített tétel azonosítót kell megadni).
Az eredeti vevőszámlán 10 db tétel szerepelt, amit 5-re helyesbítünk.
sERPaMintaAPI/invoice
[
{
"Invoice": {
"ExternalID": "20231123020",
"CorrectedInvoiceExternalID":"20231123019",
"Year": 2023,
"Series": "HUGO",
"Status": 0,
"InvoiceType": 0,
"AdvanceType": 0,
"CorrectionType": 2,
"InvoiceNumber": "Tesztkéziszámlaszám",
"CustomerCode": "ND123",
"SzamlaDatum": "2023-11-23",
"TeljesitesDatum": "2023-11-23",
"FizMod": "Átutalás",
"EsedekessegDatum": "2023-11-23",
"Deviza": "HUF",
"AfaDatum": "2023-11-23",
"KonyvelesDatum": "2023-11-23",
"Item": [
{
"Azonosito": 1,
"HelyesbitettTetelAzonosito" : 1,
"Sorrend": 1,
"Tipus": 1,
"Kod": "HUGOcikk01",
"Mennyiseg": -10,
"MennyisegEgyseg": "darab",
"NettoEgysegar": 1000,
"TetelMegjegyzesNyomtatas": 1,
"TetelMegjegyzes": "TESZT TESZT",
"KHely": "HUGO",
"TSzam": "HUGO001",
"PSzam": "000000_19",
"AfaFSzam": "000BV"
},
{
"Azonosito": 2,
"HelyesbitettTetelAzonosito" : 1,
"Sorrend": 2,
"Tipus": 1,
"Kod": "HUGOcikk01",
"Mennyiseg": 5,
"MennyisegEgyseg": "darab",
"NettoEgysegar": 1000,
"TetelMegjegyzesNyomtatas": 1,
"TetelMegjegyzes": "TESZT TESZT",
"KHely": "HUGO",
"TSzam": "HUGO001",
"PSzam": "000000_19",
"AfaFSzam": "000BV"
}
],
"Attachments": [
{
"IratTipus": 0,
"IratSorrend": 1,
"IratExternalID": "IRAT20231123020",
"Link": "https://www.progen.hu/wp-content/uploads/2022/07/Tanusitvany-2023.-apr-5-ig.pdf",
"Targy": "Teszt Teszt Teszt Teszt Teszt Teszt Teszt Teszt Teszt Teszt"
}
]
}
}
]


3.) A példa hívás két tétel és egy csatolmány importálását mutatja be.
sERPaMintaAPI/invoice
[
{
"Invoice": {
"ExternalID": "20231117003",
"Year": 2023,
"Series": "HUGO",
"Status": 0,
"InvoiceType": 3,
"AdvanceType": 0,
"CorrectionType": 0,
"InvoiceNumber": "Tesztkéziszámlaszám",
"CustomerCode": "ND123",
"SzamlaDatum": "2023-11-17",
"TeljesitesDatum": "2023-11-17",
"FizMod": "Átutalás",
"EsedekessegDatum": "2023-11-17",
"Deviza": "EUR",
"AfaDatum": "2023-11-17",
"KonyvelesDatum": "2023-11-17",
"Item": [
{
"Azonosito": 1,
"Sorrend": 1,
"Tipus": 0,
"Szoveg": "TesztTétel1",
"Mennyiseg": 2,
"MennyisegEgyseg": "darab",
"NettoEgysegar": 100,
"AfaAnalitika1": 0,
"AfaAnalitika2": 0,
"AfaKulcs": 13
},
{
"Azonosito": 2,
"Sorrend": 2,
"Tipus": 0,
"Szoveg": "TesztTétel2",
"Mennyiseg": 2,
"MennyisegEgyseg": "darab",
"NettoEgysegar": 200,
"AfaAnalitika1": 0,
"AfaAnalitika2": 0,
"AfaKulcs": 13
}
],
"Attachments": [
{
"IratTipus": 0,
"IratSorrend": 1,
"IratExternalID": "IRAT20231117003",
"Path": "E:\\temp\\Kiegeszitesek\\generalodik.txt",
"Targy": "Teszt Teszt Teszt Teszt Teszt Teszt Teszt Teszt Teszt Teszt"
}
]
}
}
]
{
"Eredmeny": [
{
"ErrorNumber": 0,
"ErrorMessage": null,
"InvoiceNumber": "2023-HUGO/000131"
}
]
}
4.) A példa hívás Részletfizetés fizetési mód, 5 db részletfizetés és Elhatárolások töltésére.
sERPaMintaAPI/invoice
[
{
"Invoice": {
"ExternalID": "202502040013",
"Year": 2025,
"Series": "HUG4",
"Status1": 0,
"Status2": 0,
"InvoiceType": 0,
"AdvanceType": 0,
"CustomerCode": "000003",
"InvoiceDate": "2025-02-04",
"PerformanceDate": "2025-02-04",
"PaymentType": "Részletfizetés",
"DueDate": "2025-02-04",
"Currency": "HUF",
"VATDate": "2025-02-04",
"AccountingDate": "2025-02-04",
"ElszFSzamKod": "311",
"Installment": [
{
"Date": "2025-02-28",
"Amount": 78740,
"Type": "Támogatás",
"Note": "Teszt Teszt Részletfizetés 1 Teszt Teszt",
"RetentionWarranty": false
},
{
"Date": "2025-03-30",
"Amount": 78740,
"Type": "Támogatás",
"Note": "Teszt Teszt Részletfizetés 2 Teszt Teszt",
"RetentionWarranty": false
},
{
"Date": "2025-04-30",
"Amount": 78740,
"Type": "Támogatás",
"Note": "Teszt Teszt Részletfizetés 3 Teszt Teszt",
"RetentionWarranty": false
},
{
"Date": "2025-05-30",
"Amount": 78740,
"Type": "Támogatás",
"Note": "Teszt Teszt Részletfizetés 4 Teszt Teszt",
"RetentionWarranty": false
},
{
"Date": "2025-06-30",
"Amount": 78740,
"Type": "Támogatás",
"Note": "Teszt Teszt Részletfizetés 5 Teszt Teszt",
"RetentionWarranty": false
}
],
"Item": [
{
"Item_ID": 1,
"Sequence": 1,
"Type": 1,
"ProductCode": "HUGOT",
"ProductName": "HUGO teszt termék",
"Quantity": 1,
"Unit": "db",
"NetPrice": 310000,
"VATAnalysis1": 0,
"VATAnalysis2": 0,
"VATRate": 20,
"Note": "Tétel megjegyzés",
"PrintNote": 2,
"Delimination": [
{
"Date": "2025-02-04",
"Amount": 100000
},
{
"Date": "2025-03-30",
"Amount": 100000
}
]
}
],
"Attachment": [
{
"Type": 0,
"ExternalID": "HSZIR202502040013",
"Subject": "Tárgy0001",
"Link": "https://www.progen.hu/wp-content/uploads/2022/07/progen_serpa_szorolap_A4_webre_2022-02-14.pdf"
}
]
}
}
]