Skip to main content
Payments require handling sensitive data. The code examples below demonstrate the integration pattern and should not be used in production as-is. In production, store sensitive information such as API keys and private keys in a secrets manager or vault.
USDC is one of the most-used stablecoins on Polygon Chain. Low transaction costs on Polygon make it a practical choice for USDC payments, including micro-payments and high-volume payment flows. Circle provides full USDC documentation, including SDKs and sample applications. Two integration paths are available: native USDC transfer using ERC-20, and cross-chain transfer using Circle’s Gateway.

Native USDC transfer

Native USDC on Polygon Chain is an ERC-20 contract that uses the standard approve/transfer pattern.

Gateway integration (cross-chain)

Circle Gateway aggregates USDC balances across any supported chain. Users deposit USDC into the Gateway Wallet (not an ERC-20 address). Once deposited, they can send USDC to any supported chain using the Gateway. For more details on setting up a Gateway balance, see Circle’s documentation.

Prerequisites

Building production payment products

The code on this page shows direct USDC transfers using viem. For production payment products that need fiat on-ramps, off-ramps, compliance, and orchestration, build on the higher-level Open Money Stack API: