Commission

When partners earn commission, and how much.

Commission is not created at the purchase but once a referred order is old enough and has the chosen status. Then the plugin calculates once: with the type and rate of the partner, from the net value of the goods, with a rate of its own for subsequent orders and, if you like, with a minimum order value and a maximum commission.

Marketing → Affiliate program → side menu System → Settings, cards “Commission · …”; per partner under Partners → tab Commission

Which orders earn commission

Commission only for orders with a partner code

An order belongs to a partner when it carries the partner code. Upper and lower case do not matter. For an inactive partner the plugin calculates nothing at all, neither a booking nor a preliminary commission. Where the code comes from makes no difference to the commission:

  • from the partner link, the short link or the QR code of the partner,
  • from the partner voucher the customer redeems in the cart,
  • from entering the partner code in the cart or at checkout,
  • from the customer account: a referred customer stays assigned to the partner, also for later orders. For how long is explained in the chapter Marketing.

From when is an order commissionable?

Three settings decide when a referred order earns commission. Only then does it count towards the available commission of the partner. In the partner area the partner sees the orders before that, but turnover and commission only from this point on.

  • Age (in days): 14 by default. It counts from the time of the order, not from shipping, in UTC. An order placed on 1 October at 6:30 pm is old enough from 15 October at 6:30 pm.

  • Customer groups: empty means all. With a selection, only orders of customers who are in one of these groups at the time of the sync count. Shopware does not store the customer group with the order, so today's state applies.

  • Order status: empty means every status except “Cancelled”. With a selection only exactly this status counts, “Done” for example. The payment status plays no role.

  • What always applies: a cancelled order never earns commission for the first time, even if “Cancelled” is selected. Orders older than two years are no longer calculated. And the settings of the sales channel of the partner's customer account apply; a partner without a customer account calculates with the settings for all sales channels.

Every order is evaluated exactly once

Once an order is commissionable, the plugin books exactly one commission for it, even if it is €0.00, for example for a subsequent order without subsequent commission. After that it never recalculates this order: if the rate of the partner, a commission rule or the partner group changes later, the booking stays as it is. The booking is shown on the order in the tab Affiliate program.

  • Revenue is the commission base of the order: the net value of the goods after discounts, without shipping.

  • Commission is the amount booked for the partner.

  • Redeemed commission shows how much of it the partner has already redeemed as a voucher or payout.

  • ··· → View log opens the calculation of this booking, step by step. In detail in the chapter Calculation.

How much: type, rate and base

Three commission types: percentage per product, per piece or per order

Every partner has a commission type, a rate and optionally a rate of its own for subsequent orders, a minimum order value and a maximum commission. New partners get these values from the configuration on registration; after that you set them on the partner in the tab Commission. An active partner group replaces them completely.

  • Per product: percentage of net: a share of the net value of every line, for example 8 % of €205.46 = €16.44. Per product: fixed amount per piece: a fixed amount for every piece bought, for example €0.50 × 4 pieces = €2.00. Per order: fixed amount: one fixed amount for the whole order, regardless of goods, quantity and value.

  • Rate: a percentage or an amount in the default currency, depending on the type. A change only affects orders that are not booked yet.

  • Rate for subsequent orders: with the purple bracket the rate applies to subsequent orders as well. Remove the bracket and enter a value of its own, 0 included.

  • Minimum order value and Maximum commission per order: empty means no limit. How they work is described below under limits.

  • The defaults for new partners are in the configuration card “Partners · Defaults for new partners”, by default a percentage of 5 %. There the types are still called “Percentage”, “Absolute (per order)” and “Absolute (per piece)”.

What is the commission calculated from?

The commission base of an order is the net value of the goods after discounts, without shipping, in the default currency of the shop. It is stored with every booking as “Revenue” and is the base for percentage rates and the minimum order value.

  • Net means without VAT, the same for gross, net and tax-free orders. Example: an order of €991.90 gross at 19 % gives €833.53 net; 10 % commission is €83.35.

  • Shipping never counts towards the base, also not with shipping costs at several tax rates.

  • Discounts reduce the base. A promotion that only discounts certain products only reduces these products; this matters when different rates apply per product. Other discounts are spread proportionally over all goods.

  • Foreign currency: the plugin converts orders in another currency into the default currency with the currency factor of the order. Fixed amounts per piece or per order stay as they are: €10 per order is €10 also for an order in dollars.

  • Rounding: commercially to the cent, for example €5.625 to €5.63. A commission below 0 is booked as €0.00.

Subsequent orders, limits and own orders

Subsequent orders: commission again, with a rate of its own if you like

The first booked order of a referred customer is the first order, every further one is a subsequent order, even if the first one brought €0.00. If several orders become due in the same sync, the plugin books them by time of order. A subsequent order uses the rate for subsequent orders where one is set, otherwise the normal rate. Example: a subsequent rate of 3 % on €89.90 gives €2.70.

  • For every booking the log shows whether it is a subsequent order and which order earned commission before.

  • Commission subsequent orders (on by default): when switched off, every customer earns commission for the first order only; subsequent orders are booked with €0.00.

  • Guest orders with the same email address are subsequent orders (on by default): Shopware creates a guest account of its own for every guest order. With the switch the plugin recognises the same guest by the email address. Two registered customer accounts stay separate.

  • Rate for subsequent orders on the partner: purple bracket for the same rate, removed bracket for a rate of its own, 0 included.

Minimum order value and maximum commission per order

Both limits are optional and apply per partner or per partner group. Example: a partner with 15 %, a minimum order value of €40.00 and a maximum commission of €10.00. An order with a base of €81.93 reaches the minimum order value; 15 % gives €12.29, €10.00 is booked.

  • Minimum order value: if the commission base is below it, the plugin books €0.00 without any further calculation. An order with a base of €32.77 earns no commission with a minimum order value of €40.00.

  • Maximum commission per order: the finished commission is limited to this amount, including commission from commission rules and the rate for subsequent orders.

  • Defaults for new partners: in the card “Partners · Defaults for new partners” both limits are empty by default. You change existing partners on the partner or through their partner group.

Do partners earn commission on their own orders?

Not by default. An own order is an order with the partner's customer account or a guest order with the partner's email address, for example when the partner tests the partner link or uses the own partner voucher. It is booked with €0.00. A partner without a customer account never has own orders.

  • Partners receive commission for their own orders: when the switch is on, own orders calculate like any other. After an update from an older version the previous setting is kept.

  • Orders through a second customer account or under another email address are recognised by the fraud check by the same address, the same name or the same phone number and flagged for review.

After the booking: cancellation, sync and preview

What happens when an order is cancelled?

A booked commission stays, even if the order is changed, cancelled or deleted later. With the cancellation settlement (on by default) the plugin creates a negative manual booking of the same amount for every positive booking of the order when it is cancelled. This lowers the available commission of the partner, even if it has already been redeemed. If an order is cancelled before it is commissionable, no booking is created at all.

  • Automatically settle canceled orders: on or off, per sales channel.

  • Public notice of the booking: the text the partner sees for the counter booking, by default “Stornierte Bestellung #10065 vom 02.10.2025” from order number and order date; you can change the text per sales channel.

When does the plugin calculate? Live, as a scheduled task or by command

Booking due orders is called the sync. There are three ways, each with a switch of its own in the card “System · Calculation of the commission”; by default all three are on. Which way books an order does not change the amount.

  • Live when the partner area is opened: when a partner opens the partner area, the plugin first books the due orders of this partner. The partner always sees the latest state. Applies per sales channel.

  • Via scheduled task: the task dvsn.affiliate.update_commission runs every 15 minutes, calculates for at most 55 seconds per run and continues in the next run where it stopped.

  • Only partners with new orders (off by default): the task then only goes through partners who have an order without a booking. For shops with many partners.

  • Via console command: bin/console dvsn-affiliate:update-commission, if you like with --partner-code for one partner, --only-delta for partners with new orders and --debug-mode for the full calculation. You set up the schedule yourself, as a cron job for example.

  • The dashboard shows the last sync in its status line.

Preliminary commission: what the partner sees as soon as the order comes in

Until the waiting time is over, the partner area only shows “---” for an order. With the switch “Show turnover and commissions for non-commissionable orders” (off by default) the plugin calculates a preliminary commission at checkout and shows it in grey. It is no booking and does not count towards the available commission.

  • Grey: the preliminary commission of an order in the waiting time. It uses the same rates and the same base as the later booking, with the state at checkout.

  • Booked: the commission after the waiting time with the revenue it comes from. It can differ from the preliminary one because the booking calculates with the state at the time of the sync, after a promotion into a higher partner group for example. The plugin never recalculates the preliminary commission.

  • Below the list the waiting time is shown after which the commission is fixed.

  • The switch is in the configuration card “Partners · Partner area”.

Every booking with its calculation

For every booking the plugin stores how the commission came about: base, rate, rules, limits and result. You open the log on the order in the tab “Affiliate program”. The switch “Log the calculation of commission for each order” is on by default; without it there is no log. How to read it is shown in the chapter Calculation.

  • The switch is in the card “System · Logs for troubleshooting”.

← Back to the manual

Common questions

When does a partner get the commission?

When the referred order is old enough, 14 days after the time of the order by default, and has the chosen order status. Then the next sync books the commission: when the partner area is opened, in the scheduled task every 15 minutes or by console command.

Is the commission calculated from the gross or the net amount?

From the net value of the goods after discounts, without shipping and without VAT. An order of €991.90 gross at 19 % gives €833.53 net; 10 % commission is €83.35.

Does the partner also earn commission on repeat orders?

Yes, by default for every further order of the referred customer, which makes it a recurring commission. On the partner you can set a rate of its own for them, 0 included. With the switch “Commission subsequent orders” off, only the first order of a customer counts. As the assignment has no time limit by default, it is a lifetime commission until you set a number of months.

What happens to the commission when an order is cancelled?

With the cancellation settlement, on by default, the plugin creates a negative manual booking for the booked commission of a cancelled order. Partial refunds and returns are balanced with a manual booking.

Does a new commission rate change commissions already booked?

No. Every order is evaluated exactly once. A new rate, a new commission rule or a new partner group applies to orders booked afterwards. Single orders can be calculated again with the console command dvsn-affiliate:reset-order as long as their commission has not been redeemed.

Can I limit the commission per order?

Yes, with a maximum commission per order and a minimum order value, per partner or per partner group. The maximum commission also limits commission from commission rules and the rate for subsequent orders.

Do partners earn commission on their own purchases?

Not by default. Own orders, guest orders with the email address of the partner included, are booked with €0.00. The switch “Partners receive commission for their own orders” changes that.