Skip to main content
POST
Create crypto payment session
Creates a dedicated collection session for USDT on TRC20, provisioning a deposit address.

How It Works

  1. The merchant creates a crypto payment session.
  2. NexaPay provisions a dedicated collection session for that payment.
  3. NexaPay generates a USDT TRC20 deposit address.
  4. The merchant shows that address to the customer.
  5. NexaPay confirms the deposit.
  6. NexaPay settles the session balance into its parent crypto balance flow.
  7. The merchant’s USDT balance is credited only after settlement succeeds.

Authorizations

x-api-key
string
header
required

Merchant API Key (e.g., nexa-prod-... or nexa-test-...)

Headers

x-business-env
enum<string>
default:prod

Target environment selector (live production vs. simulated sandbox).

Available options:
prod,
test

Body

application/json
businessId
string
required

The unique ID of the business profile (required for API key authentication).

amount
number
required

Expected USDT amount.

merchantCustomerId
string
required

Identifier for the customer.

merchantReference
string
required

Unique reference ID for the payment.

currency
string
default:usdt

Only 'usdt' is supported.

network
string
default:trc20

Only 'trc20' is supported.

expiresInMinutes
integer
default:60
metadata
object

Response

Payment session created successfully.