Skip to main content

Confirm virtual account (VA) deletion

Use this API to confirm the deletion of a virtual account (VA) after you have sent a deletion request. It is typically used when the bank requires OTP verification to complete the cancellation.

POST
URLhttps://open-api.tingee.vn/v1/confirm-delete-va

Confirm a VA deletion request with the confirmId received from the delete-va API. Depending on the bank, you may also need to pass otpNumber.

Header Request​

HeaderRequiredDescription
Content-Type✓application/json
x-client-id✓Partner identifier issued by TINGEE.
x-signature✓HMAC SHA512 authentication signature. See How to generate the signature.
x-request-timestamp✓Time the request is sent (format: yyyyMMddHHmmssSSS, UTC+7)

Body Parameter​

FieldTypeRequiredDescription
merchantIdnumber✕Merchant ID
(required if you connect with a Master Merchant account).
bankBinstring✓Bank BIN.
See Supported banks.
confirmIdstring✓Confirmation ID received from the Delete virtual account number API.
otpNumberstring✓OTP the bank sends to the account holder (SMS / bank app).

Code samples​

curl --location --request POST 'https://open-api.tingee.vn/v1/confirm-delete-va' \
--header 'accept: application/json' \
--header 'x-client-id: YOUR_CLIENT_ID' \
--header 'x-request-timestamp: 20240509154004003' \
--header 'x-signature: YOUR_SIGNATURE' \
--header 'Content-Type: application/json' \
--data '{
"bankBin": "970418",
"confirmId": "72496bf2-ba25-4397-bd38-b9c04baedfd7",
"otpNumber": "123456"
}'

Sample Response​

On successful confirmation, data contains the details of the deleted account:

{
"code": "00",
"message": "Success",
"data": {
"id": 12345,
"creationTime": "2025-09-04T08:12:32.160Z",
"merchantId": 1001,
"shopId": 1024,
"cashFlowSource": "bank-transfer",
"name": "ACB - 88889999",
"bankName": "ACB",
"bankBin": "970416",
"accountType": "personal-account",
"linkType": "api-exact",
"accountName": "NGUYEN VAN A",
"accountNumber": "88889999",
"vaAccountNumber": "88889999",
"realVANumber": "88889999",
"isNotifyAccountNumber": true,
"status": "active",
"transactionType": "credit"
}
}
FieldTypeDescription
codestringResult code (00 = success).
messagestringResponse message.
data.idnumberAccount ID on the TINGEE system.
data.creationTimestringAccount creation time (ISO 8601, UTC).
data.merchantIdnumberID of the Merchant that owns the account.
data.shopIdnumberID of the shop the account is assigned to.
data.cashFlowSourcestringSource of funds: bank-transfer or card.
data.namestringAccount nickname.
data.bankNamestringBank code (e.g. ACB, OCB).
data.bankBinstringBank BIN.
data.accountTypestringAccount type (personal-account, business-account, business-household-account).
data.linkTypestringLink method: api-exact, manual-exact, manual-include.
data.accountNamestringAccount holder name.
data.accountNumberstringOriginal account number.
data.vaAccountNumberstringVirtual account number stored on the system.
data.realVANumberstringVirtual account number used to receive money (the value the partner passed in vaAccountNumber when calling the delete API).
data.isNotifyAccountNumberbooleantrue if this is an original account number link.
data.statusstringAccount status at the time of deletion: active, inactive, lock.
data.transactionTypestringRegistered notification type: credit or debit.
note

data may contain additional internal technical fields (audit information, bank configuration...). Do not rely on fields that are not described above.


Common error codes​

CodeDescriptionHow to handle
1065OTP timed outThe confirmId has expired. Call Delete account number again.
1080Incorrect ConfirmIdThe confirmId does not belong to the Merchant calling the API.
1010Account number not foundThe account number no longer exists or does not belong to the Merchant.
1021The bank does not require a confirmation stepOnly ACB, OCB, PGBank, VietinBank, Sacombank, VIB require deletion confirmation; other banks are deleted immediately at the delete-va step.
90, 91, 92, 97Request authentication error (timestamp, client-id, signature)See System error codes.
OthersOther errorsSee Error codes.