Skip to content

Admin backoffice: "Sub-Amount in CENTS" label is misleading for non-USD payout currencies #12082

@stilla

Description

@stilla

Problem

The retry payout modal in the admin backoffice labels the amount input as "Sub-Amount in CENTS", which implies USD cents. However, the field actually accepts the smallest unit of the payout's account_currency — which varies by country.

For example, a KZT payout shows Remaining amount: KZT 4,450.55 but the field still says "CENTS", when the correct term for KZT subunits is tiyn. For currencies like JPY that have no subunit, entering an amount in "cents" would be nonsensical.

Relevant code:

  • Form field: server/polar/backoffice/payouts/forms.pyRetryPayoutForm.account_amount
  • The amount is passed directly to Stripe with currency=payout.account_currency, confirming it's always in the payout currency, never USD.

Current behaviour

Field label: Sub-Amount in CENTS
Field description: Amount to attempt to payout in **cents**. Leave empty to payout full amount.

Expected behaviour

Label and description should make clear the unit is the smallest unit of the payout's currency, e.g.:

  • Label: Sub-Amount (smallest currency unit)
  • Description: Amount to attempt to payout in the smallest unit of the payout currency (e.g. cents for USD, tiyn for KZT). Leave empty to payout the full remaining amount.

Bonus: dynamically interpolating the actual currency code/unit name would make this even clearer.

Sent by @allison-polar from Organization deletion data retention.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions