> ## Documentation Index
> Fetch the complete documentation index at: https://developers.circle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CPN managed payments

> CPN Managed Payments is a turnkey stablecoin solution in which Circle takes on licensing, compliance, minting, and global settlement.

CPN Managed Payments gives partners stablecoin settlement without needing
in-house custody, compliance, or onchain systems. Circle holds assets, runs
compliance, and does the onchain work. You call APIs for sub-wallets, funding,
withdrawals, and payins or payouts. You stay in fiat at the edge. Payment
platforms and banks can offer stablecoin payments under their brand without
custody or compliance builds in-house. See the
[Managed Payments API](#api-summary).

## Key features

* **Fiat funding and withdrawals:** Send or receive fiat over wire and other
  methods Circle supports.
* **Stablecoin payins and payouts:** Send and receive USDC on
  [supported blockchains](/cpn/references/blockchains/supported-blockchains).
  Payins credit each sub-wallet; send payouts from each sub-wallet or the main
  wallet when enabled.
* **Merchant sub-wallets:** Give each merchant or customer a separate stablecoin
  account for clear bookkeeping and audit trails. Use the Accounts API to list,
  create, and fetch these accounts. Your agreement's onboarding model determines
  whether you or Circle provisions them.
* **Webhook notifications:** Receive webhook events for payment intents,
  payments, address book recipients, payouts, and credit transfers. See
  [Webhook events](/cpn/managed-payments/references/webhook-events) for event
  types and payloads.
* **Line of credit and reporting:** Borrow USDC on credit when your agreement
  allows it. Daily and monthly payout and balance reports are available.
* **Two onboarding models:** Your Managed Payments agreement with Circle sets
  which model you use.
  * **Direct:** Circle works directly with your merchants/customers. You collect
    Know Your Business (KYB) of your merchant and share it with Circle. Circle
    creates sub-wallets for the merchants/customers after KYB approval.
  * **Intermediary:** Circle doesn't have to onboard your underlying merchants
    or customers. You create sub-wallets for each merchant or customer with the
    APIs.

## How it works

<Steps>
  <Step title="Onboard and obtain API access">
    You join through Circle's invitation and sign up with a Managed Payments
    account. Circle assigns role-based permissions to your API keys, controlling
    access to specific capabilities such as sub-wallets, wires, stablecoin payouts,
    reports, and balance views. Circle configures these roles during onboarding.
  </Step>

  <Step title="Create merchant sub-wallets">
    Creating merchant sub-wallets depends on the onboarding process you agree on
    with Circle.

    * **Direct onboarding:** You collect end-merchant Know Your Business (KYB)
      information and share it with Circle through a secure offline channel. Circle
      creates sub-wallets for those merchants on your behalf.
    * **Intermediary model:** Use the
      [accounts API](/api-reference/cpn/managed-payments/accounts/create-account)
      to create the sub-wallets you need for your merchants. Sub-wallets keep
      balances separate for tracking and reporting.
  </Step>

  <Step title="Run payin and payout flows">
    * **Payins:**
      1. [Create a continuous payment intent](/api-reference/cpn/managed-payments/payment-intents/create-payment-intent)
         for third-party payins so each sub-wallet has a stable USDC receive address.
      2. After USDC is confirmed, use
         [Fiat Burns](/api-reference/cpn/managed-payments/withdrawals/create-account-withdrawal)
         to withdraw USDC to fiat in your bank account.
    * **Payouts:**
      1. Use the
         [Wires API](/api-reference/cpn/managed-payments/wires/create-account-wire-account)
         to add bank accounts and wire instructions, then send fiat so Circle credits
         USDC.
      2. Use the
         [Payouts API](/api-reference/cpn/managed-payments/payouts/create-payout)
         to send USDC onchain to payees you register and approve in the
         [Address Book](/api-reference/cpn/managed-payments/address-book/create-address-book-recipient).
    * **Line of credit (optional):** If your agreement supports it, you can borrow
      USDC before fiat settles.
  </Step>
</Steps>

## API summary

| Area                                                                                    | Purpose                                                                                                       |
| :-------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------ |
| [Accounts API](/api-reference/cpn/managed-payments/accounts/list-accounts)              | Create sub-account wallets for merchants. List and get stablecoin accounts for self and merchant sub-wallets. |
| [Payins](/api-reference/cpn/managed-payments/payment-intents/create-payment-intent)     | Payment intents and Payments for payin flows.                                                                 |
| [Fiat Burns](/api-reference/cpn/managed-payments/withdrawals/create-account-withdrawal) | Withdraw USDC to fiat in your bank when enabled.                                                              |
| [Payouts](/api-reference/cpn/managed-payments/payouts/create-payout)                    | Onchain USDC sends plus funding, Address Book, and Line of Credit when enabled.                               |
| [Reporting](/api-reference/circle-mint/account/request-report)                          | Request daily and monthly payin, payout, and wallet balance reports.                                          |

For more details, see the
[Managed Payments API reference](/api-reference/cpn/managed-payments/accounts/list-accounts).

## Get started

Pick a quickstart to walk through a managed payment flow:

<CardGroup cols={2}>
  <Card title="Receive Stablecoin Payins" icon="arrow-down-long" href="/cpn/managed-payments/quickstarts/receive-stablecoin-payins">
    Payment intents, inbound USDC, and settlement to fiat for your use case.
  </Card>

  <Card title="Send Stablecoin Payouts" icon="paper-plane" href="/cpn/managed-payments/quickstarts/send-stablecoin-payouts">
    Sub-wallets, funding, and USDC payouts for your managed payments use case.
  </Card>
</CardGroup>
