EN
Hosting billing

Crypto payments for BILLmanager

Accept crypto in BILLmanager. The client picks SnapEX Pay (crypto) when topping up or paying an order, pays on the SnapEX Pay page in USDT on TRON, Ethereum, BSC and other networks, or in other coins converted to USDT, and the payment is credited in BILLmanager automatically.

Download the module

Free. Version 1.0.0.

What it does

  • No wallets or nodes to run: funds arrive in your SnapEX Pay merchant balance.
  • Three independent ways a payment gets credited: the signed webhook, the client returning from the payment page and the periodic check (checkpay). A lost webhook never leaves a paid payment uncredited, and a payment is never credited twice.
  • The amount is always re-read from the SnapEX Pay API; the webhook body alone never credits anything.
  • Partial payments are not credited automatically: the log asks you to review them.
  • Test mode: test invoices confirm by themselves without real money and are never credited once test mode is off.

Install

  1. On the BILLmanager host, as root: tar xzf snapexpay-billmanager-1.0.0.tar.gz, cd snapexpay-billmanager-1.0.0, sh install.sh. It copies the module into /usr/local/mgr5, adds a 5-minute checkpay cron (/etc/cron.d/snapexpay) as a safety net and restarts BILLmanager.
  2. In the SnapEX Pay merchant cabinet create an API key with the invoices.read and invoices.write scopes.
  3. BILLmanager β†’ Provider β†’ Payment methods β†’ Add β†’ SnapEX Pay (crypto). Currency: USD. Paste the API key; saving checks it against SnapEX Pay.
  4. Webhook (recommended): in the cabinet set the webhook URL to https://<your billing domain>/mancgi/snapexpayresult and paste the whsec_… secret into Webhook secret.
  5. Clients paying in other currencies: BILLmanager converts the amount into the payment method currency (USD) at its exchange rates, so keep the USD rate up to date.
  6. Test first: a separate payment method with Test mode on, available only to a test client (Payment methods β†’ restrictions by client group). Then turn test mode off or delete it.

Settings

API keyFrom the SnapEX Pay cabinet.
Webhook secretwhsec_… from the cabinet webhook settings. Without it payments are still credited when the client returns and by the periodic check.
Client pays the network feeOff: the client pays exactly the payment amount. On: the fee is added on top.
Payment window, minutesHow long the SnapEX payment page stays valid (1–1440, default 60). Opening the payment again later creates a fresh page.
Test modeTest invoices without real money. Test payments are never credited once this is off.
API URLLeave empty.

Questions

Which BILLmanager editions are supported?

BILLmanager 6, any edition. The module needs only python3 3.6+ with the standard library on the BILLmanager host.

What happens if the webhook does not arrive?

The payment is still credited when the client returns from the payment page or by the periodic check that runs every 5 minutes. A payment is never credited twice.

My clients pay in roubles or other currencies. Will it work?

Yes. The payment method is in USD, and BILLmanager converts the amount at its exchange rates; keep the USD rate up to date.

What if the client sends less than required?

If the client does not top up in time, nothing is credited, and the log says "PARTIAL payment β€” review in SnapEX Pay and credit manually".

What if the client does not pay in time?

The payment stays "In payment" so the client can try again; a day after the last SnapEX invoice expired it is canceled.

How do I remove the module?

Run sh install.sh --uninstall. Payment history stays in var/snapexpay.sqlite. Everything the module does is logged in /usr/local/mgr5/var/pmsnapexpay.log.

Ready to accept crypto?

Create a merchant account, get an API key and connect the module. 1% per payment, no monthly fee.