Skip to main content
Allows merchants to generate additional revenue by applying a flexible, custom markup to their submerchants’ transactions, with WePayments’ fees charged separately for different payment methods and transaction types.

Business Rules

Important Restrictions:
  • This feature launches in January 2026

Configuration Levels (Scopes)

Merchants can configure markup at three different levels of priority:

Global (Merchant Level)

The merchant defines a markup that will be applied to all charges from all submerchants.

By Submerchant

The merchant can define specific markups for each individual submerchant.

Inline in Request (By Charge or Payment)

When creating a charge or payment, the merchant can send a specific markup object. Priority Rule: The inline markup configuration takes priority over all other markup settings.
If there is no specific configuration → the global markup is applied when merchant has the markup feature enabled.

Markup Types

Fixed

The same fixed markup value is applied to all charges/payments, regardless of the transaction amount.

Percentage

The markup value is calculated as a percentage of the charge/payment amount. This type includes delimiter fields to define a valid range for the final markup amount:
  • min_charge_value: The minimum markup amount to be charged.
  • max_charge_value: The maximum markup amount to be charged.

Percentage Calculation Logic

  1. The system calculates the raw percentage value (transaction_amount * percentage).
  2. If the calculated value is less than min_charge_value, the min_charge_value is applied.
  3. Else if the calculated value is greater than max_charge_value, the max_charge_value is applied.
  4. Otherwise, the exact calculated value is applied.
Examples (BRL):
TransactionMarkup %Min ValueMax ValueCalculationAppliedReason
R$ 10.000.3%R$ 0.05R$ 0.15R$ 0.03R$ 0.05Uses min_charge_value (0.03 < 0.05)
R$ 10.001.7%R$ 0.05R$ 0.15R$ 0.17R$ 0.15Uses max_charge_value (0.17 > 0.15)
R$ 10.001.2%R$ 0.05R$ 0.15R$ 0.12R$ 0.12Uses calculated value (0.05 < 0.12 < 0.15)