Contents

    Invoicing costs on the basis of shipping methods

    Your task/initial situation

    You would like to charge the costs incurred by shipping to your fulfilment customers.

    In our example, we address the following cases:

    • Costs per shipped sales order
    • Shipping costs
    • Picking costs, divided into costs for the first picking and costs for each additional picking

    General approach

    Accounting items are usually added automatically using JTL-Workflows. This means that you configure once under which conditions an item is to be created and as soon as these conditions are met, the item is invoiced automatically. The invoice can still be corrected afterwards. If you are not yet familiar with workflows, please read the following documentation: JTL-Workflows.

    Step 1: Creating accounting items

    The first step is to create an accounting item for each line item that you want to separately invoice. Accounting line items can, for example, be:

    • Fixed price per sales order
    • First picking
    • Additional pickings
    • Shipping costs for standard shipping, possibly split into different shipping weights
    1. Create all accounting items you require. Learn more about this: Creating accounting items.

    Step 2: Creating a workflow

    You now create a workflow for each accounting item that you want to create. We will show you how to set up the line item types mentioned in our example.

    1. In JTL-Wawi, go to the menu Admin > JTL-Workflows and open the dialogue box JTL-Workflows anlegen/bearbeiten (Creating and editing JTL-Workflows).
    2. Switch to the area Aufträge (Sales orders) and select the triggering event Auftrag > Ausgeliefert (Sales order > Shipped).
    3. Select Workflow anlegen (Create workflow). A new workflow will be created. Give the workflow a suitable name.
    4. If necessary, specify a condition that is to be valid for triggering the workflow. In our examples we do not specify any conditions.

    Calculate costs per sales order

    1. Select the action Abrechnungsposition hinzufügen (Add accounting line item).
    2. Under Modus (Mode), select Artikel (Item), and then click Artikel auswählen (Select item).
    3. If necessary, insert a note by clicking on the … button behind the row. The sales order ID is usually the best choice here.
    4. Deactivate the option Kostenlos hinzufügen to display the actual item price for the sales order on the invoice.

    Calculating shipping costs

    1. Select the action Abrechnungsposition für Versandkosten hinzufügen (Add accounting line item for shipping costs).
    2. Click Artikel auswählen (Select item) and select the item that normally sets the shipping costs. This item is always charged when no other rule applies.
    3. Optional: Then click Abrechnungspositionen für Versandkosten konfigurieren… (Configure accounting line items for shipping costs) to limit the shipping costs for specific shipping weights. The dialogue box Abrechnungspositionen für Versandkosten konfigurieren (Configuring accounting line items for shipping costs) opens.
    4. Under Versandart (Shipping method) select the shipping method to which this rule applies. Then determine the total weight of a package up to which the rule applies. If there is not yet a package for the sales order, the standard SKU is added as an accounting line item. Click on Artikel auswählen (Select item) to determine the item that sets the costs for this rule.

    Calculating picking costs

    You can calculate picking costs with a fixed price per picking or individually based on the number of pickings. For the latter, you need JTL-WMS Mobile.

    Invoicing picking with JTL-Wawi

    Depending on how a pick is defined, you must add the corresponding accounting line item to different workflow events of the current accounting process using the workflow action “Add accounting line item”. 

    Picks correspond to the number of items delivered

    If, for example, you want each individual item to count as one pick, you can bill them all together at the end of the shipping process in the workflow event “Delivery notes/Shipped”. 

    Open the workflow management in JTL-Wawi via Admin > JTL-Workflows. Then select the Versand (Shipment) button in the Ereignisbereichsleiste (event section bar).

    1. In the pane Auslösende Ereignisse (Triggering events), select Lieferscheine > Versendet (Delivery Notes > Sent) and click Workflow anlegen (Create workflow). A new workflow will be created.
    2. Give the workflow a suitable name. We named it FFN-Versendet (FFN shipped).
    Please note: If the accounting items are added with each shipped sales order with JTL-Wawi, you can leave the conditions empty.  
    Setting conditions

    If you ship your own sales orders, you can filter the conditions by sales orders that come from your FFN merchants. 

    1. Click on Neue Bedingung (New condition) in the pane Bedingungen (Conditions).
    2. Click on the left drop-down menu and select  Lieferscheine > Auftrag > Kunde > istFFNHändler (Delivery notes > Sales order > Customer > isFFNRetailer).
    3. Select Gleich (Equals) in the middle drop-down menu.
    4. In the right drop-down menu, select Wahr (True).
    Setting actions

    Now add the workflow action.

    1. In the Conditions pane, click Neue Aktion (New action).
    2. Click on the drop-down menu and select  Abrechnungsposition hinzufügen.
    3. Select Modus: Artikel (Mode: Item) from the drop-down menu.
    4. Click the button near Anzahl: (Number:) to open the dialogue box Erweiterte Eigenschaften (Extended properties) and insert your own dotLiquid script.

    Examples for calculating the number

    For the number, we want to use the sum of the quantities of the individual item line items. For this, we need a dotLiquid script. 

    Example 1:

    In this example, all quantities of the individual line items are added up, ignoring BOMs and only taking into account the quantities of their components.  

    {% assign summe = 0 -%} 
    {% for Position in Vorgang.PositionenAlle -%} 
    {% if Position.Artikel.IstStückliste == 'false'  -%} 
    {% assign summe = summe | Plus : Position.Menge -%} 
    {% endif -%} 
    {% endfor -%} 
    {{ summe }} 
    Example 2:
    Please note: The list “Vorgang.PositionenAlle” contains all line items, including BOMs and their components. “Vorgang.Positionen” is the list of items without BOM components. This means that only the BOM as a whole is taken into account. 

    In this example, only the quantities of the BOMs and not their individual components are charged.

    {% assign summe = 0 -%} 
    {% for Position in Vorgang.Positionen -%} 
    {% assign summe = summe | Plus : Position.Menge -%} 
    {% endfor -%} 
    {{ summe }} 

    First pick – different price

    If you only wish to charge a separate price for the first pick of a sales order, proceed as follows:

    1. In the Conditions pane, click Neue Aktion (New action).
    2. Click on the drop-down menu and select  Abrechnungsposition hinzufügen.
    3. Select Modus: Artikel (Mode: Item) from the drop-down menu.
    4. For Anzahl (Number), select  1.
    5. Add another action.
    6. Click on the drop-down menu and select  Abrechnungsposition hinzufügen.
    7. Select Modus: Artikel (Mode: Item) from the drop-down menu.
    8. Click the button near Anzahl: (Number:) to open the dialogue box Erweiterte Eigenschaften (Extended properties) and insert the below dotLiquid script.
    {% assign summe = 0 -%} 
    {% for Position in Vorgang.Positionen -%} 
    {% assign summe = summe | Plus : Position.Menge -%} 
    {% endfor -%} 
    {{ summe | Minus : 1}} 

    Billing picks individually with JTL-WMS Mobile

    You can also settle the picking costs individually for each pick. To do this, use JTL-WMS Mobile. Read the documentation of JTL-WMS Mobile to learn how to work with the mobile app.

    1. To do this, switch to the Picklisten (Picklists) area in the dialogue box JTL-Workflows anlegen/bearbeiten (Creating/Editing JTL-Workflows).
    2. Select the node Pick > Gepickt mit Mobile App (Pick > Picked with Mobile App). Then click on Workflow anlegen (Create workflow) and give it a suitable name, e.g. “Individual picking”.
    3. If necessary, use Bedingungen (Conditions) to limit when the workflow should take effect, e.g. to when the goods of a certain fulfilment customer are picked.
    4. Under Aktionen (Actions), select the option Abrechnungsposition hinzufügen (Add accounting line item). Then make the following settings:
    • Modus (Mode): Artikel (Item)
    • Artikel auswählen (Select item): Artikel für Pick (Item for picking)
    • Anzahl (Quantity): 1 (If the entire pick list line item is to be charged as one pick)
    • Quantity: {{ Vorgang.Pickmenge }} (If the number of items of the pick list line item is to be charged)
    1. Click Speichern to save and apply the workflow. Every time you pick with JTL-WMS Mobile, an accounting line item for picking will be added.