Skip to content

Maintain Mandates

Overview

Maintain Mandates (Create, Edit, Delete, Retrieve).

Path

/v1/realpay/{merchant_number}/maintain/mandates/{product}

Path Parameters

  • merchant_number (string, required)
  • product (string, required)

Common Query Parameters

  • Version (string, required, default: v1)

POST Create Mandate

Create a new mandate. May auto-generate instalments depending on NumberOfInstalments and related fields.

Request Body Schema (POST)

MandatePostRequest (array of Mandate)

Request Example (POST)

{
  "MandatePostRequest": [
    {
      "ClientNumber": "L00012",
      "ContractNumber": "C1603",
      "MandateType": "F",
      "TransactionType": "TT2",
      "MandateActionDate": "YYYY-MM-DD HH24:MI",
      "FrequencyCode": "MNTH",
      "CollectionDay": 25,
      "DebitSequenceType": "OOFF",
      "AdjustmentCategory": "N",
      "AdjustmentAmount": 123.45,
      "AdjustmentRate": 7.25,
      "TrackingYN": "N",
      "TrackingCode": "03",
      "FirstCollectionDate": "YYYY-MM-DD HH24:MI",
      "FirstCollectionAmount": 123.45,
      "InstalmentStartDate": "YYYY-MM-DD HH24:MI",
      "InstalmentAmount": 123.45,
      "MaximumAmount": 123.45,
      "NumberOfInstalments": 1,
      "RMS": "N"
    }
  ]
}

Success Response (200) Schema (POST)

MandatePostResponse

Response Example (POST)

{
  "MandatePostResponse": [
    {
      "Successful": [
        {
          "ClientNumber": "L00012",
          "ContractNumber": "C1603",
          "MandateType": "F",
          "TransactionType": "TT2",
          "MandateActionDate": "YYYY-MM-DD HH24:MI",
          "FrequencyCode": "MNTH",
          "CollectionDay": 25,
          "DebitSequenceType": "OOFF",
          "AdjustmentCategory": "N",
          "TrackingYN": "N",
          "TrackingCode": "03",
          "InstalmentStartDate": "YYYY-MM-DD HH24:MI",
          "InstalmentAmount": 123.45,
          "NumberOfInstalments": 1
        }
      ],
      "Failed": []
    }
  ],
  "APIResponse": {
    "CallSequence": 7271,
    "Status": "SUCCESS",
    "Version": "1.0.0",
    "Name": "INTERNAL NAME OF CALL"
  }
}

PUT Edit Mandate

Edit (amend) an existing mandate. One of (ClientNumber & ContractNumber) OR ContractSequence must be provided per mandate item.

Request Body Schema (PUT)

MandatePutRequest (array of Mandate)

Request Example (PUT)

{
  "MandatePutRequest": [
    {
      "ClientNumber": "L00012",
      "ContractNumber": "C1603",
      "MandateType": "F",
      "TransactionType": "TT2",
      "MandateActionDate": "YYYY-MM-DD HH24:MI",
      "FrequencyCode": "MNTH",
      "CollectionDay": 25,
      "DebitSequenceType": "OOFF",
      "AdjustmentCategory": "N",
      "TrackingYN": "N",
      "TrackingCode": "03",
      "InstalmentStartDate": "YYYY-MM-DD HH24:MI",
      "InstalmentAmount": 123.45,
      "NumberOfInstalments": 1
    }
  ]
}

Success Response (200) Schema (PUT)

MandatePutResponse

Response Example (PUT)

{
  "MandatePutResponse": [
    {
      "Successful": [
        {
          "ClientNumber": "L00012",
          "ContractNumber": "C1603",
          "MandateType": "F",
          "TransactionType": "TT2",
          "FrequencyCode": "MNTH",
          "CollectionDay": 25,
          "DebitSequenceType": "OOFF",
          "AdjustmentCategory": "N",
          "TrackingYN": "N",
          "TrackingCode": "03"
        }
      ],
      "Failed": []
    }
  ],
  "APIResponse": {
    "CallSequence": 7271,
    "Status": "SUCCESS",
    "Version": "1.0.0",
    "Name": "INTERNAL NAME OF CALL"
  }
}

DELETE Delete Mandate

Cancel a mandate. One of (ClientNumber & ContractNumber) OR ContractSequence must be provided plus CancelReason & CancelDate.

Additional Required Query Parameters (DELETE)

  • ClientNumber (string) AND ContractNumber (string) OR ContractSequence (integer)
  • CancelReason (string, required): For valid codes see /general/mandate_reason_codes/{Product}
  • CancelDate (string, required): Format YYYY-MM-DD HH24:MI

Success Response (200) Schema (DELETE)

MandateDeleteResponse

Response Example (DELETE)

{
  "MandateDeleteResponse": [
    {
      "Successful": [
        {
          "ContractSequence": 9011154048,
          "ClientNumber": "L00012",
          "ContractNumber": "C1603"
        }
      ],
      "Failed": []
    }
  ],
  "APIResponse": {
    "CallSequence": 7271,
    "Status": "SUCCESS",
    "Version": "1.0.0",
    "Name": "INTERNAL NAME OF CALL"
  }
}

GET Retrieve Mandate

Retrieve mandate(s) by (ClientNumber & ContractNumber) OR ContractSequence.

Additional Query Parameters (GET)

  • ClientNumber (string, optional)
  • ContractNumber (string, optional)
  • ContractSequence (integer, optional)
  • MandateStatusCode (string, optional)

Success Response (200) Schema (GET)

MandateGetResponse

Response Example (GET)

{
  "MandateGetResponse": [
    {
      "ClientNumber": "L00012",
      "ContractNumber": "C1603",
      "MandateType": "F",
      "TransactionType": "TT2",
      "FrequencyCode": "MNTH",
      "CollectionDay": 25,
      "DebitSequenceType": "OOFF",
      "AdjustmentCategory": "N",
      "TrackingYN": "N",
      "TrackingCode": "03",
      "InstalmentAmount": 123.45,
      "NumberOfInstalments": 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