Cut 1.0% Fee in Half · Restore TRON USDT & Solana + CEX QR

Migrer depuis Coinbase Commerce to XPayr (0.5% + TRON & Solana)

Cut your payment fee by 50% (1.0% -> 0.5%) and immediately unlock TRON TRC-20 USDT, Solana SPL, BNB Chain, TON, Circle Arc, and QR direct d'exchanges withdrawals that modern Coinbase Commerce dropped.

Cutover Time~10 Minutes (Parallel Safe)
Coinbase Commerce Fee1.0% protocol fee (restricted asset/network set)
XPayr Frais de PasserelleFlat 0.5% ($0/mo · $0 Sweep)
XPayr Modèle de garde100 % Non dépositaire (99.5% Direct)

Why Engineering & Finance Teams Switch Away From Coinbase Commerce

Coinbase Commerce removed legacy UTXO/unmanaged deposit flows and lacks native TRON TRC-20 USDT support.
1.0% fee is double XPayr flat 0.5% non-custodial settlement split.
Buyers withdrawing directly from Binance or Bybit without a Web3 wallet struggle with EVM-only smart-contract prompts.

Field-by-Field API & Webhook Mapping (Coinbase Commerce → XPayr v1)

Keep your existing database order schema intact — map these 6 fields to cut over cleanly.

Integration Layer Coinbase Commerce (Legacy) XPayr Non-Custodial v1
Create Charge / Session POST https://api.commerce.coinbase.com/charges (X-CC-Api-Key) POST https://xpayr.com/api/v1/payments (Bearer sk_live_...)
Pricing Object pricing_type: "fixed_price", local_price: { amount, currency } amount: "49.00", currency: "USD"
Custom Order Context metadata: { customer_id, order_id } order_id + metadata: { customer_id, workspace_id }
Redirect Checkout URL data.hosted_url data.checkout_url (Hosted or embedded Modal SDK)
Webhook Header X-CC-Webhook-Signature X-XPayr-Signature (HMAC-SHA256)
Confirmed Event Type event.type === "charge:confirmed" event === "payment.completed" / "payment.underpaid_accepted"

Drop-In Migration Adapter (TypeScript / @xpayr/node-sdk)

Copy-paste replacement ready for Testnet (sk_test_...) and Mainnet (sk_live_...).
import { XPayrClient } from '@xpayr/node-sdk';

const xpayr = new XPayrClient({ apiKey: process.env.XPAYR_SECRET_KEY });

/**
 * Replaces Coinbase Commerce POST /charges while preserving metadata & redirect UX.
 */
export async function createReplacementCharge(order) {
  const session = await xpayr.payments.create({
    amount: String(order.totalUsd),
    currency: 'USD',
    order_id: order.id,
    success_url: `https://store.example.com/orders/${order.id}/complete`,
    cancel_url: `https://store.example.com/checkout`,
    metadata: {
      user_id: order.userId,
      migrated_from: 'coinbase_commerce'
    }
  });

  return { checkoutUrl: session.checkout_url, sessionId: session.session_id };
}

4-Step Zero-Downtime Canary Cutover Checklist

1

Connect non-custodial wallets & generate sk_test_ API keys

Register at /merchant/register, paste your destination EVM, Solana, TRON, or multisig wallet addresses, and generate a free API Testnet key.

2

Deploy the X-XPayr-Signature HMAC-SHA256 webhook adapter

Add the raw-body HMAC-SHA256 verification handler alongside your existing Coinbase Commerce callback endpoint and test events in /tools/webhook-tester.

3

Canary 10%–25% of live checkout sessions in parallel

Route a slice of live crypto orders to POST /api/v1/payments (or enable the XPayr storefront plugin) to verify instant règlement direct de 99.5% sur portefeuille.

4

Cut over 100% of traffic & export clean ERP ledgers

Switch primary crypto checkout routing to XPayr, withdraw any remaining custodial float from Coinbase Commerce, and export QuickBooks/Xero CSVs via /accounting.

Questions fréquentes — Switching From Coinbase Commerce

Do Coinbase Wallet and Base USDC users still get 1-click checkout on XPayr?

Yes! XPayr natively supports Coinbase Wallet & Passkey Smart Wallets on Base Mainnet (/wallets/coinbase-wallet) with sub-$0.01 gas and ERC-2612 Permit sans gazs — at 0.5% instead of 1.0%.

Does migrating to XPayr restore TRON TRC-20 USDT and Binance QR payments?

Immediately. Connect your TRON address in XPayr Dashboard and customers can pay via TronLink or direct Binance/Bybit/OKX TRC-20 withdrawals.

How similar is X-XPayr-Signature to X-CC-Webhook-Signature?

Both compute a standard hex HMAC-SHA256 digest over the raw HTTP request body, making webhook cutover a 3-line header and event-name update.

Explore All 10 guides de migration fournisseurs