Voucher API

Voucher API – Pay

Using this API, you will be able to allow customers to pay for products and/or services using WiPay Vouchers. You must have a WiPay Business Verified account to use this API.

(OLD) Your WiPay account level must be at Gold (KYC Level 3) to use this API.


The configuration for the Voucher API calls can be seen below.

NOTE: When testing, please use the SANDBOX API URL.

API URL (Live)https://wipayfinancial.com/v1/voucher_pay
API URL (Sandbox)https://sandbox.wipayfinancial.com/v1/voucher_pay
Body Content-Typeapplication/x-www-form-urlencoded
API Response-TypeJSON Object


The Voucher API call can be passed with four (4) parameters.

ParameterDescription Notes Required
Your WiPay account number.1. Can be found in your Account Dashboard.Yes
detailsAn optional description of the transaction.1. Must be less than 255 characters long.No
totalThe total desired to be subtracted from the voucher value.1. Must be a value greater than “0”.
2. Must contain no more than two (2) decimal places.
3. Must be numeric only.
4. Flat transaction fee of $5.00 TTD is always added to total.
voucherThe 12-character voucher serial.1. Voucher’s current value must be greater than “5”. Yes

Test Parameters

You may use these parameters to make a test Voucher API call using the Sandbox API URL.

ParameterValid Test Value(s)
details"This is a test Voucher Payment"
total0.01 (or more)


All Voucher API calls return a JSON object. There are two main types of responses; “success” and “error“. These response types can be found in the value of the “statuskey in the JSON response object.


If all submitted data is valid, you will receive a JSON response object indicating a “successvalue for the “statuskey. Here, “value” is 5-greater-than-“total” less than the original value of the voucher before the form was submitted. Below is an example of a successful transaction using the Voucher API.

    "status": "success",
    "msg": "Voucher payment successful",
    "trxn_id": "5bda8f887426f",
    "value": "75.00"


error” responses may be received for various reasons. Check the value of the “msgkey in the JSON response object to diagnose what your specific error may be caused by. The following is an example of  an “error” response.

    "status": "error",
    "msg": "Too many attempts"

The possible values of the “msgkey in an “error” type response are as follows:

Error MessageLikely Cause
Parameter: account_number is missingThe submitted account_number or developer_id(old) in the API call is empty.
Parameter: account_number is unauthorizedThe account attached to the submitted account_number or developer_id(old) in the API call is not Verified or KYC Level too low(old).
Parameter: account_number not foundThere is no registered WiPay account with an Account Number that matches the submitted account_number or developer_id(old) in the API call.
Parameter: total cannot be less than 0The submitted total in the API call is negative.
Parameter: total has incorrect formatThe submitted total in the API call is either non-numeric, or has too many decimal places.
Parameter: total is missingThe submitted total in the API call is empty.
Parameter: voucher is missingThe submitted voucher in the API call is empty.
Parameter: voucher not foundThere is no registered WiPay Voucher with a Voucher Number that matches the submitted voucher in the API call.
Parameter: voucher value insufficientThe current value of the submitted voucher in the API call is too low to make a successful transaction.
Too many attemptsThere were more than five (5) API calls within the last sixty (60) seconds.