Sub-merchant Fee Overrides
By default, every payin and deposit across your sub-merchants uses the global fee configuration from your Marketplace Settings. A fee override replaces those global values for one specific sub-merchant — useful for negotiated rates, launch promotions, or premium sellers.
When an override exists for a sub-merchant, it applies to all their payins and deposits. When none exists, the global marketplace settings apply.
Endpoints
All routes use your marketplace API key, without X-On-Behalf-Of (they are Connect management routes):
| Action | Endpoint |
|---|---|
| Create an override | POST /api/connect/accounts/{subMerchantId}/fees |
| Read the override | GET /api/connect/accounts/{subMerchantId}/fees |
| Update the override | PATCH /api/connect/accounts/{subMerchantId}/fees |
| Remove the override (back to global settings) | DELETE /api/connect/accounts/{subMerchantId}/fees |
Creating an Override
curl -X POST https://api.inflowpay.xyz/api/connect/accounts/{subMerchantId}/fees \
-H "X-Inflow-Api-Key: your_marketplace_key" \
-H "Content-Type: application/json" \
-d '{
"marketplaceFeeRatePer1000": 1500,
"marketplaceFeeFixedInCents": 25,
"marketplaceFeeBearer": "SUB_MERCHANT"
}'Fields
All fields are optional — anything you omit falls back to the corresponding value in your global marketplace settings.
| Field | Type | Description |
|---|---|---|
marketplaceFeeRatePer1000 | integer (0–10000) | Take rate on the gross payin amount. Effective rate = value / 100 000 — e.g. 2500 = 2.5%, 1500 = 1.5% |
marketplaceFeeFixedInCents | integer (≥ 0) | Flat fee in cents charged on every payin |
marketplaceDepositFeeRatePer1000 | integer (0–10000) | Take rate on virtual-account deposits. Same / 100 000 scale |
marketplaceDepositFeeFixedInCents | integer (≥ 0) | Flat fee in cents charged on every deposit |
marketplaceFeeBearer | SUB_MERCHANT | MARKETPLACE | SUB_MERCHANT: the fee is deducted from the sub-merchant per payin/deposit. MARKETPLACE: no deduction — you absorb the fee |
Rate scale. The
Per1000fields are expressed on a /100 000 basis:2500means 2.5%, not 2500‰. This matches the scale used in Marketplace Settings.
Reading and Removing
GET .../fees returns { "feeOverride": null } when no override is configured (global settings apply), or the full override object:
{
"feeOverride": {
"id": "smfo_…",
"subMerchantUserId": "usr_…",
"marketplaceFeeRatePer1000": 1500,
"marketplaceFeeFixedInCents": 25,
"marketplaceDepositFeeRatePer1000": 0,
"marketplaceDepositFeeFixedInCents": 0,
"marketplaceFeeBearer": "SUB_MERCHANT",
"createdAt": "2026-06-23T12:00:00.000Z",
"updatedAt": "2026-06-23T12:00:00.000Z"
}
}DELETE .../fees removes the override — the sub-merchant immediately falls back to your global marketplace settings.
Related
- Marketplace Settings — the global fee configuration these overrides replace.
- Fees and Payouts — how marketplace fees are collected and settled.