- Payins (USDC-to-fiat): Inbound USDC that Circle converts and deposits as fiat in your bank account.
- Payouts (fiat-to-USDC): Fiat you send to Circle that backs outbound USDC to payees you designate.
Payins (USDC-to-fiat)
A payin settles inbound USDC as fiat in your bank account. Circle manages the custodial accounts, performs compliance screening, and executes a first-party burn to move value offchain.How a payin moves through the system
- Payer sends USDC onchain. The USDC arrives in a Circle Managed Payments account. Many integrations create a continuous payment intent on each sub-account so every merchant or segment has a stable receive address.
- Circle screens and confirms the deposit. Circle’s compliance and policy engine evaluates the transaction before it progresses.
- USDC is burned. Circle performs a first-party burn to remove the USDC from circulation and convert the value to fiat.
- Fiat is credited to your bank. After the burn completes, Circle initiates a withdrawal to your designated bank account for local disbursement.
Key API calls for payins
When to use payins
Choose the payin flow when your end users pay in USDC and you need to receive fiat: for example, a merchant checkout where customers pay with USDC and you disburse to sellers in local currency. To try it, follow the Receive Stablecoin Payins quickstart.Payouts (fiat-to-USDC)
A payout converts fiat you send to Circle into USDC that payees receive onchain. You fund your account by wire, Circle mints or allocates USDC, and you initiate crypto payouts to registered addresses.How a payout moves through the system
- You wire fiat to Circle. Wires can credit a specific sub-account or, if your agreement allows it, a main wallet used for pooled funding. Set up bank accounts and wire instructions ahead of time through the Wires API.
- Fiat posts and a deposit record is created. After the wire settles, you can list and retrieve deposit records through the Fiat Deposits API.
- Circle converts fiat to USDC. USDC may remain in your account briefly while payouts are prepared.
- You register approved payout addresses. Circle’s policy engine screens each address before it is eligible to receive funds.
- USDC is sent to payees onchain. Circle executes the crypto payout to the approved addresses.
Key API calls for payouts
Optional line of credit
Some agreements include a line of credit so USDC is available before every wire clears. This lets you initiate payouts without waiting for each wire to settle. Eligibility and terms depend on your agreement with Circle.When to use payouts
Choose the payout flow when you need to disburse USDC to external recipients: for example, paying out creators, suppliers, or partners who prefer to receive stablecoins. To try it, follow the Send Stablecoin Payouts quickstart. For details on how sub-accounts and the main wallet interact during payouts, see Sub-account architecture.Comparing payins and payouts
Integration considerations
- Circle operates the regulated infrastructure for custody and money movement. You integrate through the Managed Payments API.
- You can combine both flows in a single integration if your product requires bidirectional movement.
- Use the payin, payout, and balance reports Circle provides for reconciliation.
- For a hands-on walkthrough, see Quickstart: Receive stablecoin payins and Quickstart: Send stablecoin payouts.
- For sub-account setup and balance tracking, see Sub-account architecture.