This page is a ZenPay-styled copy of the Zenith Payments developer documentation. View the original docs
Request Pays API
A request-to-pay sends a payment request to a customer via email or SMS. Customers receive a link to complete payment through the hosted payment page.
Create a request pay#
View this endpoint in the original docs
Creates a request pay from the supplied request payload.
Authentication: Api-Key + BasicAuth
Request body
Collection of request pay entries inside a container required to create a request pay.
Content types: application/json, application/x-www-form-urlencoded · required
Schema: RequestPayRequest
| Field | Type | Description |
|---|---|---|
merchantUniqueRequestBatchId | string | Unique batch id provided by the merchant. Max length: 50 |
requestPaymentEntries required | array of object (RequestPayRequestRecord) | Collection of RequestPayment entry. |
Example: Request-pay batch created
Baseline request submission; creating the batch does not demonstrate delivery or payment.
{
"merchantUniqueRequestBatchId": "reqpay-batch-7432704337872",
"requestPaymentEntries": [
{
"customerReference": "cust-reqpay-8090506970882",
"email": "test@zenpay.com.au",
"firstName": "Test",
"lastName": "Customer",
"merchantUniquePaymentId": "reqpay-entry-2152089338749",
"mobile": "0400000000",
"paymentAmount": 1
}
]
}Responses
201 Request to pay created successfully.
application/json · object (RequestPayResponse)
Example: Request-pay batch created
Baseline request submission; creating the batch does not demonstrate delivery or payment.
{
"merchantCode": "1337",
"merchantName": "Menethil",
"merchantUniqueRequestBatchId": "reqpay-batch-7432704337872",
"requestPayId": 551,
"warningMessages": ""
}300 Duplicate merchant unique id.
application/json · object (AmbiguousResult)
Example: Request-pay batch id already used
Duplicate submission response.
{
"message": "The merchant unique id already exists."
}400 Invalid request pay details.
application/json · object
500 Something went wrong. Request to pay may or may not be created.
application/json · object (InternalServerErrorResult)
Example request (cURL, sandbox host)
curl -X POST 'https://api.sandbox.zenpay.com.au/v2/requestpays' \
-H 'Api-Key: <your API key>' \
-u '<username>:<password>' \
-H 'Content-Type: application/json' \
-d '{
"merchantUniqueRequestBatchId": "reqpay-batch-7432704337872",
"requestPaymentEntries": [
{
"customerReference": "cust-reqpay-8090506970882",
"email": "test@zenpay.com.au",
"firstName": "Test",
"lastName": "Customer",
"merchantUniquePaymentId": "reqpay-entry-2152089338749",
"mobile": "0400000000",
"paymentAmount": 1
}
]
}'Get a request pay#
View this endpoint in the original docs
Returns the request pay for the specified request pay ID.
Authentication: Api-Key + BasicAuth
Parameters
| Name | In | Type | Description |
|---|---|---|---|
requestPayId required | path | integer <int32> | The unique request pay identifier. |
Responses
200 Request Pay summary.
application/json · object (ApiRequestPaySummary)
Example: Request-pay batch awaiting processing
Shows the state before processing completes.
{
"merchantCode": "1337",
"merchantName": "Menethil",
"merchantUniqueRequestBatchId": "reqpay-batch-5901777124032",
"processingDate": "2026-09-24T00:36:48.05",
"status": "ReadyForPaymentProcessing",
"submittedDate": "2026-09-24T00:36:48.08",
"totalAmount": 1,
"totalEntries": 1
}Example: Request-pay batch processing completed
Shows processing completion, which must not be described as customer payment completion.
{
"merchantCode": "1337",
"merchantName": "Menethil",
"merchantUniqueRequestBatchId": "reqpay-batch-5901777124032",
"processingDate": "2026-09-24T00:36:48.05",
"status": "Completed",
"submittedDate": "2026-09-24T00:36:48.08",
"totalAmount": 1,
"totalEntries": 1
}404 Request to pay not found.
application/json · object
500 Unable to get the request payment.
application/json · object
Example request (cURL, sandbox host)
curl -X GET 'https://api.sandbox.zenpay.com.au/v2/requestpays/{requestPayId}' \
-H 'Api-Key: <your API key>' \
-u '<username>:<password>' \
-H 'Accept: application/json'List request pay entries#
View this endpoint in the original docs
Returns the entries for the specified request pay.
Authentication: Api-Key + BasicAuth
Parameters
| Name | In | Type | Description |
|---|---|---|---|
requestPayId required | path | integer <int32> | The unique request pay identifier. |
Responses
200 List of request pay entries.
application/json · array of object (ApiRequestPayEntry)
Example: Entry refused for its payment option
One representative entry rejection; describe other rejection reasons in the status documentation.
[
{
"companyName": "Test Company Pty Ltd",
"customerName": "Test Customer",
"customerReference": "cust-403probe-8471919173",
"email": "test@zenpay.com.au",
"entryStatus": "Payment option is not RequestPay",
"isPaymentRecalled": false,
"isPaymentRefunded": false,
"isPaymentRetryScheduled": false,
"merchantCode": "1337",
"merchantName": "Menethil",
"mobile": "0400000000",
"paymentAmount": 1,
"paymentStatus": "",
"requestReference": "9ece7b85-6776-4bfe-93d6-e79a2dff036e"
}
]Example: Entry with a payment request sent
Shows the delivery-stage entry outcome without claiming payment.
[
{
"customerName": "Test Customer",
"customerReference": "cust-reqpay-3008281808812",
"email": "test@zenpay.com.au",
"entryStatus": "Request Sent to Customer",
"isPaymentRecalled": false,
"isPaymentRefunded": false,
"isPaymentRetryScheduled": false,
"merchantCode": "1337",
"merchantName": "Menethil",
"mobile": "0400000000",
"paymentAmount": 1,
"paymentStatus": "",
"requestReference": "311bc01c-1aef-486e-99e3-ab51d6b0878f"
}
]Example: Pending request-pay entry
Shows the initial entry state.
[
{
"customerName": "Test Customer",
"customerReference": "cust-reqpay-3008281808812",
"email": "test@zenpay.com.au",
"entryStatus": "Request Pending",
"isPaymentRecalled": false,
"isPaymentRefunded": false,
"isPaymentRetryScheduled": false,
"merchantCode": "1337",
"merchantName": "Menethil",
"mobile": "0400000000",
"paymentAmount": 1,
"paymentStatus": "",
"requestReference": "311bc01c-1aef-486e-99e3-ab51d6b0878f"
}
]404 Request pay not found.
application/json · object
500 Unable to get the request to pay.
application/json · object
Example request (cURL, sandbox host)
curl -X GET 'https://api.sandbox.zenpay.com.au/v2/requestpays/{requestPayId}/entries' \
-H 'Api-Key: <your API key>' \
-u '<username>:<password>' \
-H 'Accept: application/json'