Name a coin and you get an address the customer must pay in that coin; name none and you get a hosted page where they pick. Everything else — status, catalogue, QR codes — supports those two. Amounts are quoted in fiat and converted, so you charge in EUR and receive crypto.
A server for Bitnovo Pay's point-of-sale API. It creates a payment, hands back either a blockchain address or a gateway URL, and tracks the payment through to confirmation.
- create_payment_onchain — an address, a payment URI and an exact crypto amount for one named coin
- create_payment_redirect — a checkout URL with your own success and cancel destinations, letting the customer choose the coin
- get_payment_status — the payment's state, confirmed and unconfirmed amounts, and a plain-language business status
- list_currencies_catalog — which coins are available, filterable by the amount you are charging
- generate_payment_qr — QR codes for a payment created earlier, at print resolution when you need it
- An expiry timestamp on every onchain payment, because the clock starts the moment the coin is chosen
A Bitnovo Pay account and its Device ID, supplied as BITNOVO_DEVICE_ID alongside BITNOVO_BASE_URL. A Device Secret is optional and only needed to validate webhook signatures. Node.js 18 or newer; npx runs it without installing. Setting PORT switches it from stdio to HTTP, which is how it is deployed for remote clients.
One command plus a key — npx -y @bitnovopay/mcp-bitnovo-pay, then supply credentials
