Számlagenerálás
Alapok
Egy normál számla generálásának teljes példáját a következő fájl szemlélteti:
./examples/document/invoice/create_invoice_with_custom_data.php
A számla generálásához a következő lépések szükségesek:
// 1. Papír számla létrehozása (átutalással fizetendő magyar nyelvű (Ft) számla
// kiállítása mai keltezési és teljesítési dátummal, +8 nap fizetési határidővel).
$invoice = new Invoice(Invoice::INVOICE_TYPE_P_INVOICE);
// 2. Egyedi fejléc adatok hozzáadása a számlához (pl. számlakép sablon)
$invoice->getHeader()->setInvoiceTemplate(Invoice::INVOICE_TEMPLATE_8CM);
// 3. Eladói adatok hozzáadása a számlához
$invoice->setSeller(new Seller('OBER', '11111111-22222222-33333333'));
// 4. Vevő adatainak hozzáadása (kötelezően kitöltendő adatokkal)
$buyer = new Buyer('Kovacs Bt.', '2030', 'Érd', 'Tarnoki street 23.');
// a) Vevői adatok hozzáadása a számlához
$invoice->setBuyer($buyer);
// 5. Számla tétel összeállítása alapértelmezett adatokkal
// (1 db tétel 27%-os ÁFA tartalommal)
$item = new InvoiceItem('Eladó tétel 1', 10000.0);
// a) Tétel nettó értékének beállítása
$item->setNetPrice(10000.0);
// b) Tétel ÁFA értékének beállítása
$item->setVatAmount(2700.0);
// c) Tétel bruttó értékének beállítása
$item->setGrossAmount(12700.0);
// d) Tétel adatainak hozzáadása a számlához
$invoice->addItem($item);
// 6. Számla elkészítése (generálás)
$result = $agent->generateInvoice($invoice);
Elvárt és opcionális bemenetek
Számlafejléc adatok
Számlafejléc adatok | Mező | Típus | Kötelező | Alapérték |
---|---|---|---|---|
típus | invoiceType | int | igen | 1 |
keltezés dátum | issueDate | date | igen | mai nap |
teljesítés dátum | fulfillment | date | igen | mai nap |
fizetési határidő | paymentDue | date | igen | keltezés +8 nap |
fizetési mód | paymentMethod | string | igen | átutalás |
pénznem | currency | string | igen | Ft |
nyelv | language | string | igen | hu |
megjegyzés | comment | string | ||
bank név (árfolyam) | exchangeBank | string | ||
banki árfolyam | exchangeRate | string | ||
rendelésszám | orderNumber | string | ||
díjbekérőszám | proformaNumber | string | ||
helyesbített számlaszám | correctivedNumber | string | ||
logo | extraLogo | string | ||
előtag | prefix | string | ||
fizetendő korrekció | correctionToPay | double | ||
kifizetettség | paid | boolean | false | |
ÁFA árrés | profitVat | boolean | false | |
EU-s ÁFA | euVat | boolean | false | |
számla sablon | invoiceTemplate | string | SzlaMost | |
előnézeti PDF | previewPdf | boolean | false | |
előlegszámla számlaszám | prePaymentInvoiceNumber | string |
Számla eladói adatok
Számla eladói adatok | Mező | Típus | Kötelező | Alapérték |
---|---|---|---|---|
bank | bank | string | ||
bankszámlaszám | bankAccount | string | ||
aláíró neve | signatoryName | string | ||
e-mail válaszcím | emailReplyTo | string | ||
e-mail tárgy | emailSubject | string | ||
e-mail tartalma | emailContent | string |
Számla vevői adatok
Számla vevői adatok | Mező | Típus | Kötelező | Alapérték |
---|---|---|---|---|
azonosító | id | string | ||
név | name | string | igen | |
ország | country | string | ||
irányítószám | zipCode | string | igen | |
város | city | string | igen | |
cím | address | string | igen | |
e-mail cím | email | string | ||
küldünk-e e-mail | sendEmail | boolean | true | |
adószám | taxNumber | string | ||
csoportazonosító | groupIdentifier | string | ||
EU adószám | taxNumberEU | string | ||
postázási név | postalName | string | ||
postázási ország | postalCountry | string | ||
postázási irsz. | postalZip | string | ||
postázási város | postalCity | string | ||
postázási cím | postalAddress | string | ||
főkönyvi adatok | ledgerData | LedgerData | ||
aláíró neve | signatoryName | string | ||
telefonszám | phone | string | ||
megjegyzés | comment | string |
Számla vevői főkönyvi adatok
Számla vevői főkönyvi adatok | Mező | Típus | Kötelező | Alapérték |
---|---|---|---|---|
vevő azonosító | buyerId | string | ||
könyvelés dátum | bookingDate | date | igen | |
főkönyvi szám | buyerLedgerNumber | string | ||
folyamatos teljesítés | continuedFulfillment | boolean | igen | false |
elszámolási időszak kezdete | settlementPeriodStart | date | ||
elszámolási időszak vége | settlementPeriodEnd | date |
Számlatétel adatok
Számlatétel adatok | Mező | Típus | Kötelező | Alapérték |
---|---|---|---|---|
azonosító | id | string | ||
megnevezés | name | string | igen | |
mennyiség | quantity | double | igen | |
mennyiségi egység | quantityUnit | string | igen | |
nettó egységár | netUnitPrice | double | igen | |
ÁFA kulcs | vat | string | igen | |
árrés ÁFA alap | priceGapVatBase | double | ||
nettó érték | netPrice | double | igen | |
ÁFA érték | vatAmount | double | igen | |
bruttó érték | grossAmount | double | igen | |
megjegyzés | comment | comment | ||
adattörlő kód darabszáma | dataDeletionCode | integer |
Számlatétel főkönyvi adatok
Számlatétel főkönyvi adatok | Mező | Típus | Kötelező | Alapérték |
---|---|---|---|---|
Árbevétel főkönyvi szám | revenueLedgerNumber | string | ||
Árbevétel fők önyvi szám | vatLedgerNumber | string | ||
Gazdasági esemény típus | economicEventType | string | ||
ÁFA gazdasági esemény típus | vatEconomicEventType | string | ||
Számla tétel elszámolási időszak kezdete | settlementPeriodStart | date | ||
Számla tétel elszámolási időszak vége | settlementPeriodEnd | date |