All integrations

SETUP GUIDE

CoinVoyage for WordPress

Add PayKit and SwapKit to WordPress pages with shortcodes.

Requirements

Your site needs WordPress 6.5+ and PHP 8.1+. A CoinVoyage public API key connects the widgets to your account. Standalone widgets do not require WooCommerce.

Get your CoinVoyage API key

Follow the API key setup guide to create your public API key.

PayKit supports crypto and eligible card payments. SwapKit is for token swaps.

01

Install the plugin

Download the ZIP. In WordPress, go to Plugins → Add New → Upload Plugin, choose the ZIP, then select Install Now and Activate.

Download WordPress widgets
02

Add your public API key

Open Settings → CoinVoyage. Enter your Public API key and save your settings.

If needed, add a WalletConnect project ID for your wallet setup. Standalone widgets use the public API key.

03

Place a widget on your page

Add a Shortcode block to your page. Use this for SwapKit:

Copy and paste
[coinvoyage_swap mode="dark"]

Or show PayKit for an existing order:

Copy and paste
[coinvoyage_pay order_id="YOUR_EXISTING_ORDER_ID"]

Customize the payment button with button_text. This also works with deposit shortcodes; leaving it blank keeps “Pay”.

Copy and paste
[coinvoyage_pay order_id="YOUR_EXISTING_ORDER_ID" button_text="Pay now"]

Replace the order ID. For store purchases, follow the WooCommerce guide to create an order for every checkout.

Accept a direct deposit instead

For a standalone deposit, set the chain, amount, and recipient:

Copy and paste
[coinvoyage_pay chain="1" amount="0.01" address="YOUR_RECIPIENT_ADDRESS"]

This is a deposit widget. It does not automatically verify a product purchase.

Customize widget appearance

Open Settings, then CoinVoyage for separate PayKit and SwapKit appearance settings. Set colors and radius, or enter Advanced theme JSON using the SDK properties. Leave fields empty to keep the defaults.

Override settings for one shortcode:

Copy and paste
[coinvoyage_swap accent="#d6296f" accent_hover="#b8225f" accent_text="#ffffff" radius="16px"]

The theme attribute accepts a JSON object. Advanced values override matching basic controls. Custom colors apply to both light and dark modes; load custom fonts on your site.

Copy and paste
[coinvoyage_swap theme='{"surface":"#ffffff","text":"#111827"}']
04

Test your setup

Preview the published page and test the wallets your customers use, including mobile. Make sure any WalletConnect configuration includes your site's origin.

Local integration checks pass; live provider payment and wallet verification are still pending.

Payment options

These controls require integration version 0.1.6 or later. The downloads on this page are version 0.1.7. Update your installed plugin before using these settings.

Open checkout on Pay with card

Open Settings → CoinVoyage → Payment modal. Set Payment method to Pay with card. You can also choose Wallet, Deposit address or Default to keep the normal starting screen.

Copy and paste
[coinvoyage_pay order_id="YOUR_EXISTING_ORDER_ID" payment_method="CARD" close_on_success="true" reset_on_success="false"]

Shortcode attributes override saved settings for one widget. Boolean attributes accept true/false or 1/0; an empty value restores the SDK default. These settings apply only to PayKit.

Card payments must be enabled and available for your account and order. If unavailable, PayKit shows payment method selection. Choosing a method selects the first screen when the modal opens. Customers still click the payment button to open it. Enable Card payments in the plugin settings.

Close on success closes the modal after payment; Reset on success clears the widget's payment state. Leave Default selected to keep SDK defaults. A new purchase still needs a fresh server-created order; resetting a widget does not create one.

Configure PayKit options and debug mode

Open Settings → CoinVoyage → PayKit provider and enter Provider options JSON. For example:

Provider options JSON
{"language":"de-DE","hideTooltips":true,"overlayBlur":4}

Use Debug mode for SDK diagnostics; leave it off for normal use.

Replace the saved options for one shortcode; an empty object clears inherited provider options:

Copy and paste
[coinvoyage_pay order_id="YOUR_EXISTING_ORDER_ID" pay_options='{"language":"de-DE","hideTooltips":true,"overlayBlur":4}' debug_mode="false"]
OptionValue
languageA supported locale, such as en-US, de-DE or fr-FR.
hideTooltips, hideQuestionMarkCTA, hideRecentBadgetrue or false to hide each UI element.
walletConnectCTA"link", "modal" or "both".
disclaimerPlain text, or null to clear it. HTML is displayed as text.
overlayBlurA finite number of zero or greater.
optimisticConfirmationtrue or false. Browser completion still requires server verification.
bufferPolyfilltrue or false. Leave unset unless you need to control the Buffer polyfill.
experimentalFeatures.cardPaymentstrue or false. An explicit card-payments setting takes precedence.

Omit options to keep SDK defaults. Unknown fields and invalid values are rejected. hideNoWalletCTA is accepted by PayKit but currently has no visible effect. The plugin's Card payments setting takes precedence over experimentalFeatures.cardPayments.