The Abort message allows the ECR to stop and terminate prematurely the processing of a transaction. Most of the time a message is aborted, because customer has an additional request or want to change his payment method.
Once an Authorization is in progress and a message has been sent to the server, transaction cannot be aborted;
Perform Abort
Request MessageHeader
Elements | Required | Description |
---|---|---|
ProtocolVersion | 3.1 | |
MessageClass | Service | |
MessageCategory | Abort | |
MessageType | Request | |
ServiceID | Your unique ID for this request, consisting of 1-10 alphanumeric characters. Must be unique within the last 48 hours for the terminal (POIID) being used. | |
SaleID | identifier of the ECR initiating the request (e.g., ECR001") | |
POIID | identifier of the Terminal receiving the request (e.g., 456) |
Request body
Elements | Attributes | Required | Description |
---|---|---|---|
AbortRequest | |||
MessageReference | |||
MessageCategory | fixed value “Payment” | ||
SaleTransactionID | ServiceID | the ServiceID of the payment request being cancelled. | |
SaleID | identifier of the ECR initiating the request (e.g., ECR001") | ||
POIID | dentifier of the Terminal receiving the request (e.g., 456) | ||
AbortReason | |||
fixed value “MerchantAbort” |
Example of SaleToPOIRequest
<?xml version="3.1" encoding="UTF-8"?>
<SaleToPOIRequest xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MessageHeader MessageClass="Service" MessageCategory="Abort" MessageType="Request" ServiceID="3909" SaleID="ECR001" POIID="456"></MessageHeader>
<AbortRequest>
<MessageReference MessageCategory="Payment" ServiceID="3908" SaleID="ECR001" POIID="456"></MessageReference>
<AbortReason>MerchantAbort</AbortReason>
</AbortRequest>
</SaleToPOIRequest>
Receive Abort response
<SaleToPOIResponse>
<MessageHeader MessageCategory="Payment" MessageClass="Service" MessageType="Response" POIID="456" ProtocolVersion="3.1" SaleID="ECR001" ServiceID="3908"/>
<PaymentResponse>
<MarketpayPaymentExtensions/>
<PaymentResult OnlineFlag="false" PaymentType="Normal"/>
<POIData>
<POITransactionID TimeStamp="2025-03-29T13:40:12.118" TransactionID="1"/>
</POIData>
<Response ErrorCondition="Aborted" Result="Failure"/>
<SaleData OperatorID="666">
<SaleTransactionID TimeStamp="2025-03-29T12:40:09Z" TransactionID="123"/>
</SaleData>
</PaymentResponse>
</SaleToPOIResponse>