e-invoicing is rapidly being adopted in many jurisdictions. Invoice Ninja has supported UBL format invoices for some time and now we also support a range of e-invoice formats including direct delivery of e-invoices over the PEPPOL network.
All of the supported e-invoice standards can be downloaded directly after creating a standard invoice in Invoice Ninja. In some jurisdictions you are able to forward the e-invoice directly to your customer, however in some regions (ie, Italy) the invoice is sent through the government and then forwarded onto the customer. This introduces a number of complexities including both parties being registered with the government body (SDI for Italy). If you are in one of these jurisdictions, you will need to start the process (if you have not already) in acquiring a government routing ID.
The list of supported e-invoice formats include:
ALPHA RELEASE - NOT FOR PRODUCTION USE
Invoice Ninja will be rolling out a PEPPOL access point which will be available for both self hosted and hosted users to route their e-invoices through the PEPPOL network.
Each particular jurisdiction has a specific set of fields which MUST be populated in order for an e-invoice to be validated. For example, in Germany a Payment Means field is required within the e-invoice. What is this? This is the sending parties paymnet details, ie IBAN + financial account meta data such as bank, FIB etc. Without this data the e-invoice cannot be generated or sent. As you onboard through the application you will have the opportunity to validate your data to ensure delivery of your e-invoices.
We will be sending out notifications to our hosted users for the steps required for onboarding in their particular region.
Self Hosted users will be proxying their e-invoices through our hosted platform. What does this mean? In order to send your e-invoices you'll need to register your service with Invoice Ninja and we will create your legal entity id for you. Your system will then route e-invoices through our system as required. For security and data privacy, the service will only ever proxy the data that is sent, we will never store the data that is sent.
There are a few important considerations with e-invoicing.
Yes, in an upcoming version we will also support the delivery of e-invoicing via the peppol network directly into your company.
(Self hosted users will receive these via WebHook)
If you are sending an e-invoice to a government body, then you must include in the object
AccountingSupplierParty > CustomerAssignedAccountID
This is the ID of the department within the government that the e-invoice will be routed to
No additional requirements, when your legal entity id is created this is automatically sync'd with HERMES
The payment means contains information on how the seller wishes to be paid. Use the Payment Means you must have at least ONE payment means that is a Credit Transfer type
<cac:PaymentMeans>
<cbc:PaymentMeansCode>30</cbc:PaymentMeansCode> <!-- code from payment means code list Credit Transfer-->
<cac:PayeeFinancialAccount>
<cbc:ID>DE89370400440532013000</cbc:ID> <!-- IBAN CODE -->
<cac:FinancialInstitutionBranch>
<cbc:ID>DEUTDEMMXXX</cbc:ID> <!-- BIC CODE -->
</cac:FinancialInstitutionBranch>
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>
The payment means contains information on how the seller wishes to be paid. Use the Payment Means list to determine the correct code required. For example, to display your bank account details the following would be required
<cac:PaymentMeans>
<cbc:PaymentMeansCode>30</cbc:PaymentMeansCode> <!-- code from payment means code list Credit Transfer-->
<cac:PayeeFinancialAccount>
<cbc:ID>DE89370400440532013000</cbc:ID> <!-- IBAN CODE -->
<cac:FinancialInstitutionBranch>
<cbc:ID>DEUTDEMMXXX</cbc:ID> <!-- BIC CODE -->
</cac:FinancialInstitutionBranch>
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>
*** Government registration required ***
The payment means contains information on how the seller wishes to be paid. Use the Payment Means you must have at least ONE payment means that is a Credit Transfer type
<cac:PaymentMeans>
<cbc:PaymentMeansCode>30</cbc:PaymentMeansCode> <!-- code from payment means code list Credit Transfer-->
<cac:PayeeFinancialAccount>
<cbc:ID>DE89370400440532013000</cbc:ID> <!-- IBAN CODE -->
<cac:FinancialInstitutionBranch>
<cbc:ID>DEUTDEMMXXX</cbc:ID> <!-- BIC CODE -->
</cac:FinancialInstitutionBranch>
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>
The invoice MUST have a due date set.
If sending to a Spanish government body the property
AccountingCustomerParty > PublicIdentifiers
Must be set
No special requirements
The SIRET / 0009 identifier of the final recipient is to be included in the invoice.accountingCustomerParty.publicIdentifiers array.
No special requirements
When sending to government bodies the following property must be configured
accountingSupplierParty > party > contact >email
*** Government registration required ***
*** Government registration required ***
The county field for a Romania address must use the ISO3166-2:RO codes, e.g. "RO-AB, RO-AR". Don’t omit the country prefix!
The city field for county RO-B must be SECTOR1 - SECTOR6.
Receiver needs to be registered with Svefaktura to receive the e-invoice
Enabling ZUGFeRD is as simple as enabling e-invoicing in Settings > E-Invoice, selecting the appropriate X format you wish to generate and save! As the ZUGFeRD is very comprehensive, you can also embed the einvoice within the PDF document itself, simply toggle on the Merge E-Invoice and PDF switch and then save.
** NOTE **
The ZUGFeRD standard does not accept negative valued invoices. Historically some users may have used a negative invoice to indicate a Credit Note, this is no longer possible. Instead a dedicated Credit Note should be generated with matching POSTIVE values which reflect the credit you wish to assign.
Spanish e-invoice documents are supported and generate valid documents. these can be uploaded into the FACe system.
Italian e-invoices can be generated, however as there is no connection in the SDI as yet. This format is not currently production ready.
Romanian e-invoices can be generated, however as there is no delivery connection as yet. This format is not currently production ready.
Standard EN16931 documents can be generated and downloaded as needed.
Want to contribute? Edit this page on GitHub!