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.

Guides

Public SDK

Learn how to use the ICPay SDK on the frontend with your publishable key.

Read more

Private SDK

Understand how to use the ICPay SDK on the server with your secret key.

Read more

Widget Installation

Learn how to install and configure the ICPay Widget components.

Read more

Webhooks

Configure webhooks to receive real-time payment notifications.

Read more

Widget Components

Tip Jar

Accept tips and donations from your audience with a simple, elegant interface.

Premium Content

Sell access to exclusive content with secure paywall protection.

Coffee Shop

Create a digital storefront for selling digital products and services.

Donation Thermometer

Track and display progress towards fundraising goals with visual feedback.

Was this page helpful?