Documentation for a newer release is available. View Latest

Handle Invalid Return Request received.story

Meta
+disableXsdValidation+:true

Scenario: Handling invalid payment return

When the ⦅Recall Service⦆ sends a Send Recall To Csm Request

Then the ⦅CSM⦆ receives a Payment Cancellation Request

And ⦅Recall Service⦆ receives a Technical Response with values:
| status | SUCCESS |

And ⦅Recall Service⦆ receives a Send Recall To Csm Response

When ⦅the CSM⦆ sends an invalid Payment Return

Then ⦅CSM⦆ receives a Payment Status Report using predicate:
| FIToFIPmtStsRpt.OrgnlGrpInf*And*Sts.GrpSts | RJCT |
| FIToFIPmtStsRpt.GrpHdr.InstgAgt.FinInstnId.BIC | ICSLGBL1 |
| FIToFIPmtStsRpt.GrpHdr.InstdAgt.FinInstnId.BIC | IPSTFRPP |
| FIToFIPmtStsRpt.OrgnlGrpInf*And*Sts.StsRsnInf.Rsn.Cd | FF01 |
| FIToFIPmtStsRpt.OrgnlGrpInf*And*Sts.StsRsnInf.Orgtr.Nm | #PaymentReturn_headers.NETWORK_MESSAGE_ID |
| FIToFIPmtStsRpt.OrgnlGrpInf*And*Sts.OrgnlMsgNmId | pacs.004 |
| FIToFIPmtStsRpt.TxInf*And*Sts | NOT_SET |

Then ⦅the Payment Service⦆ receives a System Event using predicate:
| level | ERROR |
| processingContext.associationId.value | NOTAVAILABLE |
| name | InvalidMessageReceived |
| payload.csm | RT1 |
| payload.description | Invalid Positive Recall Response Received |
| payload.rawMessage | prettyPrint(#PaymentReturn) |
| type | FUNCTIONAL |