Cancel a prior request for a payment to an account

Instructs Electrum to notify an Industry Participant that a prior outboundRequestToPay operation should be cancelled if it's not yet been completed. This does not guarantee a cancellation however as the requested payment may have already been paid or rejected or expired etc. Whether the cancellation was successful or not is communicated via an [outboundRequestToPayCancellationResponse operation] (https://api.electrum.io/elpapi/openapi/elpapi-partner/operation/outboundRequestToPayCancellationResponse/). If the cancellation was successful, the status will be CANCELLED. Otherwise the status will reflect the current status of the RTP.

Scheme Applicable
ZA_RPP
ZA_EFT
ZA_RTC
Request
header Parameters
traceparent
string (traceparent) ^[A-Fa-f0-9]{2}\-[A-Fa-f0-9]{32}\-[A-Fa-f0-9]...

A value used to trace an HTTP message within an Electrum Regulated Payments implementation. This field must be set as per the traceparent element defined in the (W3C Trace Context Level 2 specification (V2))[https://www.w3.org/TR/trace-context-2/].

tracestate
string (tracestate) ^[A-Za-z0-9=, _\*/@]{0,1024}$

A value used to provide context to an HTTP message as it is traced within an Electrum Regulated Payments implementation. This field must be set as per the traceparent element defined in the (W3C Trace Context Level 2 specification (V2))[https://www.w3.org/TR/trace-context-2/].

Request Body schema: application/json
object (InstitutionIdentification)
object (InstitutionIdentification)
required
object (MessageIdentifiers)

Holds a point-to-point unique message identification string as well as a message's creation date time.

required
object (MessageIdentifiers)

Holds a point-to-point unique message identification string as well as a message's creation date time.

object (OriginalRequestToPayData)

Contains key elements related to the original request to pay that is being referred to.

required
object (TransactionIdentifiers)

Holds a series of identifiers to identify the transaction or an individual message that is part of a transaction.

reasonCode
required
string

The reason the request to pay is being cancelled.

  • AC03: InvalidCreditorAccountNumber - Wrong account number in Credit Transfer.
  • AGNT: IncorrectAgent- Agent in the payment workflow is incorrect.
  • AM09: WrongAmount- Amount is not the amount agreed or expected.
  • BE16: InvalidDebtorIdentificationCode- Debtor or Ultimate Debtor identification code missing or invalid.
  • COVR: CoverCancelledOrReturned- Cover payments has either been returned or cancelled.
  • CURR: IncorrectCurrency- Currency of the payment is incorrect.
  • CUST: RequestedByCustomer- Cancellation requested by the Creditor.
  • CUTA: CancelUponUnableToApply- Cancellation requested because an investigation request has been received and no remediation is possible.
  • DS24: TimeOut- Cancellation requested because the original payment order expired due to time-out.
  • DT01: InvalidDate- Invalid date (for example, wrong or missing settlement date).
  • DUPL: DuplicatePayment- Payment is a duplicate of another payment.
  • FRAD: FraudulentOrigin- Cancellation requested following a transaction that was originated fraudulently. The use of the FraudulentOrigin code should be governed by jurisdictions.
  • FRNA: ForwardToNextAgent- To complement a rejection response, suggesting the request for cancelation should be forwarded to the next agent in the payment transaction chain.
  • FRTR: FinalResponse- Direct Debit Tracking recalled as Mandate Cancelled
  • INDM: IndemnityRequired- To express the wish to establish a bilateral indemnity agreement.
  • MODT: ModifiedTransaction- The underlying transaction in relation to an RTP was modified.
  • PAID: TransactionAlreadyPaid- The underlying transaction in relation to an RTP was already paid (via other means).
  • SVNR: ServiceNotRendered- The payment is cancelled since a cash amount rendered was not correct or goods or a service was not rendered to the customer, e.g. in an e-commerce situation.
  • SYAD: RequestToSettlementSystemAdministrator- Cancellation requested by System Member to Settlement System Administrator to indicate that the cancellation request must not be forwarded further in the chain.
  • TECH: TechnicalProblem- Cancellation requested following technical problems resulting in an erroneous transaction.
  • UPAY: UnduePayment- Payment is not justified.
  • ENUE: EndUserError- Cancellation or request for return requested by the Debtor specifically due to one or more errors by debtor in the original Credit Transfer. Usage: This code can be used for any error in the original Credit Transfer made by the Debtor. Can also be used if multiple errors were made in the original Credit Transfer.
  • UAPA: UnauthorizedPayment- "The Debtor is requesting a return of the payment because the payment was not properly authorized. Usage: This code can be used in the case where a Credit Transfer was made without proper authorization from the Debtor. This could be due to compromised end user credentials."
  • NARR: Narrative- Reason is provided as narrative information in the additional reason information.
  • AC02: InvalidDebtorAccountNumber- Debtor account number invalid or missing.
  • BIAS: BatchInstructionAlreadySettled- Process a cancellation request but batch already settled.
  • INCR: InvalidCancellationRequest- Process a cancellation request with incorrect reference to original batch.
  • DRTP: DuplicationRequestToPay- Duplication of a request-to-pay message.
Enum: "AC03" "AGNT" "AM09" "BE16" "COVR" "CURR" "CUST" "CUTA" "DS24" "DT01" "DUPL" "FRAD" "FRNA" "FRTR" "INDM" "MODT" "PAID" "SVNR" "SYAD" "TECH" "UPAY" "ENUE" "UAPA" "NARR" "AC02" "BIAS" "INCR" "DRTP"
reasonDescription
string

A description of the reason the request to pay is being cancelled.

schema
required
string
Value: "RequestToPayCancellation"
Responses
202

Accepted. RFC9110 - 202

400

Bad request. RFC9110 - 400

401

Unauthorized. RFC9110 - 401

403

Forbidden. RFC9110 - 403

405

Method not allowed. RFC9110 - 405

422

Unprocessable content. RFC9110 - 422

429

Too Many Requests. RFC6585 - 429

500

Internal server error. RFC9110 - 500

503

Service unavailable. RFC9110 - 503

post/transactions/outbound/request-to-pay/cancellation-request
Request samples
application/json
{
  • "reasonCode": "CUST",
  • "schema": "RequestToPayCancellation",
  • "messageIdentifiers": {
    },
  • "originalMessageIdentifiers": {
    },
  • "originalTransactionIdentifiers": {
    }
}
Response samples
application/json
{
  • "detail": "string",
  • "message": "string",
  • "schema": "ErrorDetail"
}
Copyright © Electrum Payments (Pty) Ltd. 2019-2023. All right reserved.