Skip to main content
PATCH

Update Merchant Payout

Update payout settings for a sub-merchant that already has payout configured. Use this to change bank account details or re-initiate onboarding for international merchants.
This endpoint is for updating existing payout configurations. To set up payout for the first time, use POST Setup Merchant Payout.

Data Storage

Updated bank details are stored in the KycSubmissions table, which is the single source of truth for all KYC and payout information.

Path Parameters

merchantId
string
required
The ID of the sub-merchant to update payout for.

Request Body

For African Countries (NG, GH, ZA, KE)

Update any of the bank account details. All provided fields are stored in KycSubmissions:
settlement_bank
string
New bank name for the settlement bank. Must match a name from Get Supported Payout Banks.
account_number
string
New bank account number. Stored as KycSubmissions.bank_account_number.
account_name
string
New account holder name. Stored as KycSubmissions.bank_account_name.

For Other Countries (US, GB, CA, EU, etc.)

For international merchants, you must provide a callback URL for the Stripe onboarding redirect:
callback_url
string
required
The URL where the merchant will be redirected after completing (or exiting) Stripe’s onboarding flow. Required for non-African countries.
The callback_url is required for non-African countries. Without it, the merchant has no way to return to your platform after updating their Stripe onboarding details.

Response

African Countries

Bank details are updated immediately in KycSubmissions:

Other Countries

Returns onboarding credentials for the merchant to update their own details via Stripe:
For international countries, payout details (bank accounts, identity verification) are managed through Stripe’s hosted onboarding flow. The merchant must complete this flow to update their information.

Where Data is Stored

Important: Legacy fields in Educatorportfolio (like educator_bank_name, educator_bank_account_number) are deprecated and no longer used. All bank details are stored in KycSubmissions.

Error Codes