Particular aspects of charges in different currencies

An ordered subscription uses prices fixed in the plan currency (see Plan information). This currency may differ from the reseller currency (see Creating a reseller) used for charging the account (end-customer charges) and the currency of the upstream reseller used for charging the downstream reseller (reseller charges).

Generating charges using currency rates is performed as follows:

Generating end-customer charges

  1.  For ordering a subscription, upgrading resources, switching a plan, renewing a subscription, and consumption statistics (for the Pay as you go billing type), the platform checks the plan and reseller currencies:
    • If the plan and reseller currencies do not match, charges are generated as follows:

      Charge Amount = Duration * Quantity * (Price / Currency Unit) * Currency Rate

      where:

      • Charge Amount — the amount of an end-customer charge.
      • Duration — the period of using a resource.
      • Quantity — the used quantity of a resource.
      • Price — the price of a resource.
      • Currency Rate — the currency rate from the reseller currency to the plan currency specified on the root reseller level or redefined on the reseller level (the Exchange rate field, see Managing currency rates).
      • Currency Unit — the number of currency units used for the currency rate (the Unit field, see Managing currency rates).

    • If the plan and reseller currencies match, charges are generated using the currency rates equal to 1.
  2. For calculating the account balance (the current debt within the Postpay model), charge amounts in the reseller currency are used.

  3. For splitting blocked charges (for example, for downgrading resources), the refund is performed regardless of the actual current rates.

  4. If an order is completed not on its creation day, the charges are regenerated using the currency rate effective on the order creation day.

Generating reseller charges

For reseller charges, when the corresponding end-customer charges are closed, the platform checks the plan and upstream reseller currencies:

  • If the plan and upstream reseller currencies do not match, charges are generated as follows:

    Reseller Charge Amount = Duration * Quantity * (Price / Currency Unit) * Currency Rate

where:

    • Reseller Charge Amount — the amount of a reseller charge.
    • Duration — the period of using a resource.
    • Quantity — the used quantity of a resource.
    • Price — the price of a resource.
    • Currency Rate — the currency rate from the reseller currency to the plan currency specified on the root reseller level or redefined on the reseller level (the Exchange rate field, see Managing currency rates).
    • Currency Unit — the number of currency units used for the currency rate (the Unit field, see Managing currency rates).

  • If the plan and upstream reseller currencies match, charges are generated using the currency rates equal to 1.

The API service allows getting detailed information about charges generated with currency rates (see Charges (v1) and Charges):

  • The original amount of charge in the plan currency.
  • The ISO code of the plan currency.
  • The currency rate used for generating a charge.
  • The currency units used for generating a charge.

Recalculating charges when the currency rate is changed

When the currency rate is changed, the platform recalculates charges as follows:

  • Every night before changing the status of charges, the billing process checks whether the currency rate is changed for the reseller and plan. If the currency rate is changed, the amount is recalculated for charges in the following statuses:
    • New — except for subscriptions linked to the orders in the Waiting for payment, Provisioning, or Provisioning failed statuses.
    • Open.
    • Blocked — only for postpaid subscriptions with any billing type, except for Pay as you go.
  • If the currency rate is changed on the last day of a billing period, for postpaid subscriptions, on the next day, the amount is recalculated for charges in the New, Open, Blocked statuses that were created on the previous billing period.

Charges for orders with an individual currency rate (see Viewing order details) are not recalculated when the currency rate is changed for a reseller.

When the charge amount is recalculated, the used currency unit and currency rate are also updated in the charge.