Accept shielded Zcash payments. Non-custodial. Set up in minutes.
CipherPay is a payment gateway for Zcash (ZEC) — the privacy-focused cryptocurrency. It lets any website, app, or physical store accept ZEC payments the same way they would use Stripe or PayPal, except there is no intermediary holding your money.
When a customer pays, the ZEC goes directly to your wallet. CipherPay never touches your funds. It watches for incoming payments using your viewing key (a read-only key that can see payments but cannot spend them), and notifies your server when a payment arrives.
All payments are shielded — meaning the amount, sender, and recipient are encrypted on-chain. Nobody can see who paid whom or how much, except you and your customer.
The payment flow is the same whether you use the API, WooCommerce, or product links. Here is what happens behind the scenes:
Step 1: When a customer is ready to pay, you (or your plugin) call the CipherPay API with the price. CipherPay converts it to ZEC at the current exchange rate, generates a unique payment address, and returns a checkout URL.
Step 2: The customer is redirected to a hosted checkout page. They see a QR code and a payment address. They scan it with their Zcash wallet (like Zashi or YWallet), and the transaction is sent.
Step 3: CipherPay continuously monitors the Zcash network. When the transaction appears in the mempool (usually within 5-10 seconds), the checkout page updates to "Payment detected." When it gets confirmed in a block (~75 seconds), the status changes to "Confirmed."
Step 4: CipherPay sends a webhook (an HTTP POST request) to your server, telling you the payment is confirmed. You use this to fulfill the order — update the order status, send a confirmation, ship the product, etc.
Pick the path that matches your setup. Each guide walks you through end-to-end, from account creation to your first real payment.
| USE CASE | BEST FOR | TIME |
|---|---|---|
| WooCommerce store | WordPress merchants — install a plugin, no code | ~10 min |
| Custom website or app | Developers integrating via REST API | ~30 min |
| Product pages (no-code) | Sell a few items — create a product, share a link | ~5 min |
| In-person POS | Events, pop-ups, physical stores — phone or tablet | ~5 min |
You need three things before you can accept payments. The setup takes about 5 minutes.
uview (mainnet) or uviewtest (testnet).u1...) from your wallet. This is what customers pay to. CipherPay derives unique sub-addresses from your UFVK for each invoice, so every payment gets its own address.