post https://uat.herepay.org/api/v1/herepay/initiate
Important Reminder
⚠️ Important Notes about Initiate Invoice API
- This API is designed to start the payment process . Upon successful initiation, the API will redirect user to the bank simulator (or real bank gateway in production) via a form
POST
, where they can complete the payment.- Since the redirection happens immediately after form submission, you will not see detailed error messages in the browser if the request is malformed or contains invalid values.
- If the request is invalid (e.g., missing required fields, wrong format, or incorrect checksum), the only feedback you will receive is a "Checksum verification failed" error .
❗️This means you cannot
directly debug
these issues from the browser or network console. You must:
- Ensure all required fields are present and in the correct format.
- Make sure the checksum is correctly generated based on the exact request payload, excluding the checksum itself.
- Test with static known-good values first to validate your implementation.
🔍 Tip: During development, use the checksum generation guide and a known working payload to isolate and test checksum issues.
Parameter | Description | Condition | Example |
---|---|---|---|
payment_code | Unique payment code generated by merchant end for reference. | required | INV20250609-XYZ123 |
created_at | Date Time Format YYYY-MM-DD hh:mm:ss | required | 2024-06-12 12:23:32 |
amount | MYR Eg; 1 - RM1 will be your initiate amount | required | 10 |
name | Valid payer full name in one line. | required | johndoe |
Valid payer email Must be email format Maximum 50 characters | required | [email protected] | |
phone | Valid payer phone number (e.g: 0123121989 )Max 15 Character | required | 0135162634 |
description | Payment Description / Invoice Name Max 150 characters. Be specific and concise (e.g., Registration Fee 2025 ). | required | Pembayaran Buku |
bank_prefix | Select the bank code (prefix) retrieved from Payment Channel API. This code uniquely identifies the bank for payment processing. (e.g., ABB0233 ). | required | TEST0021 |
payment_method | The selected payment method for the transaction. Values are retrieved dynamically from the Payment Channel API (e.g., Corporate Banking , Online Banking ). | required | Online Banking |
checksum | A SHA256 hash generated from the full request body (excluding the checksum itself). Must be included in the request payload. | required | See how to generate a checksum |