Skip to main content

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.

ParameterTypeRequiredDescriptionExample
Content-TypestringRequiredData typeapplication/json
Opccount-NostringRequiredOPCCOUNT account numberVA995149
Va-CodeintRequiredMerchant unique value, provided by Oceanpayment9435762187450928365
SignstringRequiredEncrypted signatureckQHqFTsawqHScEhxuovywiXTJMio9F0a62qdh/mIONvwWXzfdNFM4cl/2UN490VER64wmw18wOWsgHH/mKL7L+uu5jRQcLkYbwE5CfQEj6g2jHewa70b2zStZPes4DRrgRwLzK+vqwzdP0jifrRYbrB6qVjS8gD4RyGort/Ju1mfaVjJNgPlUWehDJPWPz5MAU/dRpB6ChX7IwjJm4cV/jUqZvOJMDqMov8H5kMyi7g0Jx7LVHIqx9O3Cjn+k+FASpJNNOnv7m5JjvdJkJYXgMC3pGK+uBc+hfHnc20piuz7KxDeQDtaAY9IXCWkPx8BcQaru1HMQgXmBicS85YkQ==
TimestampintRequiredTimestamp1694482115

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.
$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

ParameterTypeLengthRequiredDescriptionExample
pageNumint5OptionalCurrent page number
  • Default is 1
pageSizeint5OptionalPage size
  • default is 10
startDateint19OptionalStart date, max interval 1 year
  • Format: yyyy-MM-dd HH:mm:ss
endDateint19OptionalEnd date, max interval 1 year
  • Format: yyyy-MM-dd HH:mm:ss
billCurrencyarrayOptionalCurrencies
  • AUD
  • HKD
  • CHF
  • SGD
  • JPY
  • EUR
  • GBP
  • USD
  • CAD
  • NZD
  • ZAR
  • CNY

Balance Inquiry

ParameterTypeDescriptionExample
msgstringDescription
codeintStatus code
dataobjectData object containing fund details
currencystringCurrency
amountstringTotal OPCCOUNT amount
withdrawalAmountstringWithdrawable amount
congealAmountstringFrozen amount

Withdrawal Accounts

Query Withdrawal Accounts

ParameterTypeDescriptionExample
msgstringDescription
codeintStatus code
dataobjectAccount data object
bankAccountstringBank account number
withdrawalAccountKeystringWithdrawal account ID
isRecordintRecord status
  • 0: Not registered
  • 1: Registered
  • 2: Registration not required
currencystringAccount currency
bankNamestringBank name
bankHolderstringBank Holder
typeintBank account type
  • 1: Corporate account
  • 2: Personal account
statusintAccount status
  • -1: Under review
  • 0: Review failed
  • 1: Normal

Add Withdrawal Account

ParameterTypeLengthRequiredDescriptionExample
bankHolderstring200RequiredPayee account name
bankNamestring200RequiredPayee bank
bankAccountstring200RequiredBank account
settlementNumberstring200RequiredID number
  • Required when the 5th and 6th characters of the SWIFT Code are NZ or PE
settlementTypestring278OptionalID type
Required when the 5th and 6th characters of the SWIFT Code are NZ or PE
  • 1: Identity Card
  • 2: Business License Number (General)
  • 8: Unified Social Credit Code (Three-in-One Enterprise)
  • 9: Organization Code (Other Enterprises)
bankHolderPhonestring200OptionalBank reserved phone number
bankAddressstring200RequiredBank address
  • Required when the withdrawal currency is not CNY
addressstring200OptionalPayee address
provincestring200RequiredPayee province
  • Required when the withdrawal currency is not USD
citystring200RequiredPayee city
  • Required when the withdrawal currency is not USD
zipcodestring200RequiredPostal code
  • Required when the withdrawal currency is not USD
currencystring3RequiredWithdrawal currency
typeint1RequiredBank account type (Hong Kong entities can only use corporate accounts)
  • 1: Corporate account
  • 2: Personal account
swiftCodestring20RequiredSWIFT CODE (no SWIFT CODE for CNY)
bankProvincestring200OptionalBank province
bankCitystring200OptionalBank city
bankCodestring200OptionalBank country/region
  • Required if ID equals 152
branchCodestring200OptionalBRANCH CODE
  • Required if it exists in the SWIFT Code matched fields list
ibanNumberstring278OptionalIBAN Number
  • Required when the withdrawal currency is EUR, GBP, or TRY and the country/region is Europe
abaNumberstring278OptionalABA Number
  • Required when the withdrawal currency is USD or CAD and the country/region is the United States
bsbNumberstring278OptionalBSB Number
  • Required when the withdrawal currency is AUD and the country is Australia
sortCodestring6RequiredSort code
  • Required if sortCode exists in the list of fields matched by the SWIFT Code query
clabestring18OptionalClabe
  • Required if clabe exists in the list of fields matched by the SWIFT Code query
beneficiaryMsisdnstring6RequiredPayee mobile number (international format)
  • Required when the 5th and 6th characters of the SWIFT Code are JP
fileListobjectRequiredFile list

Modify Withdrawal Account

ParameterTypeLengthRequiredDescriptionExample
bankHolderstring200RequiredPayee account name
bankNamestring200RequiredPayee bank
bankAccountstring200RequiredBank account
settlementNumberstring200RequiredID number
  • Required when the 5th and 6th characters of the SWIFT Code are NZ or PE
settlementTypestring278OptionalID type
Required when the 5th and 6th characters of the SWIFT Code are NZ or PE
  • 1: Identity Card
  • 2: Business License Number (General)
  • 8: Unified Social Credit Code (Three-in-One Enterprise)
  • 9: Organization Code (Other Enterprises)
bankHolderPhonestring200OptionalBank reserved phone number
bankAddressstring200RequiredBank address
  • Required when the withdrawal currency is not CNY
addressstring200OptionalPayee address
provincestring200RequiredPayee province
  • Required when the withdrawal currency is not USD
citystring200RequiredPayee city
  • Required when the withdrawal currency is not USD
zipcodestring200RequiredPostal code
  • Required when the withdrawal currency is not USD
currencystring3RequiredWithdrawal currency
typeint1RequiredBank account type (Hong Kong entities can only use corporate accounts)
  • 1: Corporate account
  • 2: Personal account
swiftCodestring20RequiredSWIFT CODE (no SWIFT CODE for CNY)
bankProvincestring200OptionalBank province
bankCitystring200OptionalBank city
bankCodestring200OptionalBank country/region
  • Required if ID equals 152
branchCodestring200OptionalBRANCH CODE
  • Required if it exists in the SWIFT Code matched fields list
ibanNumberstring278OptionalIBAN Number
  • Required when the withdrawal currency is EUR, GBP, or TRY and the country/region is Europe
abaNumberstring278OptionalABA Number
  • Required when the withdrawal currency is USD or CAD and the country/region is the United States
bsbNumberstring278OptionalBSB Number
  • Required when the withdrawal currency is AUD and the country is Australia
sortCodestring6RequiredSort code
  • Required if sortCode exists in the list of fields matched by the SWIFT Code query
clabestring18OptionalClabe
  • Required if clabe exists in the list of fields matched by the SWIFT Code query
beneficiaryMsisdnstring6RequiredPayee mobile number (international format)
  • Required when the 5th and 6th characters of the SWIFT Code are JP
fileListobjectRequiredFile list
withdrawalAccountKeyobject50RequiredAccount unique identifier

Delete Withdrawal Account

ParameterTypeLengthRequiredDescriptionExample
withdrawalAccountKeystring20RequiredAccount unique identifier

Fund Payment Accounts

Query Fund Payment Accounts

ParameterTypeLengthRequiredDescriptionExample
keyWordsstring200OptionalSearch keywords (e.g., currency)
receiptOpccountNostring20OptionalPayee OPCCOUNT number

Add Fund Payment Account

ParameterTypeLengthRequiredDescriptionExample
receiptOpccountNostring20RequiredPayee OPCCOUNT number
  • must not be empty when the account type is OPCCOUNT

Delete Fund Payment Account

ParameterTypeLengthRequiredDescriptionExample
fundPaymentAccountKeyint19RequiredPayout Account unique identifier

Withdrawals

Query Withdrawal Records

ParameterTypeLengthRequiredDescriptionExample
startTimestring19RequiredStart time
  • Format: yyyy-MM-dd HH:mm:ss
endTimestring19RequiredEnd time
  • Format: yyyy-MM-dd HH:mm:ss
pageSizeint5OptionalPage size
  • default is 10
pageNumint5OptionalCurrent page number
  • Default is 1
statusint1OptionalWithdrawal status
  • -1: Pending
  • 0: Failure
  • 1: Success
  • 2: Send back
  • 3: Cancel
withdrawalCurrencyarray3OptionalWithdrawal currency

Withdrawal Quotation

ParameterTypeLengthRequiredDescriptionExample
withdrawalAccountKeystring20RequiredWithdrawal Account unique identifier
billCurrencystring3RequiredBilling currency
billAmountstring18RequiredBilling amount
  • Maximum 12-digit integer and 6 decimal places
transactionFeesBearingMethodsstring3RequiredFee bearing method
  • BEN
  • OUR
  • SHA

Withdrawal Application

ParameterTypeLengthRequiredDescriptionExample
withdrawalAccountKeystring20RequiredWithdrawal Account unique identifier
billCurrencystring3RequiredBilling currency
billAmountstring18RequiredBilling amount
  • Maximum 12-digit integer and 6 decimal places
transactionFeesBearingMethodsstring3RequiredFee bearing method
  • BEN
  • OUR
  • SHA

Fund Payment (Payout)

Payout Application

ParameterTypeLengthRequiredDescriptionExample
fundPaymentAccountKeystring20ConditionsPayout Account unique identifier
withholdingAccountKeystring20ConditionsAccount unique identifier
(Only a single entry is permitted. Multiple withholdings require multiple requests)
  • When withholdingAccountKey is not empty: match the agent OPC number using the OPCCOUNT number for withholding.
    • Payer: Pass the OPCCOUNT number (agent OPC number) in withholdingAccountKey
    • Payee: Use the OPCCOUNT number in the request header (main account OPC number)
  • When withholdingAccountKey is empty: the payout request logic applies
    • Payer: Use the OPCCOUNT number in the request header
    • Payee: Use fundPaymentAccountKey (account unique identifier) as the payee
paymentAmountstring18RequiredPayout amount
  • Maximum 12-digit integer and 6 decimal places
paymentCurrencystring3RequiredPayout currency
accountTypeint18RequiredPayout account type
  • 1: OPCCOUNT account
autoDebitint1RequiredAutomatic payout deduction
  • 1: Enable
  • 2: Disable
transactionTypeint1RequiredPayout transaction type
  • 1: Overseas Advertisers
  • 2: Overseas Logistics
  • 3: Overseas Supplier
  • 4: Business/Equity Related Companies
  • 5: Inter Group Subsidiaries
orderNumberstring0-50OptionalTransaction order number
orderCurrencystring0-3OptionalTransaction order currency
orderAmountstring0-10OptionalTransaction order amount
orderNotesstring0-500OptionalOrder remark
paymentDescstring278OptionalPayout payment description
notesOnBankstring278OptionalBank transfer remark
confirmAgreementstring1RequiredConfirm agreement
  • Default is 1
cooperationAgreementListfileOptionalCooperation agreement attachment
  • When applicationType = 1 and (transactionType = 4 or 5) and payerName = 0: Required attachments: Payout company registration certificate + Payout bank account proof + Payout personal address proof + Payout equity structure diagram + Invoice & Cooperation Agreement attachment ID
  • When applicationType = 1 and (transactionType = 1, 2, or 3): Required attachments: Cooperation Agreement + Invoice
  • When applicationType = 1 and (transactionType = 4 or 5) and payerName = 1: Required attachments: Payout company registration certificate + Payout bank account proof + Payout personal address proof + Payout equity structure diagram + Payout subsidiary attachment
  • When applicationType = 2 and (transactionType = 1, 2, or 3): Required attachments: Cooperation Agreement + Invoice
  • When applicationType = 2 and (transactionType = 4 or 5) and payerName = 0: Required attachments: Invoice & Cooperation Agreement attachment ID
  • When applicationType = 2 and (transactionType = 4 or 5) and payerName = 1: Required attachments: Payout subsidiary attachment
invoiceListfileOptionalinvoiceAttachment
companyRegCertificateListfileOptionalPayout company registration certificate attachment
bankAccountProofListfileOptionalPayout bank account attachment
personalAddressProofListfileOptionalPayout personal address proof attachment
equityStructureChartListfileOptionalPayout equity structure diagram attachment
subsidiaryListfileOptionalPayout subsidiary attachment
invoiceAndCooperationAgreementListfileOptionalInvoice & Cooperation agreement attachment

Payout Confirmation / Deduction

ParameterTypeLengthRequiredDescriptionExample
batchNoint10RequiredPayout batch number
  • After a payout request is successful, the payout batch number will be returned
billCurrencystring3RequiredPayout currency
  • The default is the payout request currency paymentCurrency.
    For currency exchange, provide the target currency.

Query Payout Records

ParameterTypeLengthRequiredDescriptionExample
pageSizeint5OptionalPage size
  • default is 10
timeTypeint1OptionalTime type
  • 1: Application time
  • 2: Payment time
currencyListarrayOptionalSupported payment currencies
  • AUD
  • HKD
  • CHF
  • SGD
  • JPY
  • EUR
  • GBP
  • USD
  • CAD
  • NZD
  • ZAR
  • CNY
batchNostring10OptionalBatch number
  • After a payout request is successful, the payout batch number will be returned
startTimestring19OptionalStart time
  • Format: yyyy-MM-dd HH:mm:ss
endTimestring19OptionalEnd time
  • Format: yyyy-MM-dd HH:mm:ss
pageNumint5OptionalCurrent page number
  • Default is 1
statusint2OptionalPayout status
  • 1: Under review
  • 2: Under review failed
  • 3: Under review passed
  • 4: Processing
  • 6: Payout successful
  • 7: Returned
  • 9: Refunded
  • 10: Payout deduction failed
  • 12: Cancelled

Download Remittance Advice

ParameterTypeLengthRequiredDescriptionExample
batchNoint10RequiredPayment batch number
  • After a payout request is successful, the payout batch number will be returned

Cancel Payout

ParameterTypeLengthRequiredDescriptionExample
batchNoint10RequiredPayment batch number
  • After a payout request is successful, the payout batch number will be returned