- 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-wallet 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
| Action | Endpoint |
|---|---|
| Create a payment intent | Create payment intent (Payment Intents API) |
| List payments | List payments (Payments API) |
| Burn USDC and withdraw fiat | Create account withdrawal (Fiat Burns API) |
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-wallet 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
| Action | Endpoint |
|---|---|
| Set up wire instructions | Create account wire account (Wires API) |
| List fiat deposits | List account deposits (Fiat Deposits API) |
| Register payout address | Create address book recipient (Address Book API) |
| Send USDC payout | Create payout (Payouts API) |
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-wallets and the main wallet interact during payouts, see Sub-Wallet Architecture.Comparing payins and payouts
| Dimension | Payins (USDC-to-fiat) | Payouts (fiat-to-USDC) |
|---|---|---|
| Direction | USDC in, fiat out | Fiat in, USDC out |
| Funding source | Payer sends USDC onchain | You wire fiat to Circle |
| Settlement output | Fiat credited to your bank | USDC sent to payee addresses onchain |
| Typical use case | Merchant checkout, collections | Creator payouts, supplier payments |
| Key APIs | Fiat Burns | Wires, Fiat Deposits |
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-wallet setup and balance tracking, see Sub-Wallet Architecture.