Create Sub Account
POST /abc/v1/sub-account/create
Create Sub Account
Request Headers
Request Body
Data model: OpenSubAccountCreateRequest
subAccountName
stringRequired
Description
sub account name
Example / Default
RD-SubAccount
Description
Initial amount (unit: cents)
Description
Primary account wallet ID
Successful Response
Data model: CommonResultOpenSubAccountResponse
Description
Human-readable error message
data
object (OpenSubAccountResponse)
data structure (OpenSubAccountResponse)
Description
sub account unique ID
Description
sub account name
Description
primary account ID
Description
account status: 1=active, 2=closed, 3=frozen
Description
Book amount (cents)
Description
Available amount (cents)
Description
Spent amount (cents)
budgetAvailableLimit
number
Description
Available budget limit (cents)
Description
Total budget limit (cents)
Description
Frozen amount, unit: cents (minor unit), integer
Query Sub Accounts
POST /abc/v1/sub-account/query
Query Sub Accounts
Request Headers
Request Body
Data model: OpenSubAccountPageRequest
Description
Page number, starting from 1; minimum 1
Description
Items per page, maximum 200; minimum 1
Description
sub account ID
Description
sub account name
Example / Default
R&D sub account
Successful Response
Data model: CommonResultPageResultOpenSubAccountResponse
Description
Human-readable error message
data
object (PageResultOpenSubAccountResponse)
data structure (PageResultOpenSubAccountResponse)
list
array<object (OpenSubAccountResponse)>
Sub Account Details
POST /abc/v1/sub-account/detail
Sub Account Details
Request Headers
Request Body
Data model: OpenSubAccountDetailRequest
subAccountId
stringRequired
Description
sub account ID
Successful Response
Data model: CommonResultOpenSubAccountResponse
Description
Human-readable error message
data
object (OpenSubAccountResponse)
data structure (OpenSubAccountResponse)
Description
sub account unique ID
Description
sub account name
Description
primary account ID
Description
account status: 1=active, 2=closed, 3=frozen
Description
Book amount (cents)
Description
Available amount (cents)
Description
Spent amount (cents)
budgetAvailableLimit
number
Description
Available budget limit (cents)
Description
Total budget limit (cents)
Description
Frozen amount, unit: cents (minor unit), integer
Enable or Disable Sub Account
POST /abc/v1/sub-account/update-status
Enable or Disable Sub Account
Request Headers
Request Body
Data model: OpenSubAccountStatusUpdateRequest
subAccountId
stringRequired
Description
sub account ID
accountStatus
integerRequired
Description
Target account status: 1=enabled, 4=disabled
Description
Disable reason; recommended when accountStatus=4
Example / Default
BUSINESS_LINE_CLOSED
Description
operation remark
Example / Default
Business line closed; sub account disabled
Successful Response
Data model: CommonResultOpenSubAccountResponse
Description
Human-readable error message
data
object (OpenSubAccountResponse)
data structure (OpenSubAccountResponse)
Description
sub account unique ID
Description
sub account name
Description
primary account ID
Description
account status: 1=active, 2=closed, 3=frozen
Description
Book amount (cents)
Description
Available amount (cents)
Description
Spent amount (cents)
budgetAvailableLimit
number
Description
Available budget limit (cents)
Description
Total budget limit (cents)
Description
Frozen amount, unit: cents (minor unit), integer
Update Sub Account Name
POST /abc/v1/sub-account/update-name
Update Sub Account Name
Request Headers
Request Body
Data model: OpenSubAccountUpdateNameRequest
subAccountId
stringRequired
Description
sub account ID
subAccountName
stringRequired
Description
new sub account name
Example / Default
R&D sub account
Successful Response
Data model: CommonResultBoolean
Description
Human-readable error message
Query Sub Account Fund Flows
POST /abc/v1/sub-account/flow/query
Query Sub Account Fund Flows
Request Headers
Request Body
Data model: OpenSubAccountFlowQueryRequest
Description
Page number, starting from 1; minimum 1
Description
Items per page, maximum 200; minimum 1
Description
sub account fund flow ID
Example / Default
SF20260101000001
Description
sub account ID
Description
sub account name
Example / Default
R&D sub account
Description
currency code ISO 4217
Description
Transaction type: 1=outgoing transfer, 2=incoming transfer, 3=purchase, 4=purchase refund, 5=freeze, 6=unfreeze, 7=adjustment increase, 8=adjustment decrease, 9=budget allocation
Description
Transaction status: 1=success, 2=failure, 3=pending, 4=processing; minimum 1; maximum 4
transactionTime
arraystring>
Description
Transaction time range, an array with two elements: [start time, end time]
Successful Response
Data model: CommonResultPageResultOpenSubAccountFlowResponse
Description
Human-readable error message
data
object (PageResultOpenSubAccountFlowResponse)
data structure (PageResultOpenSubAccountFlowResponse)
list
array<object (OpenSubAccountFlowResponse)>
switch sub account card provider
POST /abc/v1/sub-account/switch-provider
Switch Sub Account Card Provider
Request Headers
X-Timestamp
integerRequired
Description
Unix timestamp in seconds
X-Signature
stringRequired
Description
Request signature
Content-Type
stringRequired
Description
Request content type
Request Body
Request body format: application/json
subAccountId
stringRequired
Description
Sub account ID, maximum length 64 characters
Example or Default
SUB_001
targetProviderName
stringRequired
Description
Target card provider ID. Use an available channel ID provided by ORBSIS.
Example or Default
ORBSIS_A
Available card provider IDs are based on the configuration provided by ORBSIS.
Request Body Example
{ "subAccountId": "SUB_001", "targetProviderName": "ORBSIS_A" }
cURL Example
curl --request POST 'https://open.orbsis.com/abc/v1/sub-account/switch-provider' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: api-key' \
--header 'X-Timestamp: unix-seconds' \
--header 'X-Nonce: unique-nonce' \
--header 'X-Signature: base64-signature' \
--data '{"subAccountId":"SUB_001","targetProviderName":"ORBSIS_A"}'
Successful Response
HTTP Status Code: 200
After the switch succeeds, the response body is an empty object.