PRL payment toolkit

Accept Pearl payments

Payment buttons, shareable invoices, and a WooCommerce plugin for the Pearl blockchain. Every invoice gets a fresh BIP-86 Taproot address derived from your account xpub — your keys never leave your wallet, and this page never sees them. Payments are verified live against Blockbook.

Mainnet is live. Real PRL will move if customers pay a mainnet invoice. Practice on testnet first — switch networks in Settings.
PRL/USD … fetching…
Invoice #1042
25.00 PRL
≈ … USD
prl1p62v09vuzyd8kdz9l23jaf3kph4wwx6jqcmhkkhg8lhr2qlxky8psu3zw9d
1 confirmation required Blockbook · live
⚙️
Configure

Merchant settings

Stored only in this browser (localStorage). Nothing is uploaded anywhere.

No xpub configured — paste one to enable fresh addresses.
💳
Embed

Payment button generator

Configure a button, preview the checkout, then paste the snippet into any website.

🧾
Bill

Invoice creator

Build a shareable invoice link with QR code, countdown, and live payment tracking.

🧰
Integrate

SDK & WooCommerce

pearl-pay.js SDK

Dependency-free checkout buttons, modals, QR codes, and payment verification for any website.

<script src="pearl-pay.js"></script>
<div id="pay"></div>
<script>
PearlPay.createButton("#pay", {
  address: "prl1p…",      // fresh invoice address
  grains: "150000000",    // 1.5 PRL
  label: "Order #123",
  requiredConfirmations: 2,
  onState: (s) => console.log(s),
});
</script>

WooCommerce plugin

Full WC_Payment_Gateway: xpub settings, per-order Taproot addresses derived in PHP, order-page QR + polling, server-side confirmation checks, address-pool management.

PHP 7.4+ with GMP. No private keys anywhere — the plugin derives public addresses from your account xpub.

🔒
Stay safe

Security notes

  • Fresh address per invoice. Reusing addresses links your customers' payments together. This toolkit derives m/86'/coin'/0'/0/index per invoice — bump the index (or scan) every time.
  • Only confirmed counts. detected means seen on the network (0-conf) — fine for low-value goods, not for anything expensive. Set required confirmations to match the order value.
  • An xpub is public data. Anyone with it can see all your invoice addresses (but can never spend). Keep your seed phrase offline regardless.
  • Verify the domain. Invoice links are only trustworthy from your own site. Bookmark this page; beware lookalike domains.
  • Testnet first. Get free tPRL from the faucet, then run a full payment on testnet before mainnet.