Recurring Payments

Recurring Payments let users set up automatic crypto purchases on a regular schedule — weekly or monthly. Once configured, the user's card is charged on the selected day without requiring them to initiate each transaction manually.

To enable Recurring Payments for your widget, contact your integration manager.


How It Works

  1. You open the widget with widget_flow=recurrent and the relevant pre-filled parameters.
  2. The user selects a frequency and charge day (or these can be pre-fixed by you).
  3. The user completes the initial payment and subscription setup.
  4. After setup, they are redirected to your redirect_url.
  5. Subsequent charges happen automatically on the configured schedule.

Parameters

Parameter Required Description
widget_flow Yes Set to recurrent to enable the recurring payment flow
address Yes User's wallet address for receiving purchased crypto
signature Yes Security signature — see Signature Generation
currency No Pre-select cryptocurrency (e.g., USDT)
fiat_currency No Pre-select fiat currency (e.g., EUR)
fiat_amount No Pre-fill fiat amount
fix_network No Lock the blockchain network (e.g., ETHEREUM, TRON, BINANCESMARTCHAIN)
frequency No Lock the charge frequency: weekly or monthly
charge_day No Lock the charge day. For monthly: 131. For weekly: mondaysunday
redirect_url No URL to redirect the user after completing subscription setup
partner_flow No Custom partner flow — contact your integration manager

If frequency or charge_day is pre-set, the value is fixed in the widget UI. The user must return to your screen to change it.


Example

Redirect URL:

https://exchange.mercuryo.io/?widget_id=YOUR_WIDGET_ID
  &widget_flow=recurrent
  &currency=USDT
  &fiat_currency=EUR
  &fiat_amount=540
  &fix_network=TRON
  &address=TQhoZ9hgkQ1NMAMJZ23EPaGtJDMCmv6yJd
  &redirect_url=https://yourapp.com/success
  &signature=v2:GENERATED_SIGNATURE

iFrame JS SDK:

mercuryoWidget.run({
  widgetId: 'YOUR_WIDGET_ID',
  host: document.getElementById('mercuryo-widget'),
  address: 'TQhoZ9hgkQ1NMAMJZ23EPaGtJDMCmv6yJd',
  widgetFlow: 'recurrent',
  currency: 'USDT',
  fiatCurrency: 'EUR',
  fiatAmount: '540',
  fixNetwork: 'TRON',
  redirectUrl: 'https://yourapp.com/success',
  signature: 'v2:GENERATED_SIGNATURE'
});

Sandbox: Only GBP is available as the fiat currency when testing recurring payments in the Sandbox environment.