Documentation Index
Fetch the complete documentation index at: https://coinvoyage-3c99945b.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
PayKitProvider is the top-level React context provider for the CoinVoyage PayKit SDK. Wrapping your application with it enables the PayButton component and the usePayStatus hook anywhere in the component tree. It connects to the CoinVoyage API using your apiKey, tracks pay order state, and exposes global configuration that applies to every payment flow on the page.
Setup
PlacePayKitProvider inside WalletProvider and QueryClientProvider. This nesting order is required.
Configuration options
Your organization’s API key, obtained from the Developers tab of the CoinVoyage dashboard. This key is safe to expose in client-side code — it identifies your organization but does not grant write access without a corresponding API secret.
Environment to connect to. Accepted values:
"production"— connects to live chains and production APIs."development"— exposes additional testnet chains for integration testing.
Color scheme for the payment modal. Accepted values:
"light", "dark", or "auto". When set to "auto", the modal follows the user’s OS preference.Select a predefined visual style for the payment modal. Available themes:
autoweb95retrosoftmidnightminimalroundednouns
Override specific modal styles to match your branding. Accepts a theme object with CSS-style values. Takes precedence over the
theme preset. Note that embedGoogleFonts in options does not apply to custom themes.When
true, the SDK logs debug information to the browser console. Useful during development and integration testing.Callback invoked when a wallet connects. Receives an object with:
address(string) — the connected wallet addresschainId(number) — the chain the wallet connected toconnectorId(string) — identifier for the connector usedtype(string) — wallet type (e.g., EVM, Solana)
Custom validation function run when a wallet connects. Use this to enforce additional requirements — for example, to block connections from addresses on a deny list — before the connection is accepted by the SDK.
Callback invoked when a wallet disconnects.
Global options applied across all
PayButton components and payment flows managed by this provider. See PayKitOptions below.PayKitOptions
Theoptions prop accepts a PayKitOptions object that controls language, UI visibility, fonts, and experimental features. Every field is optional.
Sets the display language for the payment modal. Use a value from the exported
Languages enum.When
true, suppresses tooltip overlays throughout the modal.When
true, hides the question mark help CTA inside the modal.When
true, removes the “no wallet” call-to-action that appears when no wallet is connected.When
true, hides the “Recent” badge shown next to recently used wallets.Controls how WalletConnect is presented. Accepted values:
"link"— show only a deep link"modal"— show only the QR code modal"both"— show both options
When
true, automatically embeds the Google Font associated with the selected built-in theme. Has no effect when using a customTheme.Adds a disclaimer message to the bottom of the payment modal. Accepts a plain string or a React node for richer formatting.
Enables the Node.js
Buffer polyfill for bundlers that do not provide Node polyfills by default (common in Vite and other non-Next.js setups). Defaults to true.Amount of background blur (in pixels) applied while the payment modal is open. Set to
0 to disable blur.When
true, the order is considered confirmed as soon as the user’s transaction validates on-chain, before the destination transfer completes. This is not permitted for deposit pay orders, where confirmation requires destination finality.Opt in to card payment support inside the modal. This feature is disabled by default while CoinVoyage gathers feedback. Your organization must also be approved before card payments are available.