WHMCS is a leading client management, billing & support solution for web hosts and service providers. By integrating the Haveno Payment Gateway, you can start accepting fully decentralized, private, peer-to-peer payments, without relying on any central payment processor.

πŸ”§ Plugin: HavenoPay for WHMCS

Status: In development
Version: 0.1.0 (Mocked Interface)

This plugin allows any WHMCS-based service provider to receive payment via the Haveno Network. Customers can settle invoices in Monero, fiat (via bank transfer), stablecoins, or any supported method through decentralized multi-hop payment routing.


πŸ“¦ Features

Feature Description
Decentralized Payments Accept payments from anyone, anywhere β€” no gateway, no middlemen.
Multi-format settlement Settle invoices using bank transfers, XMR, BTC, stablecoins, or even gift cards.
Signed Webhook Notifications Receive signed payment confirmations via the Haveno relay net (tamper-proof).
Invoice Matching Haveno creates a unique Offer-ID per invoice to guarantee invoice integrity.
WHMCS Module Settings UI Set accepted currencies, price oracles, offer timeout, and receive account details.
Refund Offer Support (Future) Optional refund flows using signed, bidirectional offers.
No KYC Required Preserve user and merchant privacy by eliminating third-party escrow or API calls.

πŸ”Œ How It Works (Technical Flow)

  1. Customer places order on your WHMCS-hosted site.
  2. WHMCS generates an invoice, and calls the havenopay.php payment module.
  3. The module:
    • Registers the invoice with Haveno
    • Creates a signed payment offer visible on the Haveno P2P network
    • Displays the Offer ID + amount + QR/URI for the customer
  4. Customer fulfills payment via their Haveno app (mobile or desktop).
  5. Once settled, a signed webhook is sent to your WHMCS install via your webhook.php.
  6. The invoice is marked paid automatically β€” no polling required.

βš™οΈ Configuration

# WHMCS Configuration (Mock Example)

[HavenoPay]
enabled = true
accepted_currencies = ["XMR", "USD_BANK", "USDT", "BTC"]
receive_account = "[email protected]"
offer_timeout_minutes = 60
webhook_secret = "supersecrethmac"
auto_confirm = true

πŸ–₯️ Admin UI (Mock Preview)

Setting Type Description
Enable HavenoPay Checkbox Toggle gateway availability
Accepted Currencies MultiSelect Define settlement formats you support
Offer Expiry Time Number How long until unpaid offers are purged
Webhook URL Text Your webhook.php endpoint to receive signed payments
Merchant ID Text Your Haveno node address
Public Key TextArea Your Ed25519 public key for verifying signature

πŸ” Webhook Verification

Every webhook contains:

{
  "invoice_id": "WHMCS-INV-000123",
  "amount": "28.50",
  "currency": "XMR",
  "offer_id": "HAV-OFF-XYZ123",
  "timestamp": 1720112841,
  "signature": "<base64-ed25519-sig>"
}
  • Signed using Haveno node’s developerPrivateKey
  • Verified in webhook.php via plugin's known merchant_pubkey
  • Ensures payment authenticity and zero spoofing

πŸ› οΈ Future Features

  • Auto Refund Offers for cancelled or partially fulfilled services
  • Dispute API for chargeback-resistant arbitration (via Haveno's DAO)
  • Recurring Payments via long-term locked offers with watch-only channels
  • Referral / Reseller Support tied to signed metadata payloads

πŸ”„ Development Roadmap

Milestone ETA Description
v0.1.0 - MVP Plugin August 2025 Manual config, webhook handling
v0.2.0 - UI Extension Sep 2025 Admin UI for Haveno integration
v0.3.0 - Refund Flow Q4 2025 Smart contract-style offer refunds
v1.0.0 - Public Release Q1 2026 Hardened, stable release

πŸ“Ž Get Involved

Interested in helping build the plugin? Join our dev channel: