Rapyd Partner / PayFac — KYB onboarding and sub-merchant management.
Covers: Organizations, KYB Applications, Settlement Bank Accounts, Application Templates, Industries, and Offerings.
Summary
Functions
Approve a KYB application (internal/partner-admin action).
Create a KYB application.
Create a partner organization (merchant).
Link a settlement bank account to a merchant wallet.
Delete a settlement bank account.
Retrieve a KYB application.
Get a KYB application by wallet ID.
Get an application template for a given country and application type.
Retrieve a specific product offering.
Retrieve an organization.
Retrieve a settlement bank account.
List supported KYB application templates.
List KYB applications.
List industries (MCC codes) available for partner merchants.
List partner product offerings.
List organizations.
List settlement bank accounts.
Reject a KYB application.
Submit a KYB application for review.
Update a KYB application.
Update an organization.
Update a settlement bank account.
Upload a KYB document to an application.
Upload a bank verification file for a settlement account.
Returns a new client struct scoped to a specific merchant organisation ID.
Functions
@spec approve_application(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Approve a KYB application (internal/partner-admin action).
@spec create_application(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a KYB application.
@spec create_organization(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a partner organization (merchant).
@spec create_settlement_bank_account(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Link a settlement bank account to a merchant wallet.
@spec delete_settlement_bank_account(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a settlement bank account.
@spec get_application(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a KYB application.
@spec get_application_by_wallet(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Get a KYB application by wallet ID.
@spec get_application_template(Rapyd.Client.t(), String.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Get an application template for a given country and application type.
@spec get_offering(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a specific product offering.
@spec get_organization(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve an organization.
@spec get_settlement_bank_account(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a settlement bank account.
@spec list_application_templates(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List supported KYB application templates.
@spec list_applications(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List KYB applications.
@spec list_industries(Rapyd.Client.t()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List industries (MCC codes) available for partner merchants.
@spec list_offerings(Rapyd.Client.t()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List partner product offerings.
@spec list_organizations(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List organizations.
@spec list_settlement_bank_accounts(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List settlement bank accounts.
@spec reject_application(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Reject a KYB application.
@spec submit_application(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Submit a KYB application for review.
@spec update_application(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a KYB application.
@spec update_organization(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update an organization.
@spec update_settlement_bank_account(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a settlement bank account.
@spec upload_application_document(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Upload a KYB document to an application.
@spec upload_bank_verification_file(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Upload a bank verification file for a settlement account.
@spec with_merchant_account_id(Rapyd.Client.t(), String.t()) :: Rapyd.Client.t()
Returns a new client struct scoped to a specific merchant organisation ID.
The organisation ID is forwarded as the merchant_account_id query param on
every request made with the returned client.
Example
partner_client = Partner.with_merchant_account_id(client, "org_abc123")
Partner.list_organizations(partner_client)