Sub-Account Management

Onboard Your Clients' Sub-Accounts,
Fully Automated

Create, manage, and secure a sub-account for every user on your platform—straight from the API, with no manual setup one by one!

Main Account connected to Sub-Account A, Sub-Account B, and Sub-Account C

Our Solution

Manage Multiple Clients Without the Operational Headache

Built for platforms serving many end users, where data, balances, and API credentials need to stay truly separate from one another.

Payroll Platforms

Manage payments for multiple client companies in a single dashboard.

Freelancer Marketplaces

Onboard every new user as an independent sub-account, instantly.

SME Aggregators

Keep every merchant or branch's transactions separate, with no overlapping data.

How It Works

One dashboard.
Separate account
contexts.

Switch between the main account and any Sub-Account from the dashboard. The active account determines which balance, transaction history, and configurations you see.

  1. 01

    Choose an account

    Open the account switcher in the top-left corner.

  2. 02

    Work in context

    View data and manage operations for the selected account only.

  3. 03

    Switch anytime

    Move between accounts without leaving the Brick Dashboard.

Sub-Account Types

Choose the Access Level That Fits Each Client

Every sub-account can be set as Full-Access or Ledger-Only, depending on whether the client needs their own API credentials or just needs to transact through the dashboard.

Full-Access Subaccount

For clients who need their own API integration

  • Has its own client_id & client_secret
  • Activates after KYB verification
  • Key status is controlled by the main account

Ledger-Only Subaccount

Default when a sub-account is first created

  • No direct API access
  • Can still transact via the dashboard
  • Can be upgraded anytime

Function

Built for Onboarding at Scale

Automated Provisioning

Create a sub-account programmatically with a single API call.

Secure Credentials by Default

client_key & client_secret are generated and encrypted automatically.

Rotate Keys Anytime

Regenerate credentials if they're suspected to be compromised or have expired.

End-to-End Signature Verification

Every request is verified against the public key you uploaded.

Security & Authentication

Built on Bank-Grade
Security Standards

Not an add-on—encryption and signature verification are built into every request by default.

HMAC-SHA512 X-Signature

Every request is signed and verified for authenticity.

RSA 2048-bit Encryption

All API credentials are encrypted before being sent.

Your Private Key Stays With You

Brick never receives your private key.

Developer Preview

A Simple Request, an Instantly Encrypted Response

Request — Create Subaccount

POST /v2/payments/general/b2c/sub-accounts
X-Signature: 8f2kL9pQr...
X-Timestamp:
2026-07-14T10:17:19+07:00
{ "name": "PT Contoh Klien",
  "subAccountCode": "CLI01",
  "email": "finance@contoh.co.id" }
Response

{ "status": "approved", "apiKey": {
  "clientKey": "enc_9x7...a2f",
  "clientSecret": "enc_k1p...93b" } }

Developer Resources

All the Documentation You Need

Sub-Account Management

Overview & core concepts

B2C Subaccount Onboarding API

Onboarding flow & key features

X-Signature Authentication

How to sign requests with HMAC-SHA512

Setup Public Key

Upload your public key

Create Subaccount API

Full endpoint reference

Regenerate API Key

Rotate sub-account credentials

Frequently Asked Questions

Why am I getting a 401 Unauthorized?

The access token or Bearer token you sent is invalid or has expired.

Why was my sub-account code rejected?

The sub-account code you used already exists—try a different, unique code.

Why do I see a Public Key Not Found error?

You need to upload your public key via the Setup Public Key API before creating a sub-account.

Start Onboarding Your
Sub-Accounts Today

Start building with Brick MCP