Guides

On/Off-Ramp Provider Contract Terms: 12 Things to Negotiate

The 12 clauses that decide what an on/off-ramp provider owes you when a quote, payout or balance goes wrong, with a sandbox test for each before you sign.

Caio Barbosa

Founder & CO-CEO

Forbes Under 30. One of the leading voices in Fintech & Crypto in Brazil. Writes weekly about stablecoins, payments, and the future of financial infrastructure in Latin America.

Cover image for Lumx blog article: On/Off-Ramp Provider Contract Terms: 12 Things to Negotiate
Cover image for Lumx blog article: On/Off-Ramp Provider Contract Terms: 12 Things to Negotiate

On/off-ramp provider contract terms are the clauses that decide what a provider owes you when a quote, a payout or a balance goes wrong: how firm a quote is, what fees and minimums apply, who holds the money, what gets refunded, how compliance holds are handled, and how you leave.

Choosing is covered in choosing a stablecoin infrastructure provider and leaving in migrating a stablecoin payout provider. Here the paper has arrived, so each term comes with a sandbox test.

Which 12 terms should an on/off-ramp provider contract cover?

These twelve, in roughly the order they cost money. The last column is the one most checklists skip: a provider can agree to a clause and still behave differently in the API.

The 12 terms, what to ask for, the red flag, and a test to run before signing.

#

Term

Ask for

Red flag

Test before signing

1

Quote firmness

An accepted quote executes at the quoted rate and fees

"Rates are indicative until settlement"

Execute a locked quote and compare the receipt

2

Quote window and last look

Expiry returned with every quote, and a written last look policy

Window only in a PDF appendix, or "at our discretion"

Let a quote expire, then submit it; expect a refusal, not a reprice

3

Fee schedule and change notice

Every fee by rail and direction, and a notice period before any change

Fees "as published from time to time"

Read the fee breakdown on a sandbox receipt

4

Minimums and volume tiers

A minimum only with a ramp-up period and a scheduled tier review

Shortfall fee with no benefit

Model month one and a slow month against the clause

5

Custody and funding

Who holds funds at each step, and whether you must pre-fund

Unclear who holds funds between steps

Trace one transaction and note who holds the money at each status

6

Refunds and failed payouts

Destination and trigger, with timeline and cost per rail

"Refunds processed as available"

Force a failed payout and watch where the money goes

7

Settlement commitments and incidents

Per-rail windows, a definition of settled, and notice when a rail degrades

One number for every rail

Compare contract windows with the published cut-offs

8

Compliance holds and limits

A response clock, a named contact and the outcomes, plus how limits are raised

No timeline, no notice

Read the hold and limit docs, then ask what the contract adds

9

Sanctions and compliance obligations

Which party screens what, and the prohibited uses

Obligations only on you

Check your flows against the prohibited-use list

10

Records and data

Full history through the API and an export on request

Records only through support tickets

Pull your sandbox history through the API

11

Liability and indemnity

A cap above a month of fees (our rule of thumb), with a carve-out for the provider's own fault

Liability capped at a week of fees

Ask for the cap in currency terms

12

Term, renewal and exit

Initial term, renewal mechanism, notice period, return of funds, no exit fee

Auto-renewal with a long notice window, funds frozen during notice

Ask for the exit sequence in numbered steps

On Lumx, the first three tests run on real behavior in the sandbox: locked quotes carry an expiry and a finalExchangeRate, and the receipt on a completed transaction splits the fee into a Lumx line and a partner line. The sections below say what Lumx does on the other terms.

Quote firmness, quote window and last look

Tie the quote clause to the API, not to a rate sheet. A usable clause says the provider executes an accepted quote at the rate and fees it returned, before the stated expiry. Anything softer is a price display.

Two details separate good clauses from decorative ones. The expiry must travel with the quote, so your system can read it and your customer sees a countdown that matches reality. And the clause must say whether the provider can decline an accepted request. That right has a name, last look.

The FX Global Code defines it as a practice "whereby a Market Participant receiving a trade request has a final opportunity to accept or reject the request against its quoted price". Its Principle 17 says participants who use it "should be transparent regarding its use and provide appropriate disclosures to Clients", including the typical time taken to decide. For a payout, a rejection after acceptance is a late salary or supplier payment. Ask for firm quotes, or at least a disclosed policy and a rejection rate you can monitor.

On Lumx, a locked rate fixes the conversion for 30 seconds, 1 minute or 5 minutes. The 30-second lock carries no fee and the longer ones include a fee for volatility risk. The quote returns expiresAt, and if the lock lapses before the transaction is submitted the exchangeRateId is no longer valid and a new rate has to be requested.

Fees, minimums and volume tiers

The fee clause has two jobs: make every charge visible and make every change slow. That means a schedule by rail and direction, the FX margin stated apart from the per-transaction fee, a notice period before any increase and the right to leave without penalty if you do not accept it.

An illustration with invented numbers, not a Lumx price. A provider charges 0.25% per transaction with a USD 2,000 monthly minimum. In month one you move USD 200,000, so usage fees are USD 500 and the minimum adds USD 1,500 for volume you have not yet ramped. A ramp-up clause that waives the minimum for the first months removes that charge. A tier review does the other half: at USD 1,500,000 a month the same 0.25% is USD 3,750, the minimum stops binding, and the tier should lower the rate. Separately, a rise of 0.05 percentage points on that volume costs USD 750 a month, which a notice clause (60 days is our rule of thumb) turns into a planned repricing.

A minimum is acceptable with a ramp-up period, a tier schedule and a review date. With a shortfall fee and nothing in return it is a red flag. How the spread, the fee and the partner fee stack up is in how stablecoin payout pricing works.

On Lumx, the standard agreement has a monthly minimum, a ramp-up period that waives it in the first months, a quarterly review of volume tiers and no setup fee. Fees you add for your own revenue are set as partner fees, in basis points or as a flat amount, and show as their own line next to the Lumx fee on the receipt.

Who holds the money, and what a refund has to say

For custody, ask the provider to state who holds funds at each step of a transaction, and whether you must pre-fund before payouts. With a custodial provider the balances sit with the provider between steps. That is not wrong, but it is an exit and insolvency question, so the contract should say how balances come back and in what form. If the answer is "a partner holds them", ask for the partner's name. A provider that touches virtual assets is usually a virtual asset service provider, so confirm in writing which regulated entity sits in each country. A second provider can limit that exposure: see using two stablecoin providers.

For refunds, name the destination, the trigger and the clock per rail. Four questions cover it:

  1. Where do funds go when a payout cannot be delivered?

  2. Which cases refund automatically and which need a person?

  3. How long does each take?

  4. Who pays network or bank costs on the return?

On Lumx, each customer has a wallet on every supported blockchain, enabled once the customer is approved, and it holds stablecoin balances between on-ramps and off-ramps. Lumx is custodial: wallets are held by BitGo, which carries insurance, with every client segregated and no omnibus account, and the standard agreement includes a return-of-funds sequence on exit. There is no pre-funding of settlement accounts: conversion and settlement happen when you start the transaction. See what a custodial wallet is and the custodial wallets page. For refunds on the collection side, an on-ramp deposit that lands after the transaction has expired is returned to the original sender on the same rail it arrived on.

Settlement, compliance holds and compliance obligations

Settlement commitments belong in an annex per rail, because one global number hides the corridor that matters to you. Ask what counts as settled and for notice when a rail degrades.

Compliance holds need the same treatment. A flagged transaction pauses while the provider's compliance team asks questions, so the clause should say how you are contacted, how long you have to answer and what happens if you do not. Limits belong here too: the caps per transaction, per day and per month, and how a raise is requested. The reasons payouts stall in review are in why stablecoin payouts get rejected.

The compliance obligations clause allocates the work: who verifies your customers, who screens counterparties, which purposes and sectors are prohibited, and what each side reports. Get the prohibited-use list in writing.

On Lumx, settlement targets and cut-offs are published by rail, with the numbers in payout limits and cut-offs by rail, and the public service level agreement is on lumx.io. Lumx is compliant with SOC 2 and ISO 27001 but not yet certified, and runs pentests. Transactions flagged by monitoring are put on hold as an RFI (request for information, a compliance hold that asks for a document before a transaction clears), compliance reaches out by email or Slack, and a hold on any transaction that goes unanswered for 24 hours may be refunded to the sender. A limit increase request is not a transaction RFI unless it is needed to approve one. Limits are set per transaction type and readable per customer with used and remaining amounts, and a transaction over a limit is refused with a TRANSACTION_LIMIT_EXCEEDED code rather than delayed. Which countries Lumx serves, and under which entity, is on the supported countries page and the operator map.

Records, liability and the way out

Records come first, because you will use them every month. Ask for the full history of your transactions through the API, with fee breakdowns and status timestamps, and an export on request in a machine-readable format that stays available after termination.

Ask for the cap in currency terms, since a cap set at last month's fees can be smaller than one payout run. Ask that it does not apply to the provider's own gross failures, and ask what the provider indemnifies: a sanctions breach on its side, a data incident on its side, or a payout sent to the wrong beneficiary by its error.

Term, renewal and exit close the contract. Ask for the initial term, how renewal works, and a notice period long enough to move customers and bank accounts. Ask for the return-of-funds sequence in numbered steps: in what form (stablecoin to a named wallet, or fiat to a named account), on what timeline, at what cost. A provider that cannot write it down has not thought about it.

On Lumx, each transaction can be read through the API with its receipt, and every status change is delivered as a signed webhook, retried with exponential backoff for up to eight attempts, with a webhook-id header to deduplicate. The standard agreement also covers a history and address export and a liability cap; fee-change notice is the term to raise with the Lumx team.

Which three terms should you fight for first?

Exit, custody and fee-change notice, in that order.

I would fight for the exit clause before the quote clause. Quote behavior can be tested in a sandbox within a week, and a provider that reprices will show it. The exit clause cannot be tested until you need it, and by then you have no bargaining room left. I recommend asking for a written return-of-funds sequence on the first call, so that you find out before an incident whether one exists.

Custody comes second because it sets how bad an exit can be. Fee-change notice comes third because it quietly moves your unit economics.

When negotiating these terms is the wrong move

Three cases. Without a pilot, you negotiate with a provider you have not seen fail, so run the sandbox tests first.

If your volume is small, expect standard paper. Your room is in choosing the provider whose standard terms already cover most of the twelve, so the table becomes a screening list.

And if the problem is a single corridor, a second provider for that corridor can cost less than a long redline of the first. The coverage page shows the corridors Lumx serves.

What these terms look like with Lumx

Lumx is stablecoin payments infrastructure for businesses that move money between Latin America and the rest of the world: one API to collect, hold, convert, and pay out in BRL, MXN, COP, USD, EUR, and GBP or in USDC and USDT, over local rails such as PIX, SPEI, PSE, Bre-B, ACH, FEDWIRE, SEPA, and Faster Payments, with SWIFT and on-behalf-of payments and collections (POBO and COBO) in USD, EUR, and GBP, plus named virtual accounts, custodial wallets, and KYB/KYC built in.

The commercial model is a monthly platform fee plus usage-based per-transaction fees, transparent FX on locked quotes, no pre-funding; no published plans. In the API you can check terms 1 to 3 on the quote and receipt, term 5 on the wallet, terms 7 and 10 on statuses and webhooks, and term 8 on limits.

KYB (know your business, the verification of a company and its owners) is part of the integration, and the payout itself is described on the global payments page. For terms the documentation does not decide, such as fee-change notice and renewal, bring the table above to the Lumx team.

Methodology and sources

Sources read on November 1, 2026:

The figures in the worked example are invented, not a Lumx price. Have counsel review the contract.

Verified on November 1, 2026. Operational context, not legal, tax, or investment advice.

Cover photo: Justin Zhu on Unsplash.

  • What should an on/off-ramp provider contract include?

    Quote firmness and expiry, a fee schedule with change notice, minimums with a tier review, custody, refunds, settlement per rail, compliance hold timelines, sanctions duties, record access, liability limits and an exit. On Lumx, the standard agreement has a monthly minimum with a ramp-up period, a quarterly tier review and no setup fee.

  • Is an on/off-ramp quote binding, and what is last look?

    It is binding only if the contract says so. Last look is the provider's final chance to reject an accepted request at its quoted price, and the FX Global Code asks participants that use it to disclose it. On Lumx, a locked rate holds for 30 seconds, 1 minute or 5 minutes, the 30-second lock has no fee, and an expired lock is refused and replaced by a new quote.

  • Should the contract include a monthly minimum?

    Only with something in return, such as a ramp-up period or a lower tier. Otherwise it charges for volume you have not built. On Lumx, the standard agreement has a monthly minimum, a ramp-up period that waives it in the first months and a quarterly review of volume tiers.

  • What refund and exit terms should you ask for?

    Where funds go when a payout fails, who pays return costs, how long you have to answer a compliance request, plus a return-of-funds sequence in numbered steps. On Lumx, a transaction on hold for an RFI may be refunded to the sender after 24 hours without an answer, a late on-ramp deposit is returned on the same rail, and every transaction can be read through the API.

Stay up to date with what Lumx is developing.

Sign up to receive them by email.

Share on socials:

on-off-ramp-provider-contract-terms

A

on-off-ramp-provider-contract-terms

On/Off-Ramp Provider Contract Terms: 12 Things to Negotiate

Copy link

Copied!

on-off-ramp-provider-contract-terms

TALK TO OUR TEAM

Ready to transform your business with stablecoins?

Discover how our infrastructure can seamlessly integrate stablecoins into your financial operations quickly, securely, and efficiently.

Guides

In this page

©2026. All rights reserved.

Lumx US OP LLC ("Lumx") is a financial technology and payments infrastructure company. Lumx US OP LLC is a Money Service Business (MSB) registered with the Financial Crimes Enforcement Network (FinCEN) (MSB #31000316459619). Lumx is not a state-licensed money transmitter and does not, in its own capacity, engage in the provision of regulated money transmission services. All such regulated activities are conducted exclusively through, and under the licenses of, duly authorized financial-institution partners.


Lumx is not a bank, financial institution, payment institution, or custodian of client funds. Certain services made available through the Platform may be provided by duly authorized and regulated third-party partners, in accordance with applicable laws and regulations.

Please refer to Lumx’s Terms of Use and Privacy Notice for further information regarding the conditions governing the use of the Platform and the processing of your personal data.