Institution/Hybrid/Insert Voucher
POST
/api/insertPPMVoucherInsert Voucher
Insert Voucher service is used to insert the Voucher/invoice details in KuickPay system/db, which is provided bymerchant/institution. Institution needs to call ourREST service for generating avoucher/consumer number at our end. The details of the function are as under:
1Insert Voucher
→2Customer Pays
→3Payment Inquiry
Authentication
Pass these two headers on every request to secure web service access.
usernameProvided by Kuickpay. String (AlphaNumeric), max 20 characters.passwordProvided by Kuickpay. String (AlphaNumeric), max 20 characters.Amount Format
amount1–amount10, totalAmount, and amountAfterDueDate are plain PKR numbers — do not multiply by 100.
Request Parameters
| Parameter | Type | Required | Max Length | Description |
|---|---|---|---|---|
institutionID | string | required | 18 | Your Kuickpay-assigned institution ID. |
registrationNumber | string | required | 300 | Your internal registration/reference number for this consumer. |
head1 | string | required | 15 | Description of fee head 1 (e.g. "Fee"). |
amount1 | number | required | — | Amount for head1, in PKR. |
head2 | string | optional | 15 | Description of fee head 2 (e.g. "Charges"). Leave empty if unused. |
amount2 | number | optional | — | Amount for head2, in PKR. 0 if unused. |
head3 | string | optional | 15 | Description of fee head 3. Leave empty if unused. |
amount3 | number | optional | — | Amount for head3, in PKR. 0 if unused. |
head4 | string | optional | 15 | Description of fee head 4. Leave empty if unused. |
amount4 | number | optional | — | Amount for head4, in PKR. 0 if unused. |
head5 | string | optional | 15 | Description of fee head 5. Leave empty if unused. |
amount5 | number | optional | — | Amount for head5, in PKR. 0 if unused. |
head6 | string | optional | 15 | Description of fee head 6. Leave empty if unused. |
amount6 | number | optional | — | Amount for head6, in PKR. 0 if unused. |
head7 | string | optional | 15 | Description of fee head 7. Leave empty if unused. |
amount7 | number | optional | — | Amount for head7, in PKR. 0 if unused. |
head8 | string | optional | 15 | Description of fee head 8. Leave empty if unused. |
amount8 | number | optional | — | Amount for head8, in PKR. 0 if unused. |
head9 | string | optional | 15 | Description of fee head 9. Leave empty if unused. |
amount9 | number | optional | — | Amount for head9, in PKR. 0 if unused. |
head10 | string | optional | 15 | Description of fee head 10. Leave empty if unused. |
amount10 | number | optional | — | Amount for head10, in PKR. 0 if unused. |
totalAmount | number | required | — | Sum of amount1–amount10, in PKR. |
dueDate | string | required | — | Bill due date, format YYYY-MM-DD. |
amountAfterDueDate | number | required | — | Amount payable after due date, in PKR. |
expiryDate | string | required | — | Voucher expiry date, format YYYY-MM-DD. |
issueDate | string | required | — | Voucher issue date, format YYYY-MM-DD. |
voucherMonth | string | required | 2 | Billing month, MM format (e.g. "08"). |
voucherYear | string | required | 4 | Billing year, YYYY format (e.g. "2026"). |
name | string | required | — | Consumer's full name. |
mobile | string | required | — | Consumer's mobile number. |
email | string | required | — | Consumer's email address. |
branch | string | optional | — | Branch code or name. |
Response
{
"response_Code": "00",
"response_description": "000083249220",
"responseCode_Detail": "228"
}Response Parameters
| Parameter | Type | Required | Max Length | Description |
|---|---|---|---|---|
response_Code | string | required | 2 | "00" success. "01" a required parameter was sent blank. "04" wrong username/password. "05" processing/service failure. |
response_description | string | required | — | On success, the generated voucher number (e.g. "000083249220"). On failure, a human-readable error message. |
responseCode_Detail | string | required | — | System-generated voucher detail/sequence number (e.g. "228"). |
Response Codes
| Code | Meaning |
|---|---|
| 00 | Successful response. |
| 01 | Invalid — a required parameter was sent blank. |
| 04 | Wrong credentials — username/password do not match. |
| 05 | Processing/service failed — unknown error. |
Next Step
Check payment status
Insert Voucher — Request
curl -X POST https://uat-adminapi.kuickpay.com/api/insertPPMVoucher \
-H "username: kuickpay" \
-H "password: payx" \
-H "Content-Type: application/json" \
-d '{
"institutionID": "02429",
"registrationNumber": "5675",
"head1": "Fee",
"amount1": 100,
"head2": "Charges",
"amount2": 0,
"head3": "",
"amount3": 0,
"head4": "",
"amount4": 0,
"head5": "",
"amount5": 0,
"head6": "",
"amount6": 0,
"head7": "",
"amount7": 0,
"head8": "",
"amount8": 0,
"head9": "",
"amount9": 0,
"head10": "",
"amount10": 0,
"totalAmount": 100,
"dueDate": "2026-07-27",
"amountAfterDueDate": 100,
"expiryDate": "2026-12-31",
"issueDate": "2026-07-06",
"voucherMonth": "08",
"voucherYear": "2026",
"name": "Mohsin Khan",
"mobile": "03412541075",
"email": "mohsin@gmail.com",
"branch": "khi"
}'