E-commerce plugins

WHMCS gateway

Install and configure the official WHMCS payment gateway with native OAuth, DPoP-bound tokens, hosted MakePay checkout, and signed callbacks.

MakePay WHMCS Gateway

Overview

The official MakePay WHMCS gateway adds hosted crypto checkout to WHMCS invoices. WHMCS renders a payment button on the invoice, MakePay creates the hosted payment link, and the signed callback marks the invoice paid after the payment settles.

Use Connect MakePay for normal setup. Manual API-key credentials remain available as a fallback.

Before You Start

  • WHMCS 8.13 LTS or WHMCS 9.x
  • PHP 8.1 or newer with OpenSSL enabled
  • HTTPS WHMCS System URL
  • WHMCS administrator access to Payment Gateways
  • A MakePay company where you can manage payment settings

Install The Gateway

Download the latest ZIP package:

https://plugins.makecrypto.io/downloads/whmcs/latest.zip

Extract the ZIP and upload the modules directory into the WHMCS root. The package installs these files:

modules/gateways/makepay.php
modules/gateways/makepay/checkout.php
modules/gateways/makepay/oauth.php
modules/gateways/makepay/lib/*.php
modules/gateways/callback/makepay.php

In WHMCS, open System Settings > Payment Gateways, activate MakePay, then save the gateway settings.

Connect MakePay

Open the MakePay gateway settings and choose Connect MakePay. The gateway:

  1. Opens MakeCrypto in a browser tab.
  2. Asks you to sign in and choose the company that should receive payments.
  3. Shows the permissions needed by the WHMCS gateway.
  4. Returns you to WHMCS after approval.
  5. Saves the connection in WHMCS gateway settings.
  6. Configures the MakePay callback URL and webhook secret.

Configure MakePay

After connection finishes, keep Connection method set to the default connected mode. Review:

  • MakePay company ID
  • Settlement asset
  • Payment expiration
  • MakePay connection status
  • Webhook signing secret

Manual fallback requires a MakePay company ID, API key ID, API key secret, and webhook secret.

Checkout Flow

When a client opens an unpaid WHMCS invoice, the MakePay gateway renders a payment button. The checkout handler validates the signed form payload, loads the invoice through WHMCS local API helpers, creates a MakePay payment link, and redirects the client to hosted MakePay checkout.

FieldPurpose
source=whmcsIdentifies the integration
orderId=whmcs_invoice_<invoiceId>Maps MakePay activity back to WHMCS
invoiceIdWHMCS invoice ID
clientIdWHMCS client ID
moduleVersionInstalled MakePay gateway version
whmcsVersionWHMCS runtime version

The buyer returns to the original WHMCS invoice after payment or cancellation.

Invoice States

MakePay sends signed callbacks to:

https://billing.example.com/modules/gateways/callback/makepay.php
MakePay statusWHMCS behavior
paid, completed, confirmed, succeededCalls addInvoicePayment and records the transaction ID
failed, expiredLogs the callback and leaves the invoice unpaid
cancelled, canceledLogs the callback and leaves the invoice unpaid
refundedLogs the callback for manual review
Other statusesLogged and ignored

WHMCS transaction logs include the MakePay callback payload so support teams can trace payment UID, invoice metadata, amount, and status.

Security Notes

The gateway stores connection details in WHMCS gateway settings. Keep WHMCS administrator access limited to trusted operators, and disconnect the gateway in MakeCrypto if an administrator account or server backup is exposed.

The connection asks for these permissions:

  • company:read
  • makepay:payment-links:read
  • makepay:payment-links:write
  • makepay:customers:read
  • makepay:customers:write
  • makepay:settings:read
  • makepay:settings:write

Troubleshooting

If Connect MakePay cannot start, confirm the WHMCS System URL is HTTPS and matches the public billing domain. If clients see a checkout error, confirm the gateway is active, the invoice is unpaid, and the MakePay company ID is stored. If callbacks do not mark invoices paid, compare the MakePay callback URL with the WHMCS callback URL above and rotate the webhook secret from the gateway settings.

Need partner setup help?

Open the payment link details view in MakeCrypto to copy the generated snippets for a real payment UID, or return to the portal to manage merchant settings.

Open portal