5 steps to create your own UBL invoice

Discover how you can create your own UBL invoice with these 5 easy steps (requires technical knowledge). For those not technically skilled, we recommend reading the following article.

Creating your own UBL invoice

The sudden change to e-invoicing can be difficult, especially in a short amount of time. Some countries for example obligate companies to send their sales invoices in an e-invoice format (UBL invoice) to government agencies.

Most companies, however, have no idea where to start with these new developments. In case you are one of those companies, we're happy to assist you with global e-invoicing compliance.

However, in the case that you are technologically skilled and want to create your own UBL invoices, we recommend thoroughly reading the 5 steps below.

For Large Enterprises & Software Providers: Want more information about UBL invoicing? Or do you want to automatize your invoicing process? Schedule a free demo with one of our e-invoicing experts.

ubl invoice example flow of e-invoicing of sales invoices with Storecove
The delivery methods of sending an UBL invoice with Storecove

1. Version of the UBL invoice

Before anything else, it's important to know that every European country has its own interpretation of the UBL invoice standard.

For example: in the Netherlands, we work with the UBL version 2.1 ("UBL-SI"). If you are a Dutch company with customers outside of the Netherlands, there is little chance that your foreign customers can process a UBL-SI file.

If this is the case, you can easily adjust the UBL format to the settings of that specific country (for example E-FFF for Belgium).

It is recommended to send the generic European UBL version to foreign customers, not UBL-SI. It doesn't matter if you are a Dutch, English, Swedish, German, Spanish or Danish country. All countries can apply this same method.

Creating an ubl invoice for e-invoicing with Peppol.

2. Tools for XML

UBL is a very complicated XML format. It's not recommended to build a DOM document yourself as it needs to be created element by element.

Use the XSD to generate the Java classes with xjc. Instead. If you do not use Java, you can try to connect with XSD tools. XSD is the generic version, but it can also be used for UBL-SI.

View this Excel file for an overview of which elements you should and should not use - and what these elements signify individually.

How to create UBL invoice with XML

3. Know the destination of the UBL invoice

It's important to know the destination of the UBL invoice. UBL is a standard document, but there are still some dialects and interpretations within this standard. There are several things you need to take into account:

Embedding the PDF in the UBL.

The UBL invoice has the option to embed the PDF in Base64 format. Some accounting packages also expect this, as it's not possible to attach the PDF file as a separate attachment.

Other packages, on the other hand, are not ready for a UBL that large. In that case, they cannot process the UBL invoice at all. Sometimes the bookkeeping package processes the PDF from the UBL ánd from the mail, which leads to two PDFs with the booking proposal.

If the UBL and PDF are both attached to the email, make sure they have the same file name. Only the extension should be different.

The subject of the email.

Accounting packages use the subject to route the invoice. For example, some packages indicate that it involves a purchase invoice by including "[INK]". As a result, the UBL invoice ends up in the right accounting spot.

Therefore, it's important to know the destination of the UBL invoice, so that this can be taken into account when generating the UBL and e-mail.

You can determine the destination of the UBL invoice by selecting the accounting package on your website to which the e-invoice will be sent.

Sending UBL on the Peppol Network

4. Bounce Management

More and more customers are setting up special email addresses to receive invoices. These emails end up directly in the customer's accounts - or not.

If there's a problem with the email or the UBL, the SMTP server will reject the mail and a hard 'sending failed' bounce will occur immediately. It's also possible that the accounting package does receive the mail, but cannot process it.

The accounting package will then send a bounce mail to the MAIL FROM address of the SMTP envelope (soft bounce).

It's important to process both soft and hard bounces. This will prevent the invoice from appearing unpaid, as they never arrived.

Bounce mail when creating UBL invoices

5. Whitelists

Some accounting packages apply to whitelist to the MAIL FROM address of the SMTP envelope and/or to the address in the 'From header' of the mail itself.

If you haven't agreed on a generic whitelisting with bookkeeping packages, you must point out to your customer(s) that whitelisting may be necessary. The customer then needs to set this up himself in the accounting package.

Using an international e-invoicing platform

Eventually, a good UBL invoice has quite some requirements. However, if you want to save yourself some trouble, you can also use Storecove to send your UBL invoices safely.

Especially if you need to send your invoices to other countries, we convert your invoice format to the format required by the receiver.

Our simple connection lets your business quickly comply with the latest e-invoicing regulations. No need to purchase multiple subscriptions from different suppliers. When you connect once, you connect to all.

More information about creating UBL invoices

Do you have any questions? Please contact us via +31 202 611 791 or helpdesk@storecove.nl.

Read also:


Subscribe to our Newsletter

* indicates required