Nachdem Sie das ZUGFeRD Objekt mit Create_Invoice (VB6 und COM) bzw. CreateInvoice (VB.NET) erstellt haben moechten Sie natuerlich die Rechnungsdaten dem Objekt hinzufuegen.
Bitte beachten XRechnung:
Damit eine XRechnung korrekt vom Rechnungssteller an den Rechnungsempfänger zugestellt werden kann, muss der Rechnungsempfänger eindeutig identifiziert werden. Die Leitweg-ID dient zur eindeutigen Identifikation des Rechnungsempfängers.
In der XRechnung muss die Leitweg-ID in der Buyer Reference (BT-10 / alo.BuyerReference) angegeben werden. Für die Darstellung der elektronischen Rechnung sind laut dem XRechnung-Standard zwei Syntaxen zulässig: Universal Business Language (UBL) und UN/CEFACT Cross Industry Invoice (CII).
Zuerst koennen Sie dem Dokument allgemeine Informationen hinzufuegen:
alo.Document_Name = “RECHNUNG”
alo.Document_Type = Aloaha_ZUGFeRD.DocumentType.DocumentType_Invoice
Call alo.AddDocumentNote(“Rechnungsstellung wie mit Frau Musterfrau besprochen. Es bestehen Rabatte und Bonusvereinbarungen.”, “AAK”)
Call alo.AddDocumentNote(“Zahlbar sofort ohne Abzug”)
Call alo.AddDocumentNote(“Notiztext”, “ST3”)
Call alo.AddDocumentNote(“note”, “subjectcode”, “contentcode”)
‘Dann die Verkaeuferdaten hinzufuegen:
Call alo.WriteSeller(“Aloaha Limited”, “PBK1131”, “Pembroke”, “Helgoland”, “45, Triq Gio Felice Inglott”, “MT”, “MT1481 4406”)
Call alo.WriteSellerContactPerson(“John Doe”, “Verkauf”, “sales@aloaha.com”, “+49 541 3859 4554”, “”)
‘Es geht auch mit einzelnen Calls:
alo.SellerDepartment = “Sales”
alo.SellerName = “Aloaha Limited”
alo.SellerCity = “Pembroke”
alo.SellerAddressLine1 = “Helogland”
alo.SellerAddressLine2 = “Triq Gio Felice Inglott”
alo.SellerCountry = “MT”
alo.SellerPostCode = “PBK1131”
Call alo.AddSellerTAX(“MT324234234”, “VA”)
Call alo.AddSellerTAX(“999999999”, “FC”)
alo.SellerID = “4711”
Call alo.AddSellerGlobalID(alo.SellerID, “0021”)
‘Nun fuegen Sie die Daten des Kunden ein:
Call alo.WriteBuyer(“Aloaha Limited”, “49479”, “Osnabrueck”, “Republic Street 1”, “”, “DE”, “alo0815”, “DE 08154711”)
Call alo.WriteBuyerContactPerson(“Fred Buyer”, “Einkauf”, “info@aloaha.com”, “+49 541 3859 4554”, “+49 541 3859 4554”)
‘Wie beim Verkauefer koennen Sie auch beim Kunden die Daten in kleinen Schritten setzen.
alo.BuyerReference = “alo0815”
alo.BuyerName = “Aloaha Limited”
alo.BuyerCity = “Osnabrueck”
alo.BuyerAddressLine1 = “Republic Street 1”
alo.BuyerCountry = “DE”
alo.BuyerPostCode = “49479”
Call alo.AddBuyerTAX(“DE 08154711”, “VA”)
Call alo.AddBuyerTAX(“345353535”, “FC”)
alo.BuyerID = “0815”
Call alo.AddBuyerGlobalID(alo.BuyerID, “0021”)
‘Natuerlich muessen auch die verkauften Produkte in die Rechnung:
Call alo.AddProduct_Basic(“5”, “Tasse(n)”, “Kaffee”, “Jaja”)
‘Aber auch Zahlungsbedingungen, Rechnungsummen, usw. sind Teil einer Rechnung.
alo.AddTradePaymentTerms (“Zahlbar sofort und ohne Abzug”)
Call alo.AddTradePaymentTerms(“Zahlbar innerhalb 30 Tagen netto bis 04.07.2013, 1% Skonto innerhalb 20 Tagen bis 25.06.2013”, “20130704”, “102”)
alo.PaymentReference = “Invoice No. INV08154711”
alo.InvoiceCurrencyCode = “EUR”
Call alo.AddPaymentMeans(alo.PaymentMeansCode(Aloaha_ZUGFeRD.Payment_Means.Payment_Means_DirectDebit), “Sepa Direct Debit”, “iban”, “account name”, “sparkasse”, “bic”, “BLZ”, “Bankname”, True, “REF A-123”, “DE98ZZZ09999999999”)
Call alo.AddPaymentMeans(alo.PaymentMeansCode(Aloaha_ZUGFeRD.Payment_Means.Payment_Means_DebitTransfer_SEPA), “Ueberweisung”, “MT67 MMEB 4475 0000 0000 7504 5294 001”, “account name”, “075-045294-001”, “MMEB MTMT”, “”, “HSBC San Gwann, Malta”, False)
Call alo.AddTradeTax(“0”, “EUR”, “0”, “EUR”, “VAT”, alo.VatCategoryCode(Aloaha_ZUGFeRD.VAT_Category.VAT_Category_IntraCommunitySupply), “18”, “No Vat is to be paid on Malta because it is a supply of service made outside Malta in terms of item 2(1) of part 2 of the 3rd Schedule of the VAT Act, subject to reverse charge in the country of receipt.”)
Call alo.AddTradeTax(“3.06”, “EUR”, “170”, “EUR”, “VAT”, “S”, “18”, “”)
Call alo.AddTradeTax(“7”, “EUR”, “100”, “EUR”, “VAT”, “T”, “7”)
Call alo.AddTradePaymentTerms(“Zahlbar sofort und ohne Abzug”)
Call alo.AddTradePaymentTerms(“Zahlbar innerhalb 30 Tagen netto bis 04.07.2013, 1% Skonto innerhalb 20 Tagen bis 25.06.2013”, “20130704”, “102”)
Call alo.WriteTotals(100, 94.4, 84.4, 80, 14.4, 20, 10)
‘Nun koennen Sie das XML eportieren:
alo.SaveXML (“c:\temp\test.xml”)
‘Falls kein XML gespeichert wird liegt ein Fehler vor. Diesen koennen Sie natuerlich abfragen:
MsgBox alo.LastError
Sie moechten natuerlich auch das XML in ein PDF einbinden. Lesen Sie dazu bitte: Zusammensetzen von ZUGFeRD XML und PDF zu ZUGFeRD-Rechnung