Skip to main content
POST
/
rate
/
commission_rule
Create Fee Rule
curl --request POST \
  --url https://openplatform.gateapi.io/rate/commission_rule \
  --header 'Content-Type: application/json' \
  --header 'X-GatePay-Certificate-ClientId: <x-gatepay-certificate-clientid>' \
  --header 'X-GatePay-MerchantId: <x-gatepay-merchantid>' \
  --header 'X-GatePay-Nonce: <x-gatepay-nonce>' \
  --header 'X-GatePay-Signature: <x-gatepay-signature>' \
  --header 'X-GatePay-Timestamp: <x-gatepay-timestamp>' \
  --data '
{
  "sub_merchant_id": "123456789",
  "r_markup": 0.001,
  "effective_date": "2026-04-17 00:00:00"
}
'
{
  "status": "SUCCESS",
  "code": "000000",
  "errorMessage": "",
  "data": {
    "config_id": "cfg_202604170001",
    "previous_config_id": null,
    "version_no": 1,
    "sub_merchant_id": "123456789",
    "r_markup": 0.001,
    "f_markup": 0,
    "status": "PENDING_EFFECTIVE",
    "effective_date": "2026-04-17 00:00:00",
    "due_date": "2026-12-31 23:59:59",
    "created_at": "2026-04-16T16:10:00Z",
    "updated_at": "2026-04-16T16:10:00Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.gate.com/llms.txt

Use this file to discover all available pages before exploring further.

Overview

This page documents the institution-only API for creating the first markup rule for a sub-account. Full fields, request payloads, and examples are rendered from the OpenAPI definition above.

Notes

  • Create the first markup rule for a specified sub-account. After creation, the sub-account is charged with the base rate plus the configured markup.
  • It uses X-GatePay-MerchantId to identify the main-merchant context and does not use X-GatePay-On-Behalf-Of.
  • If the sub-account already has an active or pending rule, use the upgrade endpoint instead.

Headers

X-GatePay-Certificate-ClientId
string
required

Application ClientId.

X-GatePay-Signature
string
required

HMAC-SHA512 signature generated with the Payment API Secret.

X-GatePay-Timestamp
string
required

UTC timestamp in milliseconds.

X-GatePay-Nonce
string
required

Random nonce used for replay protection.

X-GatePay-MerchantId
string
required

Main merchant ID. This header identifies the institution main-merchant context for this fee-setting API set.

Body

application/json
sub_merchant_id
string
required

Sub-account ID.

Example:

"123456789"

r_markup
number
required

Percentage markup. Must not be null; 0 is allowed.

Example:

0.001

effective_date
string
required

Effective time in yyyy-MM-dd HH:mm:ss format.

Example:

"2026-04-17 00:00:00"

f_markup
number

Fixed markup amount in USDT. Defaults to 0 when omitted.

Example:

0

due_date
string | null

Expiration time in the same format as effective_date. Omit for an open-ended rule.

Example:

"2026-12-31 23:59:59"

Response

200 - application/json

Successful response.

status
enum<string>

API processing status.

Available options:
SUCCESS,
FAIL
code
string

Business result code.

Example:

"000000"

errorMessage
string

Error message. Empty string on success.

Example:

""

data
object