Maintain Contracts
Overview
Maintain Contracts (Create, Edit (deprecated), Delete, Retrieve).
Path
/v1/realpay/{merchant_number}/maintain/contracts/{product}
Path Parameters
- merchant_number (string, required)
- product (string, required)
Common Query Parameters
- Version (string, required, default: v1)
POST Create Contract
Create a new contract. Instalments may be auto-generated based on supplied fields.
Request Body Schema (POST)
ContractPostRequest (array of Contract)
Request Example (POST)
{
"ContractPostRequest": [
{
"ClientNumber": "L00012",
"ContractNumber": "C1603",
"FrequencyCode": "MNTH",
"CollectionDay": 25,
"TrackingCode": "03",
"FirstCollectionDate": "YYYY-MM-DD HH24:MI",
"FirstCollectionAmount": 123.45,
"InstalmentStartDate": "YYYY-MM-DD HH24:MI",
"InstalmentAmount": 123.45,
"NumberOfInstalments": 1,
"CTCPercentage": 1
}
]
}
Success Response (200) Schema (POST)
ContractPostResponse
Response Example (POST)
{
"ContractPostResponse": [
{
"Successful": [
{
"ClientNumber": "L00012",
"ContractNumber": "C1603",
"FrequencyCode": "MNTH",
"CollectionDay": 25,
"TrackingCode": "03",
"FirstCollectionDate": "YYYY-MM-DD HH24:MI",
"FirstCollectionAmount": 123.45,
"InstalmentStartDate": "YYYY-MM-DD HH24:MI",
"InstalmentAmount": 123.45,
"NumberOfInstalments": 1,
"CTCPercentage": 1
}
],
"Failed": []
}
],
"APIResponse": {
"CallSequence": 7271,
"Status": "SUCCESS",
"Version": "1.0.0",
"Name": "INTERNAL NAME OF CALL"
}
}
PUT Edit Contract (Deprecated)
This operation is deprecated. Prefer creating a new contract or other supported flows.
Request Body Schema (PUT)
ContractPutRequest (array of Contract)
Request Example (PUT)
{
"ContractPutRequest": [
{
"ClientNumber": "L00012",
"ContractNumber": "C1603",
"FrequencyCode": "MNTH",
"CollectionDay": 25,
"TrackingCode": "03",
"FirstCollectionDate": "YYYY-MM-DD HH24:MI",
"FirstCollectionAmount": 123.45,
"InstalmentStartDate": "YYYY-MM-DD HH24:MI",
"InstalmentAmount": 123.45,
"NumberOfInstalments": 1,
"CTCPercentage": 1
}
]
}
Success Response (200) Schema (PUT)
ContractPutResponse
Response Example (PUT)
{
"ContractPutResponse": [
{
"Successful": [
{
"ClientNumber": "L00012",
"ContractNumber": "C1603",
"FrequencyCode": "MNTH",
"CollectionDay": 25,
"TrackingCode": "03",
"FirstCollectionDate": "YYYY-MM-DD HH24:MI",
"FirstCollectionAmount": 123.45,
"InstalmentStartDate": "YYYY-MM-DD HH24:MI",
"InstalmentAmount": 123.45,
"NumberOfInstalments": 1,
"CTCPercentage": 1
}
],
"Failed": []
}
],
"APIResponse": {
"CallSequence": 7271,
"Status": "SUCCESS",
"Version": "1.0.0",
"Name": "INTERNAL NAME OF CALL"
}
}
DELETE Delete Contract
Delete (cancel) a contract using ClientNumber & ContractNumber or ContractSequence plus CancelReason.
Additional Required Query Parameters (DELETE)
- ClientNumber (string) AND ContractNumber (string) OR ContractSequence (integer)
- CancelReason (string, required): For valid codes see
/v1/realpay/general/mandate_reason_codes/{Product} - CancelDate (string, required): Format
YYYY-MM-DD HH24:MI
Success Response (200) Schema (DELETE)
ContractDeleteResponse
Response Example (DELETE)
{
"ContractDeleteResponse": [
{
"Successful": [
{
"ContractSequence": 9011154048,
"ClientNumber": "L00012",
"ContractNumber": "C1603"
}
],
"Failed": []
}
],
"APIResponse": {
"CallSequence": 7271,
"Status": "SUCCESS",
"Version": "1.0.0",
"Name": "INTERNAL NAME OF CALL"
}
}
GET Retrieve Contract
Retrieve contract(s). Provide either ClientNumber & ContractNumber or ContractSequence.
Additional Query Parameters (GET)
- ClientNumber (string, optional)
- ContractNumber (string, optional)
- ContractSequence (integer, optional)
Success Response (200) Schema (GET)
ContractGetResponse
Response Example (GET)
{
"ContractGetResponse": [
{
"ClientNumber": "L00012",
"ContractNumber": "C1603",
"FrequencyCode": "MNTH",
"CollectionDay": 25,
"TrackingCode": "03",
"FirstCollectionDate": "YYYY-MM-DD HH24:MI",
"FirstCollectionAmount": 123.45,
"InstalmentStartDate": "YYYY-MM-DD HH24:MI",
"InstalmentAmount": 123.45,
"NumberOfInstalments": 1,
"CTCPercentage": 1
}
],
"APIResponse": {
"CallSequence": 7271,
"Status": "SUCCESS",
"Version": "1.0.0",
"Name": "INTERNAL NAME OF CALL"
}
}
Error Responses
- 400 BadRequest
- 401 Unauthorized
- 404 NotFound
- 500 InternalError
- 503 ServiceUnavailable