Skip to main content

Accounts

Create Accountโ€‹

This API allows you to create a new account for a user in the system.

POST {{baseUrl}}/zoqq/api/v1/account

Description

Creates a new account with specified currency and transfer capabilities. This API enables the creation of a new account for a user within the system. It establishes a virtual account for the authenticated user in the specified currency and supports multiple transfer methods โ€” such as Local and Swift โ€” allowing both domestic and international transactions.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ“ฆ Request Body Parameters

type string required

Account type. Allowed value: virtual_account.

country string required

Country code (2-letter ISO 3166-2 code).

currency string required

Currency of the account (3-letter ISO-4217 code).

label string

Human-readable account label.

required_features array required

Array of required features.

currency string required

Currency that was specified during Account creation

transfer_method string required

Transfer method in which a deposit can be received. Possible values: LOCAL, SWIFT

Request Example

curl --location --request POST \
--url '{{baseUrl}}/zoqq/api/v1/account' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}' \
--data '{
"type": "virtual_account",
"country": "SG",
"currency": "SGD",
"label": "New Virtual Account",
"required_features": [
{
"currency": "SGD",
"transfer_method": "LOCAL"
}
]
}'

Response Example

{
"status": "success",
"message": "virtual_account created successfully",
"code": 200,
"data": [
{
"id": "account-id",
"status": "ACTIVE",
"account_number": "12345",
"account_holder_name": "Demo",
"label": "New Virtual Account",
"account_type": "Current",
"country_code": "SG",
"institution": {
"address": "12 Marina Boulevard, DBS Asia Central, Marina Bay Financial Centre Tower 3",
"city": "Singapore",
"name": "DBS Bank Ltd",
"zip_code": "018982"
},
"supported_features": [
{
"currency": "SGD",
"local_clearing_system": "FAST",
"transfer_method": "LOCAL",
"type": "DEPOSIT",
"routing_codes": [
{
"type": "bank_code",
"value": "7171"
},
{
"type": "branch_code",
"value": "072"
}
]
},
{
"currency": "SGD",
"local_clearing_system": "RTGS",
"transfer_method": "LOCAL",
"type": "DEPOSIT",
"routing_codes": [
{
"type": "bank_code",
"value": "7171"
},
{
"type": "branch_code",
"value": "072"
}
]
},
{
"currency": "SGD",
"local_clearing_system": "GIRO",
"transfer_method": "LOCAL",
"type": "DEPOSIT",
"routing_codes": [
{
"type": "bank_code",
"value": "7171"
},
{
"type": "branch_code",
"value": "072"
}
]
},
{
"currency": "SGD",
"local_clearing_system": null,
"transfer_method": "SWIFT",
"type": "DEPOSIT",
"routing_codes": [
{
"type": "bank_code",
"value": "7171"
},
{
"type": "branch_code",
"value": "072"
},
{
"type": "swift",
"value": "swift-code"
}
]
}
],
"required_features": [
{
"transfer_method": "LOCAL",
"currency": "SGD"
}
],
"swift_code": "swift-code",
"iban": null
}
]
}

Get Account Listโ€‹

This API allows you to retrieve all accounts associated with a user in the system.

GET {{baseUrl}}/zoqq/api/v1/account

Description

Returns a list of all accounts for the authenticated user, including account details, institution information, and supported transfer features.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ” Query Parameters

id string

Filter by specific account ID

currency string

Filter by currency (3-letter ISO-4217 code)

status string

Filter by status. Allowed values: ACTIVE, INACTIVE, CLOSED

Request Example

curl --location --request GET \
--url '{{baseUrl}}/zoqq/api/v1/account' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "virtual_account details",
"code": 200,
"data": [
{
"id": "account-id",
"status": "ACTIVE",
"account_number": "1234567890",
"account_holder_name": "Test One",
"label": "New Test One",
"account_type": null,
"country_code": "NZ",
"institution": {
"address": "23-29 Albert St",
"city": "Auckland",
"name": "ANZ Bank New Zealand",
"zip_code": "101010"
},
"supported_features": [
{
"currency": "NZD",
"local_clearing_system": "BANK_TRANSFER",
"transfer_method": "LOCAL",
"type": "DEPOSIT",
"routing_codes": [
{
"type": "bank_code",
"value": "04"
},
{
"type": "branch_code",
"value": "2024"
}
]
}
],
"required_features": [
{
"transfer_method": "LOCAL",
"currency": "NZD"
}
],
"swift_code": null,
"iban": null
}
]
}

Close Accountโ€‹

This API allows you to permanently close an account for a specified user from the system.

DELETE {{baseUrl}}/zoqq/api/v1/account

Description

Permanently closes a specified account from the system. This action is irreversible.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

x-account-id string required

User Account ID

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

Request Example

curl --location --request DELETE \
--url '{{baseUrl}}/zoqq/api/v1/account' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}'\
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'x-account-id: {{AccountID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "virtual_account closed successfully",
"code": 200,
"data": null
}

Get Balanceโ€‹

This API allows you to retrieve the available, pending, and reserved balances for all currencies associated with a user.

GET {{baseUrl}}/zoqq/api/v1/account/balance

Description

This endpoint retrieves the current balance information for all currencies associated with the authenticated user's account. The response includes available balance, pending amounts, and reserved amounts for each currency.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

Request Example

curl --location --request GET \
--url '{{baseUrl}}/zoqq/api/v1/account/balance' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "wallets balance",
"code": 200,
"data": [
{
"currency": "SGD",
"available_balance": 42.72,
"pending_amount": 0,
"reserved_amount": 12
},
{
"currency": "USD",
"available_balance": 22.72,
"pending_amount": 5,
"reserved_amount": 10
}
]
}

Get Account Transactionsโ€‹

This API returns a paginated transaction history with filters for date range. Includes detailed information about each transaction including amount, currency, and status.

GET {{baseUrl}}/zoqq/api/v1/account/transactions

Description

This endpoint returns a paginated list of transactions for the user's account. Transactions can be filtered by date range. Maximum date range allowed is 31 days.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

x-account-id string required

User Account ID

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ” Query Parameters

page integer

Page number for pagination

size integer

Number of items per page

from_date string conditional

Start date to filter records.
(ISO 8601 date format: YYYY-MM-DD).
Must be provided together with to_date.

to_date string conditional

End date to filter records.
(ISO 8601 date format: YYYY-MM-DD).
Must be provided together with from_date.

Request Example

curl --location --request GET \
--url '{{baseUrl}}/zoqq/api/v1/account/transactions' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'x-account-id: {{AccountID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "virtual_accounts transactions details",
"code": 200,
"data": [
{
"amount": 1000.0,
"create_time": "2025-04-09T10:12:37+0000",
"description": "Test from Postman",
"currency": "USD",
"id": "id",
"type": "CREDIT",
"status": "SETTLED"
}
]
}

Get Balance Historyโ€‹

This API returns a paginated balance history with filters for date range. Includes detailed information about each balance change including amount, currency, and transaction type.

GET {{baseUrl}}/zoqq/api/v1/account/balance/history

Description

This endpoint returns a paginated list of balance changes for the user's account. Results can be filtered by date range and include detailed information about each transaction affecting the balance. Maximum date range allowed is 7 days.

๐Ÿ“ฉ Request Headers

x-api-key string required

Shared X-API key by Zoqq

x-product-id string required

Shared Product ID by Zoqq

x-request-id string required

Idempotency key for request tracking

x-user-id string required

User identification key

Content-Type string required

Must be application/json

Authorization string required

Bearer access token

๐Ÿ” Query Parameters

page integer

Page number for pagination

size integer

Number of items per page

from_date string conditional

Start date to filter records.
(ISO 8601 date format: YYYY-MM-DD).
Must be provided together with to_date.

to_date string conditional

End date to filter records.
(ISO 8601 date format: YYYY-MM-DD).
Must be provided together with from_date.

Request Example

curl --location --request GET \
--url '{{baseUrl}}/zoqq/api/v1/account/balance/history' \
--header 'x-api-key: {{Shared X-API key By Zoqq}}' \
--header 'x-product-id: {{Shared ProductID By Zoqq}}' \
--header 'x-request-id: {{IdempotencyKey}}' \
--header 'x-user-id: {{UserID}}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {{AccessToken}}'

Response Example

{
"status": "success",
"message": "balance history details",
"code": 200,
"data": [
{
"id": "id",
"amount": -1.0,
"currency": "SGD",
"balance": 8919.86,
"description": "Pay SGD 1.00 to (Individual Local SG)",
"fee": 0.0,
"create_time": "2025-05-07T12:13:24+0800",
"source_type": "PAYOUT",
"transaction_type": "PAYOUT"
},
{
"id": "id",
"amount": 12.86,
"currency": "SGD",
"balance": 8920.86,
"description": "Buy SGD 12.86",
"fee": 0.0,
"create_time": "2025-05-07T11:28:39+0800",
"source_type": "CONVERSION",
"transaction_type": "CONVERSION_BUY"
},
{
"id": "id",
"amount": 60000.0,
"currency": "DKK",
"balance": 60000.0,
"description": "Test from Postman - GA (First DKK)",
"fee": 0.0,
"create_time": "2025-04-30T19:38:41+0800",
"source_type": "DEPOSIT",
"transaction_type": "DEPOSIT"
}
]
}