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.
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.