Welcome to ICPay Docs
Use the ICPay SDK to accept payments from users' wallets and manage your account operations. Choose between our Public SDK for frontend payment flows, Private SDK for server-side account management, or Widget Components for quick payment UI integration. ICPay is multichain: Internet Computer, EVM, and Solana.
Getting started
The ICPay SDK ships as a single package that supports two usage modes. Use the public SDK on the frontend with your Publishable Key; use the private SDK on the server with your Secret Key.
Public SDK (frontend): Initialize with publishableKey for typical tasks like getting verified ledgers, resolving canister IDs, price calculation, and initiating payments from the user's wallet via createPayment/createPaymentUsd.
Private SDK (server): Initialize with secretKey for account details, payment history, transactions, ledgers with prices for your account, webhook event lookups, and other server-side operations.
Widget Components: For quick payment UI integration, use our framework-agnostic Web Components that let you accept payments without building UI flows from scratch. Perfect for tips, premium content, donation thermometers, and shop items.
What’s new
- Solana chain and tokens are now supported across SDK and Widget.
- Relay payments: accept and forward funds directly to your per‑chain recipient addresses. See Relay payments.
- X402 v2: ICPay includes its own facilitator for X402 flows (IC and EVM). See X402 payments.