Accept fiat payments from your end users and have them delivered to your wallet as USDC, USDT, or EURC — automatically, without writing aDocumentation Index
Fetch the complete documentation index at: https://docs.spherepay.co/llms.txt
Use this file to discover all available pages before exploring further.
POST /v2/transfer call per payment. The primitive is an Onramper Account: a dedicated virtual bank account that auto-converts any incoming fiat deposit into stablecoins and settles to a registered wallet.
This pattern is the inverse of Trading — instead of orchestrating each conversion, you provision the account once and let it run.
When to use this pattern
- E-commerce and B2B billing. Invoice customers in USD, EUR, or BRL — they pay via wire or ACH against a virtual account, and you receive USDC.
- Marketplaces. Provision one Onramper Account per seller. Each seller’s fiat receipts auto-settle to a seller-controlled wallet.
- DeFi funding. Let users fund an on-chain position via wire or card. The user wires fiat to their Onramper Account, USDC settles directly to the protocol’s contract or a wallet you sweep into the protocol.
- Subscription billing. Recurring ACH pulls from customers land in their Onramper Account and convert without per-billing-cycle API work.
- Treasury inbound. Receive customer payments in fiat without holding fiat — convert at the point of receipt.
How it works
- Provision an Onramper Account for each payer (or per receiving wallet — depends on your model).
- Share the deposit instructions with your end user — they wire USD, ACH, or SEPA against the virtual account just like any other bank account.
- SpherePay auto-converts and settles. Each incoming deposit is converted to the configured stablecoin and delivered to the registered wallet address — no transfer API call required.
Setup
Step 1 — Verify the customer
The customer who owns the Onramper Account must complete KYC or KYB and be approved. The customer can be a single user, a business entity (for a marketplace seller), or your own company (for a single-account inbound funnel).Step 2 — Register the destination wallet
The wallet that will receive the stablecoin output of every deposit. POSThttps://api.spherepay.co/v2/wallet
id as {{wallet_id}}. For a DeFi flow, this can be the address of the protocol’s vault or pool contract directly — Sphere will deliver USDC to it on every conversion.
Step 3 — Create the Onramper Account
POSThttps://api.spherepay.co/v2/virtual-account
accountDetails — the virtual bank account’s routing and account numbers. Share these with your payer.
For EUR-denominated inbound, swap to:
currency: "brl" and networks: ["pix"] (subject to BRL verification-profile requirements — see Trading).
Step 4 — Share deposit instructions
From the response, surface the account number, routing number (or IBAN/BIC for SEPA, PIX key for BRL), and account-holder name in your UI or invoice. The payer initiates an ACH or wire to that account.Step 5 — Receive
Each deposit triggers:- Sphere receives the fiat into the virtual account.
- Sphere converts to the configured stablecoin at the prevailing rate.
- The stablecoin is delivered to the registered wallet —
{{wallet_id}}.
DeFi application
For DeFi platforms specifically, the Onramper Account pattern unlocks on-ramp into a protocol position in one user action:- User decides to deposit into your protocol.
- Your app shows them the deposit instructions for an Onramper Account configured to settle USDC directly to the protocol’s vault contract (or an intermediary wallet you sweep into the protocol).
- User wires USD from their bank.
- USDC lands at the protocol contract; the deposit reflects in their on-chain position automatically.
Marketplace application
Provision one Onramper Account per seller at onboarding:Compliance considerations
- KYC the account owner. The customer who owns the Onramper Account must be verified. For marketplaces, this means each seller goes through KYC/KYB.
- Source of funds. Large or unusual deposits may require additional documentation per Sphere’s compliance policies.
- Sanctions screening. Sphere screens deposits at the rail level, but you remain responsible for the legality of your underlying business activity.
- Tax reporting. Convert-to-stablecoin events may be taxable in some jurisdictions — coordinate with your tax advisor.
Best practices
- One account per receiver. Don’t share an Onramper Account across multiple sellers or use cases — reconciliation gets messy. Dedicated accounts make every deposit unambiguous.
- Set conservative limits. Use Sphere’s per-account deposit caps to bound exposure on any single account.
- Poll deposit status. The Onramper Account doesn’t fire webhooks today; poll the virtual-account transfers endpoint to detect new deposits.
- Use SEPA Instant where possible for EUR flows requiring fast settlement.
- Plan for refunds. If the underlying business model requires returning funds, you’ll need a separate off-ramp flow (see Offloader Wallets).
Related
Onramper Accounts
The primitive this solution is built on — virtual bank accounts with automatic stablecoin conversion.
Trading
The inverse pattern — orchestrated, per-transfer conversion.
Onboarding
KYC/KYB for the account owner.
Supported rails
Which currencies and networks are supported.

