We build Plaxswap, a crypto payment gateway, and this guide first appeared in our help center. The steps use our tools as the example, but the checklist (pick coins and networks, test with fake money, verify webhooks, wait for settlement) applies to any gateway.
There are three usual ways to do this: a payment link, a plugin for your shop software, or a checkout you connect through an API. You could also post a wallet address on your page. It's free, but you can't tell which customer sent what, so matching coins to orders turns into guesswork.
Choose your coins first
Start with what you want to end up holding. Stablecoins such as USDT and USDC aim to stay worth one US dollar, so a $100 sale should still look like $100 next week. Bitcoin, Ether and Litecoin can rise or fall after you're paid.
Check which network your customers use too. USDT on Tron and USDT on Ethereum are separate, and coins sent on the wrong network usually can't be recovered. Our guide to USDT payments explains why. The full list is on the supported coins page, and accepting USDT and accepting Litecoin each go through one coin with real numbers.
Pick the setup that fits your site
- No website, or only a few invoices a month? Use a payment link. You set the exact amount and send the link. There's no account and no code.
- Running WooCommerce or a XenForo forum? Install our plugin or add-on. For WHMCS, ask support for the module, which is still waiting for approval on the WHMCS Marketplace.
- Built your own site? Use the hosted checkout. Your server creates a payment through the API and sends the customer to our checkout page.
Set up a WooCommerce store
- Install Plaxswap Crypto Payments for WooCommerce and activate it.
- Open WooCommerce, then Settings, Payments and Plaxswap.
- In your merchant account, open Developers, then API keys, and make a test key. Paste it into the plugin, and leave test mode on.
- Copy the callback URL the plugin shows you. In your merchant dashboard, open Developers, then Webhooks, paste that exact address and choose Save. Choose Make a new secret and paste the signing secret into the plugin.
- Place a test order while signed in as a store admin. Check the checkout, the paid status and the payment details before you switch to live keys.
Our WooCommerce plugin page has the full steps, what the plugin does to each order and what it can't do.
Connect a custom site
Open a merchant account with Google or Telegram sign-in, finish the business profile and turn on your authenticator. Then open Developers: make a test key under API keys, and under Webhooks save your callback URL and choose Make a new secret. Each key and secret is shown once, so save them on your server.
Your server sends the price and your order number to POST /api/v1/payments and gets back a checkoutUrl for the customer. When the payment settles, we send a signed payment.paid webhook.
Check the x-px-signature header against the raw body, and refuse timestamps older than 5 minutes. A webhook can also arrive twice, because failed deliveries are retried, so use the event id to ignore repeats. Read the payment back from the API before you ship anything.
Test it before real money moves
A test key never moves real coins. The checkout shows a test banner and a pretend address, with buttons that act out each outcome. Try paid, partly paid and expired, and see what your site does with each one. Then swap in the live key.
What can go wrong
- A customer sends too little. The payment shows as partly paid, and they can send the rest while it's open.
- Coins arrive late. They can still reach you up to 24 hours after the payment expires, marked late, so don't write off an expired order straight away.
- You ship too early.
confirmingmeans the coins have arrived but aren't settled, so wait forpaid. - A customer wants a refund. Crypto can't be pulled back, and once the coins reach your own wallet, any refund is yours to send. Say how you handle refunds on your site.
What it costs
On the gateway, your customer pays the 1.5% platform fee plus the exchange and network costs in their quote. You pay a 0.3% fee and a network fee when you withdraw from your merchant balance to your own wallet. On a payment link, the person paying covers the fee. Every figure is on the fees page, and there's a comparison with NOWPayments if you're shopping around.
Check the rules where you operate
Whether you can take crypto, and how it's taxed, depends on your country, so ask an accountant or lawyer if you aren't sure. Our merchant terms bar gambling, adult content and financial services unless you're licensed for them where you operate. Payments are also closed in some countries, listed on the country page.
Top comments (0)