Enabling Margin Scheme-Based Bookings
DE Differenzbesteuerung
FR taxation sur la marge
← Bookkeeping Data Creation Use Cases
This article describes how to configure the bookkeeping data generation for invoices if your business pays taxes on profit margins.
This use case description is designed to comply with Article 25a of the German Value Added Tax Act (§ 25a UStG) and assumes posting the booking data to DATEV.
Summary
JustOn Billing & Invoice Management controls the booking data creation using dedicated configurations on invoice line items, G/L account settings and global settings. The key setting to cover the current use case is the Margin Scheme
revenue recognition rule on the invoice line item, which makes the software create separate booking details for the defined margin and the applicable taxes.
These are the minimum required settings (under DATEV SKR 04):
Object | Field | Value |
---|---|---|
Global Settings | Create Bookkeeping Data |
true |
Enable Accounting in Gross Values |
true |
|
Assignment Rules - G/L Account | G/L Account |
4138 |
G/L Account 2 |
4136 |
|
Business Entity |
business entity name | |
Account | Invoice |
ON_DebtorNo |DebtorNo |
debtor account number |
Invoice Line Item | Revenue Recognition Rule |
Margin Scheme |
Margin |
margin value | |
Gross Line Item |
true |
Use Case Outline
Assume a merchant has purchased a used item for 800 €, and resells it for 1000 €, gaining a margin of 200 €.
An invoice for reselling a second-hand good under a margin scheme does not indicate the margin or the tax on the margin. It may look like this:
Title | Price | |
---|---|---|
Product margin taxation applies under Art. 25a German VAT Act |
1000,00 | |
Grand Total | 1000,00 |
Conditions
To illustrate the calculation and booking approaches, let us assume the following conditions:
- Invoice line item is marked as gross
- Invoice shows the gross price without indicating the margin or the tax
- Invoice includes note on margin taxation
- Separate bookings for the net revenue (on the margin) and the corresponding VAT
- Margin revenue bookings to the DATEV automatic account
4136
- Bookings for non-taxable turnover to the standard account
4138
Booking Accounts
The bookings are expected to be made to the following accounts:
Account name | Account no. SKR 04 |
Automatic Account | Configuration Type | Booking Detail Target Field |
---|---|---|---|---|
Revenue 0% VAT | 4138 | G/L Account | Booking Account |
|
Margin Revenue 19% VAT | 4136 | G/L Account | Booking Account |
|
Debtor | 10000 | Debtor number | Contra Booking Account |
Expected Postings
The invoice amount (1000,00) is distributed from the debtor account to:
- Revenue 0% VAT – 800,00
- Margin Revenue 19% VAT – 200,00
Posting | Debit | Credit | Posting Record | Amount |
---|---|---|---|---|
1 | 10000 | 4138 | Debtor → Revenue 0% VAT | 800,00 |
2 | 10000 | 4136 | Debtor → Margin Revenue 19% VAT | 200,00 |
Required Configuration
JustOn Billing & Invoice Management controls the booking data creation using dedicated configurations on invoice line items, G/L account settings, collective account settings and global settings. Enabling the bookkeeping data generation for the outlined use case involves the following configuration steps:
- Activating the booking detail creation
- Enabling the booking account allocation
- Preparing the required invoice line item information
- Adjusting PDF template display
In addition, your accounting may optionally require to configure booking texts, allocate cost centers or profit centers, or specify cost objects.
Activating Booking Data Creation
In order to activate the booking detail creation and enable gross value bookings, the features must be activated in the global settings.
-
Click to enter Setup, then open Custom Settings.
In Salesforce Lightning, navigate to Custom Code > Custom Settings.
In Salesforce Classic, navigate to Develop > Custom Settings.
-
Click Manage in the row of Global Settings.
- Click Edit in the Default row.
-
Select the following checkboxes:
Checkbox Description Create Bookkeeping Data
Globally enables the booking data creation Enable Accounting in Gross Values
Uses gross values when creating booking data -
Click Save.
Once enabled, the bookkeeping data is generated automatically upon invoice finalization.
Info
Once created, the booking details can no longer be modified or deleted. In case of errors, however, you can regenerate booking details for invoices.
Enabling Booking Accounts
To provide for the correct booking account allocation, you create dedicated G/L Account Assignment Rules and Collective Account settings.
Booking margin revenue and taxes according to the outlined use case requires the following booking accounts:
Account name | Account no. SKR 04 |
Configuration Type | Booking Detail Target Field |
---|---|---|---|
Revenue 0% VAT | 4138 | G/L Account | Booking Account |
Margin Revenue 19% VAT | 4136 | G/L Account | Booking Account |
Debtor | 10000 | Debtor number | Contra Booking Account |
Remember that depending on your accounting system, the booking account numbers may differ.
-
Create an Assignment Rules - G/L Account setting to book the revenue values.
To cover the outlined use case, you need the following setting:
Name G/L Account G/L Account 2 Business Entity Margin Revenue 4138 4136 business entity name For details, see Configuring G/L Account.
-
Enable the debtor account number.
Depending on your requirements, the way to define the debtor account number differs:
For customer-specific debtor numbers, you use the Account field
ON_DebtorNo
.- Navigate to the fields list of the Account object.
-
Create the following new field.
API Name Data Type Description Example Values ON_DebtorNo Text (255)
or
FormulaSpecifies the contra account number for booking details. If configured as a formula, it can determine the value based on other fields. 10000
AnotherField__c
To support collective debtors (or debtor groups), you use the Invoice field
DebtorNo
.Using a collective debtor number via the Invoice field
DebtorNo
does not require a collective account setting. Instead, you just set the intended booking account number to be transferred to the booking detail.- Navigate to the fields list of the Invoice object (
ONB2__Invoice__c
). -
Create the following new field.
API Name Data Type Description Example Values DebtorNo Text (255)
or
FormulaSpecifies the contra account number for booking details. If configured as a formula, it can determine the value based on other fields. 10000
AnotherField__c
If the field is configured as a text, you can use the ON field mechanism to have it set using values from invoice source objects. Be aware, however, that if the field is configured as a formula, the ON field mechanism will not overwrite the
DebtorNo
value.Info
When creating booking details, the Invoice field
DebtorNo
takes precedence over the Account fieldON_DebtorNo
. If the Invoice fieldDebtorNo
is empty or does not exist, JustOn Billing & Invoice Management uses the Account fieldON_DebtorNo
to setContra Booking Account
in the booking detail.
Preparing Required Invoice Line Item Information
JustOn Billing & Invoice Management writes margin bookings if
- the revenue recognition rule
Margin Scheme
is set in the invoice line item fieldRecognition Rule
- the field
Margin
of the invoice line item is set
In addition, the outlined use case requires the Gross Line Item
checkbox set true
to disable the tax deduction for the purchase price portion (total minus margin).
Furthermore, both the invoice PDF file and the e-invoice XML file must indicate that the invoice is subject to margin taxation. The Description
field is a suitable option to include this information. This text is printed into the invoice table on the PDF by default, and pasted to the e-invoice Invoice Line Note
(BT-127) and Item Description
(BT-154).
The ON field mechanism is a likely option for having these fields specified automatically on the invoice line item when generating invoices. Alternatively, you can use Salesforce flows or other automation tools.
To make use of the ON field mechanism, you set the fields ON_RecognitionRule
, ON_Margin
and ON_GrossInvoice
on the invoice line item source object:
- Navigate to the fields list of the corresponding object.
-
Create the following new fields.
API Name Data Type Description Use Case Value ON_RecognitionRule Text (255)
Formula (Text)
PicklistSpecifies the revenue recognition rule to be applied, is copied to the invoice line item during the invoice run. Margin Scheme
ON_Margin Currency
Formula (Currency)Specifies the margin of the invoice line item.
Using a formula, you can apply custom logic to determine the margin.ON_GrossInvoice Checkbox
Formula (Checkbox)Specifies whether the invoice line item price is considered a gross price. true
ON_Description Text (255)
Formula (Text)Specifies additional information about the invoice line item, can hold the required note on margin taxation
Using a formula, you can apply custom logic to set the text on certain conditions.IF(ON_Margin != null, 'Margin taxation applies under Art. 25a German VAT Act',' ')
For help about creating fields, see Managing Object Fields.
Info
When applying a margin scheme, taxes (set using tax rules, for example) apply to the margin amount only. For the original price, that is, the rest of the position total, the tax rate is set to 0
.
Adjusting PDF Template Display
To produce a PDF output as illustrated in Use Case Outline, adjust the relevant invoice template as follows:
-
Adjust the invoice line item table to display the position number, the item title and description and the unit price.
Click next to the
Table Columns
field and specify this setting:PosNo;Title__c+Description__c;UnitPrice__c;
-
Hide the net subtotal and tax rows.
Click next to the
Custom CSS
field and specify this CSS code:tr.subtotal-calculated.net {display: none} .invoice-table .taxrate_0_00000 {display: none}
Produced Booking Details
Once configured accordingly, JustOn Billing & Invoice Management produces the following booking details, covering the outlined use case:
# | Amount | Debit/Credit Flag | Booking Account | Contra Booking Account | Type |
---|---|---|---|---|---|
1 | 800,00 | H |
4138 |
10000 |
Revenue |
2 | 200,00 | H |
4136 |
10000 |
Revenue |