Get started

API Endpoint

https://payment.vbankpay.business/api/v1/enquire
                

Please refer to the integration guide for the integration testing and live hostname of PaymentGateway above for the actual URL.

To use this API, you need an API merchant keys. Please contact us at support@vbankpay.business to get your own API merchant keys.

Enquire


# Here is a POST request example
{
    "merchant_account":"900136",
    "version":"4",
    "merchant_order": "vi20231129143843",
    "amount": 10000,
    "currency":"PHP",
    "control": "e27da017096a3bfcd659fa1c42cf68ece226cf7c"
}
                

To submit enquire request you need to make a POST API call to the following url :
https://payment.vbankpay.business/api/v1/enquire




# Response example :
{
    "transaction_status": {
        "memo": "",
        "status": "A0",
        "message": "Paid / Refunded / Successfully requested."
    },
    "transaction": {
        "merchant_account": "900136",
        "transaction_id": "1103795",
        "merchant_order": "vi20231129143843",
        "amount": "10000",
        "currency": "PHP",
        "bank_account_number": "09123456789",
        "bank_address": "Philippines",
        "bank_code": "SPP_GXCHPHM2"
    },
    "customer": {
        "customer_name": "Juan Dela Cruz",
        "bank_province_code": "018040010",
        "bank_city_code": "018040010"
    }
}
                

QUERY PARAMETERS IN JSON BODY

Field Type Description
merchant_account String Merchant account number, assigned by VbankPay 12 bytes max. *[mandatory]
merchant_order String Unique order identifier, defined by Merchant 12 bytes max. *[mandatory]
amount Numeric The order amount, in non floating format. (example: 100075 represents 1000.75 as amount. 10 bytes max. *[mandatory]
Must match initial transaction
currency String Transaction currency, in ISO 4217 format. Not all currencies are supported for all merchants, 3 bytes. *[mandatory]
- supports PHP currency.
Must match initial transaction
version String The version number of transaction enquiry, 1 bytes max. *[mandatory]
1 – Enquiry deposit transaction status.
4 – Enquiry payout transaction status.
control String The checksum. 40 bytes. *[mandatory]



Create Enquire Request Control Checksum

NOTE: Never expose your partner_control provided by us to anyone. Doing so will compromise the security of future transaction.

SHA-1 checksum is used in ensuring data integrity and message authenticity in communication. This checksum is calculated by concatenating the data in transaction request/response in the correct order and append the shared secret (partner_control) to the end of concatenating string, feed it into SHA-1 function and supply the SHA-1 function result in control parameter of the request.

For more details of Secure Hash Algorithm 1 (SHA1), see clickhere

To create the checksum, concatenate the value of the following parameters into one string variable in the following order:
(merchant_account + merchant_order + amount + currency + version + partner_control)

Below example to verify checksum:
merchant_account 900136
merchant_order vi20231129143843
amount 10000
currency PHP
version 4
partner_control 73C76D7B2B090C7EEBBA3CFD26782AA0

The complete string for above example data becomes as follows:
900136vi2023112914384310000PHP473C 76D7B2B090C7EEBBA3CFD26782AA0

For this example partner_control key is: 73C76D7B2B090C7EEBBA3CFD26782AA0

Then hash the string using the SHA-1 hash function (Example below):
sha1(‘SHA1’, ‘900136vi2023112914384310000PHP473C 76D7B2B090C7EEBBA3CFD26782AA0’)

Then supply this string and the partner control as the key to SHA-1 function. And supply the result to control parameter, the last parameter you need to initiate the transaction. In our example, the control parameter would become:

e27da017096a3bfcd659fa1c42cf68ece226cf7c