These Terms govern your access to ZettaPay (the “protocol”, “service”, “we”), including this website, ZettaPay Cloud and its HTTP API, hosted checkout links, the embed widget and the SDKs. By opening a Cloud account or integrating any ZettaPay artifact, you (“you”, “merchant”) agree to these Terms.
1. Eligibility
- You must be 18 or older and legally able to enter contracts in your jurisdiction.
- You must not be located in, or operating from, a jurisdiction subject to comprehensive sanctions.
- You are responsible for ensuring the activities you transact are lawful in your jurisdiction.
2. The service — what it is and is not
- ZettaPay is non-custodial. Every payment — in Bitcoin, or in USDC / USDT on Base — settles directly from payer to merchant on-chain. We never take possession of funds, never hold keys and never sign transactions.
- ZettaPay is not a money services business, bank, money transmitter, or licensed payment institution.
- ZettaPay does not convert, hold or settle fiat currency.
- ZettaPay can be used in two ways: self-hosted, by running the open-source listener on your own infrastructure, or Cloud, where we run it for you. The self-hosted software is licensed under MIT and that license governs your use of it.
- Cloud is in early access. Accounts are self-serve at /app and features may change.
3. Merchant account
- You provide public key material only: a BIP-84 xpub for Bitcoin, and an xpub or a fixed receive address for Base. ZettaPay never requests a wallet connection or private key.
- You are solely responsible for the security of your wallet, seed phrase, and signing devices, and for supplying key material that belongs to a wallet you control.
- You will keep your contact email and webhook URL current and reachable.
- API keys are confidential. Treat them like passwords. Rotate immediately on suspected compromise.
4. Acceptable use
You agree not to use ZettaPay to facilitate:
- Activities prohibited by applicable law, including fraud, money laundering, terrorism financing, or sanctions evasion.
- Sale of regulated goods (firearms, controlled substances, restricted financial products) without applicable licenses.
- Adult content involving minors, non-consensual content, or any content depicting violence against people or animals.
- Phishing, malware distribution, or impersonation of other parties.
- Stress-testing or attacking the hosted service without authorization.
We may suspend or terminate accounts that violate this section, with or without notice. On-chain payments that have already confirmed cannot be reversed.
5. Fees
- No per-transaction fee. ZettaPay is never in the flow of funds and takes no percentage of any payment.
- Self-hosted: free, with no limits.
- Cloud: a flat monthly subscription by invoice volume, counted as invoices created per calendar month. Early-access pricing, subject to change: Free — up to 50 invoices / month, $0; Starter — up to 500 invoices / month, $19 / month; Pro — up to 5,000 invoices / month, $49 / month. Above that, contact us.
- When a plan's monthly cap is reached, creating new invoices is paused until the next calendar month or an upgrade. Invoices already created keep being watched, confirmed and delivered to your webhook.
- A new account starts on the Free plan. A paid plan is bought from the dashboard, either in crypto — a ZettaPay invoice that activates the plan for 30 days once confirmed, renewed by paying again — or by card, as a subscription that renews monthly on a page hosted by Stripe. A paid plan that is not renewed falls back to Free.
- Network fees are charged by the Bitcoin and Base networks, are paid by the payer, and do not go to ZettaPay.
The current plans are published at /pricing. We may change fees with at least 30 days' notice by email. Continued use after the notice period constitutes acceptance.
6. Refunds, chargebacks, and disputes
- On-chain transactions are final. There is no chargeback mechanism.
- ZettaPay has no refund function and cannot return a payment: it never holds the funds.
- Refund policy between merchant and payer is set by the merchant. If you intend to issue a refund, you send it yourself, from your own wallet, to the payer.
- Disputes between payer and merchant are resolved between those parties. We are not a party to commercial disputes.
7. Service availability
We publish component health at /status. We do not guarantee uninterrupted service. ZettaPay depends on the Bitcoin and Base networks and on third-party RPC providers; outages or congestion on those networks may delay confirmations and webhooks.
8. Webhooks and integration
- Webhook URLs must be served over HTTPS with a valid certificate.
- Webhooks are signed with HMAC-SHA256. You must verify the signature before acting on a webhook, and handle a repeated delivery of the same event safely.
- Failed deliveries may be retried. You should not treat an order as paid until you have verified a signed confirmation or checked the transaction on-chain yourself.
9. Intellectual property & open source
- The listener and official SDKs are released under MIT.
- The hosted Cloud infrastructure and brand assets remain proprietary.
- You may not use the ZettaPay name or logos in a way that suggests endorsement without our written permission.
10. Disclaimers
The service is provided on an “as is” and “as available” basis. To the maximum extent permitted by law, we disclaim all warranties, express or implied, including merchantability, fitness for a particular purpose, and non-infringement. Cryptocurrency carries inherent volatility and operational risk. You acknowledge that you have the technical competence to manage your own wallet.
11. Limitation of liability
To the maximum extent permitted by law, our aggregate liability arising out of or relating to these Terms or the service is limited to the greater of (a) the total fees you paid to us in the 12 months preceding the claim, or (b) USD $100. We are not liable for indirect, incidental, consequential, or punitive damages, including lost profits or business interruption, even if advised of the possibility.
12. Indemnification
You will defend and indemnify us against third-party claims arising from your use of the service, your content, your customer interactions, or your breach of these Terms.
13. Suspension & termination
- You may close your merchant account at any time by contacting us.
- We may suspend or terminate accounts for violation of these Terms, suspected abuse, or to comply with law.
- Sections 5 (Fees), 6 (Refunds), 9–14 survive termination.
14. Governing law & venue
These Terms are governed by the laws of the State of Delaware, USA, without regard to conflict-of-law principles. Disputes shall be resolved in the state or federal courts located in Wilmington, Delaware, except where local consumer-protection law grants you rights that cannot be waived.
15. Changes
We may update these Terms. Material changes will be announced on this page and by email at least 14 days before they take effect, except for changes required for legal or security reasons, which may be effective immediately.
16. Contact
Legal: open an issue at github.com/leandromaiam-code/zettapay — please keep personal details out of the public thread.
Support: /contact