This page builds on the regular Off-Ramp flow.
Everything there still applies; this page only covers the one extra field,
markup_config.How the markup works
When you add amarkup_config, the amount your user pays becomes
base + markup:
- Base — the stablecoin needed to cover the
gmd_amount(plus the standard fee), exactly like a regular off-ramp. - Markup — your cut, added on top. Your user pays it; you keep it.
markup_share_usd (in USD). As the payment comes in, your markup is added
to your balance bit by bit alongside the base, and is fully settled once the
payment is complete.
markup_config
Your cut. Added to what the user pays, and settled to you.
Example
Afixed markup of 4 on a 1000 GMD off-ramp: the base might be about 13.62
USDT, and your user pays about 17.62 USDT (base + 4). You earn the 4 (handed to
you as dalasi) once the payment is complete.
json
pay_amount now includes your markup, and
markup_share_usd shows the markup you’ll earn (in USD).
How the money is settled
- The base covers the
gmd_amount, going to your balance, or to the mobile money wallet inpayout_method, exactly like a regular off-ramp. - Your markup goes to your Modem Pay balance, kept as a separate credit from the base so it’s easy to tell apart.
- Both are settled bit by bit as partial payments come in, and finish together once the full amount is paid.
Even when the base goes straight to a mobile money wallet, your markup still
lands in your Modem Pay balance (not the wallet). This keeps your earnings
separate from your user’s payout.
Good to know
markup_share_usdis locked in at creation and won’t change if the rate moves later.- The markup is your revenue; the standard Modem Pay fee still applies to the base.
- For payment, status values, and notifications, see the regular Off-Ramp page.
