Overview
This document provides detailed descriptions of the common parameters and business parameters Required when calling all OPCCOUNT API endpoints. Please review carefully before initiating any requests.
Calling Process
Common Request Headers (Required for All APIs)
These headers are required for all endpoints and generally relate to authentication, signature, and basic billing information.
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
Content-Type | string | Yes | Data type | application/json |
Opccount-No | string | Yes | OPCCOUNT account number | VA995149 |
Va-Code | int | Yes | Merchant unique value, provided by Oceanpayment | 9435762187450928365 |
Sign | string | Yes | Encrypted signature | ckQHqFTsawqHScEhxuovywiXTJMio9F0a62qdh/mIONvwWXzfdNFM4cl/2UN490VER64wmw18wOWsgHH/mKL7L+uu5jRQcLkYbwE5CfQEj6g2jHewa70b2zStZPes4DRrgRwLzK+vqwzdP0jifrRYbrB6qVjS8gD4RyGort/Ju1mfaVjJNgPlUWehDJPWPz5MAU/dRpB6ChX7IwjJm4cV/jUqZvOJMDqMov8H5kMyi7g0Jx7LVHIqx9O3Cjn+k+FASpJNNOnv7m5JjvdJkJYXgMC3pGK+uBc+hfHnc20piuz7KxDeQDtaAY9IXCWkPx8BcQaru1HMQgXmBicS85YkQ== |
Timestamp | int | Yes | Timestamp | 1694482115 |
Encryption
- Signature method: sha256WithRSA. Generate a 2048-bit public/private key pair online.Provide the public key to Oceanpayment technical support; keep the private key for encrypting request parameters.
- Signature parameters: All body parameters (except file attachments) + timestamp, sorted alphabetically; timestamp must match the request header timestamp.
- Header
$privateKey = "xxxx";// Private key
// Sort in lexicographical order
$sign_data={"billCurrency": ['USD'],"endDate": "2025-02-12 23:59:49","pageNum": 1,"pageSize": 1,"startDate": "2025-02-12 18:59:49","timestamp": "1694482115"};
$key = openssl_get_privatekey($privateKey);
openssl_sign($sign_data, $signature, $key, OPENSSL_ALGO_SHA256);
openssl_free_key($key);
$sign = base64_encode($signature);
Account Funds
Query Fund Details
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
pageNum | int | 5 | No | Current page number
| |
pageSize | int | 5 | No | Page size
| |
startDate | int | 19 | No | Start date, max interval 1 year
| |
endDate | int | 19 | No | End date, max interval 1 year
| |
billCurrency | array | No | Currencies
|
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data object containing fund details | |
total | int | Total number | |
pages | int | Total pages | |
pageSize | int | Page size
| |
pageNum | int | Current page number | |
list | array | Data for the page | |
fundType | int | Fund type
| |
amount | int | Total OPCCOUNT amount | |
movingAccountCurrency | string | Transaction currency | |
withdrawalAmount | int | Withdrawable amount | |
congealAmount | int | Frozen amount | |
movingAccountType | int | Account movement type
| |
operateTime | string | Account entry time
| |
billCurrency | string | Billing currency | |
movingAccountAmount | string | Transaction amount | |
applicationType | int | Fund payment account type
| |
senderPartyName | string | Payer information |
Balance Inquiry
- Response
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data object containing fund details | |
currency | string | Currency | |
amount | string | Total OPCCOUNT amount | |
withdrawalAmount | string | Withdrawable amount | |
congealAmount | string | Frozen amount |
Withdrawal Accounts
Query Withdrawal Accounts
- Response
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Account data object | |
bankAccount | string | Bank account number | |
withdrawalAccountKey | string | Withdrawal account ID | |
isRecord | int | Record status
| |
currency | string | Account currency | |
bankName | string | Bank name | |
bankHolder | string | Bank Holder | |
type | int | Bank account type
| |
status | int | Account status
|
Add Withdrawal Account
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
bankHolder | string | 200 | Yes | Payee account name | |
bankName | string | 200 | Yes | Payee bank | |
bankAccount | string | 200 | Yes | Bank account | |
settlementNumber | string | 200 | Yes | ID number
| |
settlementType | string | 278 | No | ID type Required when the 5th and 6th characters of the SWIFT Code are NZ or PE
| |
bankHolderPhone | string | 200 | No | Bank reserved phone number | |
bankAddress | string | 200 | Yes | Bank address
| |
address | string | 200 | No | Payee address | |
province | string | 200 | Yes | Payee province
| |
city | string | 200 | Yes | Payee city
| |
zipcode | string | 200 | Yes | Postal code
| |
currency | string | 3 | Yes | Withdrawal currency | |
type | int | 1 | Yes | Bank account type (Hong Kong entities can only use corporate accounts)
| |
swiftCode | string | 20 | Yes | SWIFT CODE (no SWIFT CODE for CNY) | |
bankProvince | string | 200 | No | Bank province | |
bankCity | string | 200 | No | Bank city | |
bankCode | string | 200 | No | Bank country/region
| |
branchCode | string | 200 | No | BRANCH CODE
| |
ibanNumber | string | 278 | No | IBAN Number
| |
abaNumber | string | 278 | No | ABA Number
| |
bsbNumber | string | 278 | No | BSB Number
| |
sortCode | string | 6 | Yes | Sort code
| |
clabe | string | 18 | No | Clabe
| |
beneficiaryMsisdn | string | 6 | Yes | Payee mobile number (international format)
| |
fileList | object | Yes | File list |
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Account data object |
Modify Withdrawal Account
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
bankHolder | string | 200 | Yes | Payee account name | |
bankName | string | 200 | Yes | Payee bank | |
bankAccount | string | 200 | Yes | Bank account | |
settlementNumber | string | 200 | Yes | ID number
| |
settlementType | string | 278 | No | ID type Required when the 5th and 6th characters of the SWIFT Code are NZ or PE
| |
bankHolderPhone | string | 200 | No | Bank reserved phone number | |
bankAddress | string | 200 | Yes | Bank address
| |
address | string | 200 | No | Payee address | |
province | string | 200 | Yes | Payee province
| |
city | string | 200 | Yes | Payee city
| |
zipcode | string | 200 | Yes | Postal code
| |
currency | string | 3 | Yes | Withdrawal currency | |
type | int | 1 | Yes | Bank account type (Hong Kong entities can only use corporate accounts)
| |
swiftCode | string | 20 | Yes | SWIFT CODE (no SWIFT CODE for CNY) | |
bankProvince | string | 200 | No | Bank province | |
bankCity | string | 200 | No | Bank city | |
bankCode | string | 200 | No | Bank country/region
| |
branchCode | string | 200 | No | BRANCH CODE
| |
ibanNumber | string | 278 | No | IBAN Number
| |
abaNumber | string | 278 | No | ABA Number
| |
bsbNumber | string | 278 | No | BSB Number
| |
sortCode | string | 6 | Yes | Sort code
| |
clabe | string | 18 | No | Clabe
| |
beneficiaryMsisdn | string | 6 | Yes | Payee mobile number (international format)
| |
fileList | object | Yes | File list | ||
withdrawalAccountKey | object | 50 | Yes | Account unique identifier |
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Account data object |
Delete Withdrawal Account
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
withdrawalAccountKey | string | 20 | Yes | Account unique identifier |
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Account data object |
Fund Payment Accounts
Query Fund Payment Accounts
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
keyWords | string | 200 | No | Search keywords (e.g., currency) | |
receiptOpccountNo | string | 20 | No | Payee OPCCOUNT number |
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data object containing fund details | |
applicationType | int | Type
| |
type | int | Bank account type
| |
status | int | Status
| |
currency | string | Payout currency | |
record | int | Is registered
| |
paymentFiling | int | Payout registration
| |
fundPaymentAccountKey | int | Payout Account unique identifier |
Add Fund Payment Account
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
receiptOpccountNo | string | 20 | Yes | Payee OPCCOUNT number
|
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data object containing fund details |
Delete Fund Payment Account
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
fundPaymentAccountKey | int | 19 | Yes | Payout Account unique identifier |
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data object containing fund details |
Withdrawals
Query Withdrawal Records
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
startTime | string | 19 | Yes | Start time
| |
endTime | string | 19 | Yes | End time
| |
pageSize | int | 5 | No | Page size
| |
pageNum | int | 5 | No | Current page number
| |
status | int | 1 | No | Withdrawal status
| |
withdrawalCurrency | array | 3 | No | Withdrawal currency |
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | Object | Data | |
total | int | Total number | |
pages | int | Total pages | |
pageSize | int | Page size | |
current | int | Current page number | |
rowList | array | Fee list | |
withdrawalListVOList | array | Data per page | |
id | string | Withdrawal batch number | |
createTime | string | Create time | |
handleTime | string | Withdrawal time | |
withdrawalStatus | int | Withdrawal status
| |
withdrawalStatusStr | int | Withdrawal status str | |
bankAccount | string | Bank account | |
withdrawalAmount | string | withdrawal amount | |
withdrawalCurrency | string | withdrawal currency | |
rate | string | FX rate | |
rateTime | string | FX conversion time | |
billAmount | string | Billing amount | |
billCurrency | string | Billing currency | |
bankName | string | Bank name | |
paymentBank | string | Paying bank | |
chargeActualFee | string | Paid commission | |
fullPaymentMark | string | Full receipt mark
| |
withdrawalFeeDetailList | array | Expense detail | |
withdrawalFeeDetailVOList | array | Expense detail list | |
costName | string | Cost name | |
costNameEn | string | Cost name (English) | |
billCurrency | string | Bill currency |
Withdrawal Quotation
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
withdrawalAccountKey | string | 20 | Yes | Withdrawal Account unique identifier | |
billCurrency | string | 3 | Yes | Billing currency | |
billAmount | string | 18 | Yes | Billing amount
| |
transactionFeesBearingMethods | string | 3 | Yes | Fee bearing method
|
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data | |
tranCurrency | string | Selling currency | |
tranAmount | string | Selling amount | |
baseCurrency | string | Buying currency | |
baseAmount | string | Buying amount | |
merchantRate | string | Merchant reference rate | |
feeCurrency | int | Fee currency | |
expectedAmount | string | Expected amount received | |
withdrawalDetail | string | Details of individual withdrawal | |
expectAmount | string | Expected amount received | |
expectCurrency | string | Expected receiving currency | |
fee | string | Fee | |
withdrawalCostList | string | Charge | |
feeAmount | int | Fee amount | |
costName | string | Charge name | |
costNameEn | string | Cost name (English) | |
currency | string | Billing currency |
Withdrawal Application
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
withdrawalAccountKey | string | 20 | Yes | Withdrawal Account unique identifier | |
billCurrency | string | 3 | Yes | Billing currency | |
billAmount | string | 18 | Yes | Billing amount
| |
transactionFeesBearingMethods | string | 3 | Yes | Fee bearing method
|
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data | |
amount | string | Withdrawal request amount | |
batchNo | string | Withdrawal batch number | |
billCurrency | string | Withdrawal currency | |
status | string | Withdrawal status
|
Fund Payment (Payout)
Payout Application
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
fundPaymentAccountKey | string | 20 | Conditions | Payout Account unique identifier
| |
withholdingAccountKey | string | 20 | Conditions | Account unique identifier (Only a single entry is permitted. Multiple withholdings require multiple requests)
| |
paymentAmount | string | 18 | Yes | Payout amount
| |
paymentCurrency | string | 3 | Yes | Payout currency | |
accountType | int | 18 | Yes | Payout account type
| |
autoDebit | int | 1 | Yes | Automatic payout deduction
| |
transactionType | int | 1 | Yes | Payout transaction type
| |
orderNumber | string | 0-50 | No | Transaction order number | |
orderCurrency | string | 0-3 | No | Transaction order currency | |
orderAmount | string | 0-10 | No | Transaction order amount | |
orderNotes | string | 0-500 | No | Order remark | |
paymentDesc | string | 278 | No | Payout payment description | |
notesOnBank | string | 278 | No | Bank transfer remark | |
confirmAgreement | string | 1 | Yes | Confirm agreement
| |
cooperationAgreementList | file | No | Cooperation agreement attachment
| ||
invoiceList | file | No | invoiceAttachment | ||
companyRegCertificateList | file | No | Payout company registration certificate attachment | ||
bankAccountProofList | file | No | Payout bank account attachment | ||
personalAddressProofList | file | No | Payout personal address proof attachment | ||
equityStructureChartList | file | No | Payout equity structure diagram attachment | ||
subsidiaryList | file | No | Payout subsidiary attachment | ||
invoiceAndCooperationAgreementList | file | No | Invoice & Cooperation agreement attachment |
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Payout batch number |
Payout Confirmation / Deduction
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
batchNo | int | 10 | Yes | Payout batch number
| |
billCurrency | string | 3 | Yes | Payout currency
|
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data |
Query Payout Records
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
pageSize | int | 5 | No | Page size
| |
timeType | int | 1 | No | Time type
| |
currencyList | array | No | Supported payment currencies
| ||
batchNo | string | 10 | No | Batch number
| |
startTime | string | 19 | No | Start time
| |
endTime | string | 19 | No | End time
| |
pageNum | int | 5 | No | Current page number
| |
status | int | 2 | No | Payout status
|
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data | |
total | int | Total number | |
pages | string | Total pages | |
pageSize | int | Page size
| |
pageNum | int | Current page number
| |
list | array | List | |
batchNo | int | Payout batch number | |
status | string | Payout status
| |
opccountNo | string | Payee OPCCOUNT number | |
opccountName | string | Payee OPCCOUNT name | |
amount | int | Payout amount | |
createTime | string | Payout request time | |
settTime | string | Financial processing time (payout) | |
settName | string | Payee Account Name | |
settBankAccount | string | Payee Account Account | |
currency | string | Payout currency | |
type | string | Payout type
| |
fundPaymentAccountKey | string | Account unique identifier | |
acType | string | Bank account type
| |
notesOnBank | string | Bank transfer remark | |
poboFeedBack | string | Payout purpose |
Download Remittance Advice
- Request
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
batchNo | int | 10 | Yes | Payment batch number
|
Cancel Payout
- Request
- Response
| Parameter | Type | Length | Required | Description | Example |
|---|---|---|---|---|---|
batchNo | int | 10 | Yes | Payment batch number
|
| Parameter | Type | Description | Example |
|---|---|---|---|
msg | string | Description | |
code | int | Status code | |
data | object | Data |