Configure API Transaction Fee Responsibility

PATCH/api/v1/business/api-fee-wallet-settings

Requires authenticated user session, active business context, verified business (businessGuard.verified), and role permissions.

Determine who bears transaction fees for API-initiated transfers on your business account. Choose whether fees should be deducted from the business's designated fee wallet or charged directly to the initiating API wallet. This setting applies to transfers made through your API integration and can be updated at any time.

Request body — parameters

NameTypeRequiredDescription
charge_branch_for_api_wallet_transferBooleanNoWhen true, API transfer fees are debited from "fee_wallet_id_for_api_wallet_transfer" instead of the source API wallet.
fee_wallet_id_for_api_wallet_transferstringConditionalWallet ID to debit API fees from. Required when "charge_branch_for_api_wallet_transfer" is true. Must be a valid wallet for the default branch (validated server-side).

Validation rules

  • If charge_branch_for_api_wallet_transfer is true, fee_wallet_id_for_api_wallet_transfer must be provided.
  • Invalid or ineligible fee wallets may fail silently in the handler (no error returned); consider documenting this as a known limitation or fixing in a follow-up.
1
Request Example
(JSON)
{
"charge_branch_for_api_wallet_transfer": true,
"fee_wallet_id_for_api_wallet_transfer": "wallet-uuid-here"
}
2
Example success response
(JSON)
{
"status": true,
"message": "API fee wallet settings updated successfully"
}
3
Example validation error
(JSON)
{
"status": true,
"message": "One or more validation errors occurred",
"errors": [
{
"field": "fee_wallet_id_for_api_wallet_transfer",
"message": "fee_wallet_id_for_api_wallet_transfer is required when charge_branch_for_api_wallet_transfer is true"
}
]
}