Skip to content
Log in

JSON-Rechnungsfelder zu Facturae XML (3.2.2)

Diese Anleitung beschreibt die Zuordnung der B2Brouter Invoice API-Felder und der entsprechenden EN 16931 Business Terms (BT) zu XML-Pfaden in Facturae 3.2.2. Der Übersichtlichkeit halber werden XPaths ohne Namespace-Präfixe dargestellt.

BTBusiness TermAPI-Feld (B2Brouter)Facturae XPath
BT-1Rechnungsnummerinvoice.numberInvoices/Invoice/InvoiceHeader/InvoiceNumber
Rechnungsserieinvoice.series_codeInvoices/Invoice/InvoiceHeader/InvoiceSeriesCode
Dokumenttyp(abgeleitet)Invoices/Invoice/InvoiceHeader/InvoiceDocumentType
Rechnungsklasse(abgeleitet)Invoices/Invoice/InvoiceHeader/InvoiceClass
BT-2Ausstellungsdatuminvoice.dateInvoices/Invoice/InvoiceIssueData/IssueDate
BT-7Leistungsdatuminvoice.tax_point_date (bevorzugt) oder invoice.delivery_date (Fallback)Invoices/Invoice/InvoiceIssueData/OperationDate
BT-5Währunginvoice.currencyInvoices/Invoice/InvoiceIssueData/InvoiceCurrencyCode
Spracheinvoice.languageInvoices/Invoice/InvoiceIssueData/LanguageName
Wechselkursinvoice.exchange_rateInvoices/Invoice/InvoiceIssueData/ExchangeRateDetails/ExchangeRate
Wechselkursdatuminvoice.exchange_dateInvoices/Invoice/InvoiceIssueData/ExchangeRateDetails/ExchangeRateDate
BT-22Hinweis (Header)invoice.extra_infoInvoices/Invoice/AdditionalData/InvoiceAdditionalInformation
Rechtshinweiseinvoice.legal_literalsInvoices/Invoice/LegalLiterals/LegalReference

Hinweise:

  • ExchangeRateDetails wird nur ausgegeben, wenn die Rechnungswährung von EUR abweicht. exchange_rate und exchange_date können über die API gesetzt werden; wenn nicht angegeben, werden sie aus den Konto-/Systemeinstellungen abgeleitet.
  • Wenn sowohl tax_point_date als auch delivery_date vorhanden sind, wird delivery_date an InvoiceAdditionalInformation angehängt.
  • Mehrere Felder werden in InvoiceAdditionalInformation zusammengefasst (siehe Zusätzliche Informationsfelder).
BTBusiness TermAPI-Feld (B2Brouter)Facturae XPath
BT-9Fälligkeitsdatuminvoice.due_dateInvoices/Invoice/PaymentDetails/Installment/InstallmentDueDate
Ratenbetrag(berechnet).../Installment/InstallmentAmount
BT-81Zahlungsmittelinvoice.payment_method.../Installment/PaymentMeans
BT-82Zahlungsmitteltextinvoice.payment_method_text.../Installment/CollectionAdditionalInformation
BT-84Bankverbindung Verkäufer (IBAN)invoice.bank_account.iban.../Installment/AccountToBeCredited/IBAN
BT-86Bankverbindung Verkäufer (BIC)invoice.bank_account.bic.../Installment/AccountToBeCredited/BIC
BT-84Bankverbindung Verkäufer (Nummer, kein IBAN)invoice.bank_account.number.../Installment/AccountToBeCredited/AccountNumber
BT-91Bankverbindung Käufer (IBAN, Lastschrift)invoice.contact_iban.../Installment/AccountToBeDebited/IBAN
Bankverbindung Käufer (Nummer, kein IBAN)invoice.contact_bank_account_number.../Installment/AccountToBeDebited/AccountNumber
Bankverbindung Käufer (BIC, Lastschrift)invoice.contact_bic.../Installment/AccountToBeDebited/BIC
BT-10Käuferreferenzinvoice.buyer_reference.../Installment/DebitReconciliationReference
Zahlungsabgleichsreferenzinvoice.payment_reconciliation_ref.../Installment/PaymentReconciliationReference

Hinweise:

  • PaymentDetails/Installment wird nur ausgegeben, wenn Zahlungskonditionen definiert sind.

Kaufmännische Referenzen auf Header-Ebene (InvoiceIssueData):

BTBusiness TermAPI-Feld (B2Brouter)Facturae XPath
BT-13Bestellreferenzinvoice.ponumberInvoices/Invoice/InvoiceIssueData/ReceiverTransactionReference
BT-11Dateireferenzinvoice.file_referenceInvoices/Invoice/InvoiceIssueData/FileReference
Vertragsreferenz des Empfängersinvoice.receiver_contract_referenceInvoices/Invoice/InvoiceIssueData/ReceiverContractReference

Rechnungszeitraum (Header):

BTBusiness TermAPI-FeldFacturae XPath
BT-73Beginn Rechnungszeitrauminvoice.invoicing_period_startInvoices/Invoice/InvoiceIssueData/InvoicingPeriod/StartDate
BT-74Ende Rechnungszeitrauminvoice.invoicing_period_endInvoices/Invoice/InvoiceIssueData/InvoicingPeriod/EndDate

Korrekturrechnungen (berichtigte Rechnungen):

BTFeldAPI-FeldFacturae XPath
Methode(abgeleitet aus invoice.amended_number)Invoices/Invoice/InvoiceHeader/Corrective/CorrectionMethod
Methodenbeschreibung(abgeleitet).../Corrective/CorrectionMethodDescription
Grundcodeinvoice.amend_reason (Standard: '16').../Corrective/ReasonCode
Grundbeschreibung(abgeleitet aus amend_reason-Übersetzung).../Corrective/ReasonDescription
Zusätzliche Grundbeschreibunginvoice.extra_info.../Corrective/AdditionalReasonDescription
BT-25Nummer der korrigierten Rechnunginvoice.amended_number.../Corrective/InvoiceNumber (+ .../InvoiceSeriesCode falls zutr.)
BT-26Datum der korrigierten Rechnunginvoice.amended_date.../Corrective/InvoiceIssueDate (nur 3.2.2)
Beginn Steuerzeitrauminvoice.amended_invoicing_period_start.../Corrective/TaxPeriod/StartDate
Ende Steuerzeitrauminvoice.amended_invoicing_period_end.../Corrective/TaxPeriod/EndDate

Hinweise:

  • CorrectionMethod wird berechnet: '03' wenn amended_number == '?', sonst '02'.

Zuordnung der Parteien (ausgestellte Rechnung)

Section titled “Zuordnung der Parteien (ausgestellte Rechnung)”

Bei einer empfangenen Rechnung sind SellerParty und BuyerParty zu vertauschen.

BTBusiness TermAPI-FeldFacturae XPath
BT-27Name des Verkäufersaccount.nameParties/SellerParty/LegalEntity/CorporateName (oder Individual/Name + FirstSurname)
BT-31USt-IdNr. des Verkäufersaccount.tin_valueParties/SellerParty/TaxIdentification/TaxIdentificationNumber
Parteiidentifikationinvoice.party_identificationParties/SellerParty/PartyIdentification
BT-35Straße des Verkäufersaccount.addressParties/SellerParty/LegalEntity/AddressInSpain/Address (oder OverseasAddress/Address)
BT-38PLZ des Verkäufersaccount.postalcodeParties/SellerParty/LegalEntity/AddressInSpain/PostCode
BT-37Stadt des Verkäufersaccount.cityParties/SellerParty/LegalEntity/AddressInSpain/Town
BT-39Provinz des Verkäufersaccount.provinceParties/SellerParty/LegalEntity/AddressInSpain/Province
BT-40Land des Verkäufersaccount.countryParties/SellerParty/LegalEntity/AddressInSpain/CountryCode (ISO3)
BT-43E-Mail des Verkäufersaccount.emailParties/SellerParty/LegalEntity/ContactDetails/ElectronicMail
BT-42Telefon des Verkäufersaccount.phoneParties/SellerParty/LegalEntity/ContactDetails/Telephone
Website des Verkäufersaccount.websiteParties/SellerParty/LegalEntity/ContactDetails/WebAddress
BT-41Ansprechpartner Verkäuferaccount.contact_personParties/SellerParty/LegalEntity/ContactDetails/ContactPersons
BTBusiness TermAPI-FeldFacturae XPath
BT-44Name des Käufersinvoice.contact.nameParties/BuyerParty/LegalEntity/CorporateName (oder Individual/...)
BT-48USt-IdNr. des Käufersinvoice.contact.tin_valueParties/BuyerParty/TaxIdentification/TaxIdentificationNumber
BT-50Straße des Käufersinvoice.contact.addressParties/BuyerParty/LegalEntity/AddressInSpain/Address
BT-53PLZ des Käufersinvoice.contact.postalcodeParties/BuyerParty/LegalEntity/AddressInSpain/PostCode
BT-52Stadt des Käufersinvoice.contact.cityParties/BuyerParty/LegalEntity/AddressInSpain/Town
BT-54Provinz des Käufersinvoice.contact.provinceParties/BuyerParty/LegalEntity/AddressInSpain/Province
BT-55Land des Käufersinvoice.contact.countryParties/BuyerParty/LegalEntity/AddressInSpain/CountryCode
BT-58E-Mail des Käufersinvoice.contact.emailParties/BuyerParty/LegalEntity/ContactDetails/ElectronicMail
BT-57Telefon des Käufersinvoice.contact.phoneParties/BuyerParty/LegalEntity/ContactDetails/Telephone
BT-56Ansprechpartner Käuferinvoice.contact.contact_personParties/BuyerParty/LegalEntity/ContactDetails/ContactPersons
Weitere Kontaktdateninvoice.contact_additional_detailsParties/BuyerParty/LegalEntity/ContactDetails/AdditionalContactDetails

Hinweise:

  • Verwende AddressInSpain oder OverseasAddress je nach Land.
  • PartyIdentification wird nur ausgegeben, wenn der Wert eine numerische Zeichenkette mit bis zu 10 Stellen ist.

Verwaltungszentren (Spanischer öffentlicher Sektor)

Section titled “Verwaltungszentren (Spanischer öffentlicher Sektor)”

Für die Rechnungsstellung an spanische Behörden (FACe) können Verwaltungszentren mit DIR3-Codes angegeben werden:

FeldAPI-FeldFacturae XPath
Buchhaltungsstelleinvoice.ocParties/BuyerParty/AdministrativeCentres/AdministrativeCentre[RoleTypeCode='01']/CentreCode
Verwaltungsorganinvoice.ogParties/BuyerParty/AdministrativeCentres/AdministrativeCentre[RoleTypeCode='02']/CentreCode
Bearbeitungseinheitinvoice.utParties/BuyerParty/AdministrativeCentres/AdministrativeCentre[RoleTypeCode='03']/CentreCode
Vorschlagendes Organinvoice.opParties/BuyerParty/AdministrativeCentres/AdministrativeCentre[RoleTypeCode='04']/CentreCode
Lieferort-IDinvoice.delivery_location_idWird als CentreCode für Rolle 04 verwendet, wenn op nicht gesetzt ist
Namen Zentrum 1–3invoice.cin1_nameinvoice.cin3_nameAdministrativeCentre[RoleTypeCode='01'-'03']/Name
Name Zentrum 4invoice.cin4_nameAdministrativeCentre[RoleTypeCode='04']/Name

Hinweise:

  • Jedes Verwaltungszentrum enthält auch die Adress- und Kontaktdaten der Käuferpartei.
  • Lieferadressfelder (delivery_address, delivery_city, delivery_province, delivery_postalcode) befüllen die Adresse des Zentrums mit RoleTypeCode 04.
BTBusiness TermAPI-FeldFacturae XPath
BT-110MwSt.-Gesamtbetrag (Ausgaben)(berechnet)Invoices/Invoice/InvoiceTotals/TotalTaxOutputs + Details in Invoices/Invoice/TaxesOutputs/Tax
Einbehalt (Header)invoice.amounts_withheld_reason, invoice.withheld_percentInvoices/Invoice/InvoiceTotals/AmountsWithheld/(WithholdingReason|WithholdingRate|WithholdingAmount)
Bruttobetrag vor Steuern(berechnet)Invoices/Invoice/InvoiceTotals/TotalGrossAmountBeforeTaxes
BT-92Rabattbetrag (Header)allowance_charges_attributes[]{allowance_charge_indicator: "allowance", amount: X}Invoices/Invoice/InvoiceTotals/GeneralDiscounts/Discount/DiscountAmount
BT-94Rabattprozentsatz (Header)allowance_charges_attributes[]{allowance_charge_indicator: "allowance", percentage: X}Invoices/Invoice/InvoiceTotals/GeneralDiscounts/Discount/DiscountRate
BT-97Rabattgrund (Header)allowance_charges_attributes[]{allowance_charge_indicator: "allowance", description: "..."}Invoices/Invoice/InvoiceTotals/GeneralDiscounts/Discount/DiscountReason
BT-99Zuschlagsbetrag (Header)allowance_charges_attributes[]{allowance_charge_indicator: "charge", amount: X}Invoices/Invoice/InvoiceTotals/GeneralSurcharges/Charge/ChargeAmount
BT-104Zuschlagsgrund (Header)allowance_charges_attributes[]{allowance_charge_indicator: "charge", description: "..."}Invoices/Invoice/InvoiceTotals/GeneralSurcharges/Charge/ChargeReason
BT-113Vorauszahlungsbetraginvoice.payments_on_accountInvoices/Invoice/InvoiceTotals/PaymentsOnAccount/PaymentOnAccount/PaymentOnAccountAmount
Rechnungsgesamtbetrag (zahlbar)(berechnet)Invoices/Invoice/InvoiceTotals/InvoiceTotal
Ausstehender Betrag(berechnet)Invoices/Invoice/InvoiceTotals/TotalOutstandingAmount
Vollstreckbarer Betrag(berechnet)Invoices/Invoice/InvoiceTotals/TotalExecutableAmount

Hinweise:

  • TaxesOutputs/Tax/TaxTypeCode identifiziert die Steuer (z. B. 01 für MwSt.).

Alle nachfolgenden Attribute sind Eigenschaften von Objekten in: invoice.invoice_lines_attributes[].

BTBusiness TermAPI-Feld (Position)Facturae XPath
BT-153Artikelname/-beschreibungdescriptionInvoices/Invoice/Items/InvoiceLine/ItemDescription
BT-129Berechnete Mengequantity.../Quantity
BT-130Maßeinheitunit.../UnitOfMeasure
BT-146Einzelpreis (netto)price.../UnitPriceWithoutTax
BT-131Positionsbetragextension_amount (oder berechnet).../GrossAmount (oder .../TotalCost)
BT-155Artikelnummer (Verkäufer)article_code.../ArticleCode (nur Facturae 3.2)
BT-154Positionshinweisnotes.../AdditionalLineItemInformation
BT-132Käuferzeilenreferenzsequence_number.../SequenceNumber
BT-128Transaktionsreferenz Empfängerponumber (Fallback: invoice.ponumber).../ReceiverTransactionReference
Dateireferenzfile_reference (Fallback: invoice.file_reference).../FileReference
Dateidatumfile_date.../FileDate
Lieferscheinnummerdelivery_note_number (Fallback: invoice.delivery_note_number).../DeliveryNotesReferences/DeliveryNote/DeliveryNoteNumber
Lieferscheindatumdelivery_note_date (Fallback: invoice.delivery_note_date).../DeliveryNotesReferences/DeliveryNote/DeliveryNoteDate
Vertragsreferenz Aussteller(aus invoice.contract_number).../IssuerContractReference
Vertragsdatum Ausstellerinvoice.issuer_contract_date.../IssuerContractDate
Transaktionsreferenz Ausstellerissuer_transaction_reference.../IssuerTransactionReference
Transaktionsdatum Ausstellerissuer_transaction_date.../IssuerTransactionDate
Vertragsreferenz Empfängerreceiver_contract_reference (Fallback: invoice.receiver_contract_reference).../ReceiverContractReference
Vertragsdatum Empfängerreceiver_contract_date.../ReceiverContractDate
Transaktionsdatum Empfängerreceiver_transaction_date.../ReceiverTransactionDate
BT-134Beginn Abrechnungszeitraum (Position)invoicing_period_start.../LineItemPeriod/StartDate
BT-135Ende Abrechnungszeitraum (Position)invoicing_period_end.../LineItemPeriod/EndDate
BT-151Steuertypcode (je Position)taxes_attributes[].category.../TaxesOutputs/Tax/TaxTypeCode
BT-152Steuerprozentsatz (je Position)taxes_attributes[].percent.../TaxesOutputs/Tax/TaxRate
BT-120Steuerbefreiungsgrundtaxes_attributes[].comment.../SpecialTaxableEvent/SpecialTaxableEventReason
Steuerbefreiungscode(abgeleitet: '02' wenn Kategorie NS, sonst '01').../SpecialTaxableEvent/SpecialTaxableEventCode
BT-136Rabattbetrag (Position)allowance_charges_attributes[]{allowance_charge_indicator: "allowance", amount: X}.../DiscountsAndRebates/Discount/DiscountAmount
BT-138Rabattprozentsatz (Position)allowance_charges_attributes[]{allowance_charge_indicator: "allowance", percentage: X}.../DiscountsAndRebates/Discount/DiscountRate
BT-139Rabattgrund (Position)allowance_charges_attributes[]{allowance_charge_indicator: "allowance", description: "..."}.../DiscountsAndRebates/Discount/DiscountReason
BT-141Zuschlagsbetrag (Position)allowance_charges_attributes[]{allowance_charge_indicator: "charge", amount: X}.../Charges/Charge/ChargeAmount
BT-144Zuschlagsgrund (Position)allowance_charges_attributes[]{allowance_charge_indicator: "charge", description: "..."}.../Charges/Charge/ChargeReason

Hinweise:

  • Mehrere Felder auf Positionsebene werden in AdditionalLineItemInformation zusammengefasst: article_code2, classification_code, article_code_buyer, contact_reference.

Mehrere Felder, die in UBL/CII eigene XML-Elemente haben, werden in Facturae in InvoiceAdditionalInformation zusammengefasst. Sie werden an invoice.extra_info angehängt:

BTAPI-FeldPräfix in AdditionalInformation
BT-14invoice.sales_order_reference”Sales order reference:“
BT-15invoice.receiving_advice_reference”Receiving advice reference:“
BT-20invoice.payment_terms”Payment terms:“
BT-83invoice.remittance_information”Remittance information:“
BT-90invoice.bank_assigned_creditor_reference”Bank assigned creditor reference:“
BT-89invoice.mandate_reference_identifier”Mandate reference identifier:“
BT-19invoice.buyer_accounting_reference”Buyer accounting reference:“
BT-72invoice.delivery_date (wenn tax_point_date ebenfalls vorhanden)“Delivery date:“

Für Rechnungsfactoring (Forderungsabtretung) befüllen folgende Felder den Block FactoringAssignmentData:

FeldAPI-FeldFacturae XPath
Steuer-ID des Abtretungsempfängersinvoice.fa_taxcodeFactoringAssignmentData/Assignee/TaxIdentification/TaxIdentificationNumber
Name des Abtretungsempfängersinvoice.fa_nameFactoringAssignmentData/Assignee/LegalEntity/CorporateName
Adresse des Abtretungsempfängersinvoice.fa_addressFactoringAssignmentData/Assignee/LegalEntity/AddressInSpain/Address
PLZ des Abtretungsempfängersinvoice.fa_postcodeFactoringAssignmentData/Assignee/LegalEntity/AddressInSpain/PostCode
Stadt des Abtretungsempfängersinvoice.fa_townFactoringAssignmentData/Assignee/LegalEntity/AddressInSpain/Town
Provinz des Abtretungsempfängersinvoice.fa_provinceFactoringAssignmentData/Assignee/LegalEntity/AddressInSpain/Province
Land des Abtretungsempfängersinvoice.fa_countryFactoringAssignmentData/Assignee/LegalEntity/AddressInSpain/CountryCode
Zahlungsfälligkeitsdatuminvoice.fa_duedateFactoringAssignmentData/PaymentDetails/Installment/InstallmentDueDate
Zahlungsbetraginvoice.fa_importFactoringAssignmentData/PaymentDetails/Installment/InstallmentAmount
Zahlungsmethodeinvoice.fa_payment_methodFactoringAssignmentData/PaymentDetails/Installment/PaymentMeans
IBAN des Abtretungsempfängersinvoice.fa_ibanFactoringAssignmentData/PaymentDetails/Installment/AccountToBeCredited/IBAN
BIC des Abtretungsempfängersinvoice.fa_bicFactoringAssignmentData/PaymentDetails/Installment/AccountToBeCredited/BIC
Factoringklauselninvoice.fa_clausesFactoringAssignmentData/FactoringAssignmentClauses
Zusätzliche Informationeninvoice.fa_infoFactoringAssignmentData/Assignee/LegalEntity/ContactDetails/AdditionalContactDetails
Bankleitzahlinvoice.fa_bank_codeFactoringAssignmentData/PaymentDetails/Installment/AccountToBeCredited/BankCode