B2Bi
E-report Income Invoices B2Bi in France
API related POST commands
| API command | Required | Result | More info and example |
|---|---|---|---|
| Create invoice : Post v1/order | yes | Document created in Billit, appears in income section | https://docs.billit.be/docs/content-requirements-pa |
| Send invoice Post v1/order/commands/send | no | Only to activate when you want to send the document to the customer | https://docs.billit.be/docs/send-sales-invoice-france |
How will Billit know it is B2Bi ?
| Property in Customer Segment | Description |
|---|---|
| VATNumber | Must be filled with a VAT number |
| Country of VAT | Country of counter party must have a non-French VAT-number |
| VATLiable | is by default true when VAT number is filled. setting it to true is can be set but is not mandatory as this is the default value |
Types of e-reports in case of B2Bi
| Content | Content |
|---|---|
| Transactions | Summary of invoice or credit note |
| Payments | Information about payment |
What needs to be e-reported in case of B2Bi
Short summary of the main parameters:
| What | Income | Expenditure |
|---|---|---|
| Transaction | yes | yes |
| Payment | depends | no |
*1 Most common decision elements are:
- French VAT due on collection (TVA sur les encaissements)? → Flux 10 payment reporting required
- No French VAT due (export, intra-Community supply, place of supply outside France, etc.) → No Flux 10 payment reporting
For more detailed information on the conditions:
- Check French tax legislation documentation
- Check with your tax consultant
In case of transfer of ownership for the delivery of goods for export :
- Transport to the destination country may be carried out by the seller as part of an international stock transfer, with the sale and transfer of ownership of the goods taking place once they arrive at their destination.
- In this case, the sale and transfer of ownership take place on the purchaser's territory and fall outside the scope of international B2B sales e-reporting.
Information about the VAT when no positive Tax Amount
The correct tax information is very important. When the tax amount is not positive, then a specific VAT code is applicable.
The most simple method is to include the ventilation code in the API-content.
| Field | Description | Example |
|---|---|---|
| OrderDirection | Indicating it is expenditure | "OrderDirection": income" |
| Ventilation code | Include it when VAT amount is 0, not applicable, exempt | "VentilationCode": "51" |
| Payment | If the invoice is prepaid, include payment information (alternative : update it as a separate payment message, more info see separate chapter) | "Paid": true |
| Totals of the invoice | When no totals are included, Billit calculates the totals. If totals are included, Billit includes the totals delivered. |
The ventilation code triggers Tax information, including :
- Taxcategory/Code
- Taxcategory/TaxExemptionReason
More information on the ventilation codes for France: https://docs.billit.be/docs/tax-codes-pa-france .
Sample API content for B2Bi
Below examples of B2Bi content (reporting of transactions)
{
"OrderNumber": "524558888",
"OrderDate": "2026-05-6T00:00:00",
"ExpiryDate": "2026-06-04T00:00:00",
"OrderType": "Invoice",
"OrderDirection": "Income",
"BusinessProcessType": "B1", //mandatory for B2Bi E-reporting
"Paid": false, // at the moment of creation, no payment was received
"Comments": "additional info",
"Currency": "EUR",
"Customer": {
"Name": "Billit",
"VATNumber": "BE0563846944", // indicating customer is VAT liable
"PartyType": "Customer", //Income : must be customer
"VATLiable": true, // confirms company is VAT liable
"Addresses": [
{
"AddressType": "InvoiceAddress",
"Name": "Billit",
"Street": "Oktrooiplein",
"StreetNumber": "1a",
"City": "Ghent",
"Zipcode" : "9001",
"Box": "301",
"CountryCode": "BE" //other country code then FR
}
]
},
"OrderLines": [
{
"Quantity": 1.00000,
"UnitPriceExcl": 400.00000,
"Description": "just a single line",
"DescriptionExtended": "some extended description",
"VATPercentage": 0.00,
}
],
}{
"OrderNumber": "524558888",
"OrderDate": "2026-05-6T00:00:00",
"ExpiryDate": "2026-06-04T00:00:00",
"OrderType": "Invoice",
"OrderDirection": "Income",
"BusinessProcessType": "B1", //mandatory for B2Bi E-reporting
"Paid": false, // at the moment of creation, no payment was received
"Comments": "additional info",
"Currency": "EUR",
"VentilationCode": "22",
"Customer": {
"Name": "Billit",
"VATNumber": "BE0563846944", // indicating customer is VAT liable
"PartyType": "Customer", //Income : must be customer
"VATLiable": true, // confirms company is VAT liable
"Addresses": [
{
"AddressType": "InvoiceAddress",
"Name": "Billit",
"Street": "Oktrooiplein",
"StreetNumber": "1a",
"City": "Ghent",
"Zipcode" : "9001",
"Box": "301",
"CountryCode": "BE" //other country code then FR
}
]
},
"OrderLines": [
{
"Quantity": 1.00000,
"UnitPriceExcl": 400.00000,
"Description": "just a single line",
"DescriptionExtended": "some extended description",
"VATPercentage": 0.00,
}
],
}Updated 13 days ago
Did this page help you?