Payment links you can share forever
Put one link on your site, in a post or on a printed QR at the counter. Every visit opens its own invoice, so payments never collide.
ZEC is $1222.54 on NEAR Intents at 20:45 UTC
Checkout for merchants whose customers want privacy. They pay from a shielded Zcash wallet. You receive the exact invoice amount in dollars, on the chain you already use.
Lona is payment software, not a bank or exchange. Conversions are carried out by NEAR Intents. Lona never holds your funds.
Send exactly
3.216 ZEC
Price held for 20:00. Send from your shielded balance in one transaction.
Get paid on
Your customer never touches a bridge, and you never touch ZEC.
Privacy claims in payments are easy to overstate. This is exactly what is public and what is not for one Lona payment, so you can tell your customers the truth.
Zcash shielded pool
The customer's wallet, balance and past payments stay encrypted.
Deposit address
Zcash deposits to the swap network use transparent addresses, so the amount and time are public.
Your payout on Base
A normal stablecoin transfer to your wallet, like any other on Base.
Invoices, links, QR, payouts and webhooks. No balance to manage, no ZEC on your books.
Put one link on your site, in a post or on a printed QR at the counter. Every visit opens its own invoice, so payments never collide.
Each invoice draws its own pattern as the payment moves. Customers can see where their money is.
Choose USDC on Base, Arbitrum, Ethereum or Solana, or USDT on Ethereum. Change it any time.
Every change reaches your server signed with HMAC-SHA256, and is retried for about a day if you are down.
Test mode simulates payments, underpayments and refunds, with the same webhooks as live.
Create an invoice, send the customer to its hosted page, fulfil on the webhook. The same three steps in test mode and live.
const res = await fetch(`${LONA_URL}/api/v1/invoices`, {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.LONA_SECRET_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
amount: "128.00",
description: "Order 1042",
reference: "order_1042",
}),
});
const invoice = await res.json();
redirect(invoice.hosted_url);Pricing
0.5% per payment
Added to your customer's quote. You receive the full invoice amount, with nothing to reconcile.
No. Each customer pays a deposit address on the NEAR Intents swap network, which sends the converted stablecoin straight to the payout wallet you set. Lona creates the quote, tracks it and tells your server when it lands.
The ZEC amount is fixed when the customer opens checkout and held for 20 minutes. You always receive the exact invoice amount. If the hold expires, the customer gets a fresh price.
If less than the quoted amount arrives, the conversion does not complete and the ZEC goes back to the refund address. You get an invoice.underpaid webhook, then invoice.refunded.
Any Zcash wallet that can send from a shielded balance to a transparent address. On mobile, checkout opens the wallet directly with the address and amount filled in.
The customer's wallet, balance and history are private. The ZEC amount sent to the deposit address and your USDC payout are public, as shown above. We say this plainly so you can tell your customers the truth.
Yes. Test mode simulates every outcome, including underpayments and refunds, and sends the same webhooks as live mode.
Start in test mode. Go live when your payout wallet is set.