Documentation for a newer release is available. View Latest

Handle Recall Request Rejection From CSM TxSts.story

Scenario: Recall rejected by CSM TxSts


Steps
When the Recall Service sends a 'Send Recall To Csm Request'
Then the CSM receives a 'Payment Cancellation Request'
Then Recall Service receives a 'Technical Response' with values:
| status | SUCCESS |
When the CSM sends a 'for-camt056' 'Payment Status Report' with values:
| FIToFIPmtStsRpt.orgnlGrpInfAndSts.orgnlMsgNmId  | camt.056.001.01                                                 |
| FIToFIPmtStsRpt.txInfAndSts.orgnlTxId           | #PaymentCancellationRequest.FIToFIPmtCxlReq.undrlyg.txInf.cxlId |
| FIToFIPmtStsRpt.txInfAndSts.txSts               | RJCT                                                            |
| FIToFIPmtStsRpt.txInfAndSts.stsRsnInf.rsn.cd    | <SctRespCd>                                                     |
| FIToFIPmtStsRpt.txInfAndSts.stsRsnInf.rsn.prtry | <SctRespPrtry>                                                  |
Then Recall Service receives a 'Send Recall To Csm Response' with values:
| payload.content.orgnlGrpInfAndSts[0].OrgnlMsgNmId     | camt.056.001.01                                                 |
| payload.content.txInfAndSts[0].orgnlTxId              | #PaymentCancellationRequest.FIToFIPmtCxlReq.undrlyg.txInf.cxlId |
| payload.content.txInfAndSts[0].txSts                  | RJCT                                                            |
| payload.content.txInfAndSts[0].stsRsnInf[0].rsn.cd    | <SctRespCd>                                                     |
| payload.content.txInfAndSts[0].stsRsnInf[0].rsn.prtry | <SctRespPrtry>                                                  |
Examples:
SctRespCd SctRespPrtry

AC06

NOT_SET

NOT_SET

XT81

Example: {SctRespCd=AC06, SctRespPrtry=NOT_SET}

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

Then the ⦅CSM⦆ receives a Payment Cancellation Request

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

When the ⦅CSM⦆ sends a for-camt056 Payment Status Report with values:
| FIToFIPmtStsRpt.orgnlGrpInf*And*Sts.orgnlMsgNmId | camt.056.001.01 |
| FIToFIPmtStsRpt.txInf*And*Sts.orgnlTxId | #PaymentCancellationRequest.FIToFIPmtCxlReq.undrlyg.txInf.cxlId |
| FIToFIPmtStsRpt.txInf*And*Sts.txSts | RJCT |
| FIToFIPmtStsRpt.txInf*And*Sts.stsRsnInf.rsn.cd | ⦅AC06⦆ |
| FIToFIPmtStsRpt.txInf*And*Sts.stsRsnInf.rsn.prtry | ⦅NOT_SET⦆ |

Then ⦅Recall Service⦆ receives a Send Recall To Csm Response with values:
| payload.content.orgnlGrpInf*And*Sts[0].OrgnlMsgNmId | camt.056.001.01 |
| payload.content.txInf*And*Sts[0].orgnlTxId | #PaymentCancellationRequest.FIToFIPmtCxlReq.undrlyg.txInf.cxlId |
| payload.content.txInf*And*Sts[0].txSts | RJCT |
| payload.content.txInf*And*Sts[0].stsRsnInf[0].rsn.cd | ⦅AC06⦆ |
| payload.content.txInf*And*Sts[0].stsRsnInf[0].rsn.prtry | ⦅NOT_SET⦆ |

Example: {SctRespCd=NOT_SET, SctRespPrtry=XT81}

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

Then the ⦅CSM⦆ receives a Payment Cancellation Request

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

When the ⦅CSM⦆ sends a for-camt056 Payment Status Report with values:
| FIToFIPmtStsRpt.orgnlGrpInf*And*Sts.orgnlMsgNmId | camt.056.001.01 |
| FIToFIPmtStsRpt.txInf*And*Sts.orgnlTxId | #PaymentCancellationRequest.FIToFIPmtCxlReq.undrlyg.txInf.cxlId |
| FIToFIPmtStsRpt.txInf*And*Sts.txSts | RJCT |
| FIToFIPmtStsRpt.txInf*And*Sts.stsRsnInf.rsn.cd | ⦅NOT_SET⦆ |
| FIToFIPmtStsRpt.txInf*And*Sts.stsRsnInf.rsn.prtry | ⦅XT81⦆ |

Then ⦅Recall Service⦆ receives a Send Recall To Csm Response with values:
| payload.content.orgnlGrpInf*And*Sts[0].OrgnlMsgNmId | camt.056.001.01 |
| payload.content.txInf*And*Sts[0].orgnlTxId | #PaymentCancellationRequest.FIToFIPmtCxlReq.undrlyg.txInf.cxlId |
| payload.content.txInf*And*Sts[0].txSts | RJCT |
| payload.content.txInf*And*Sts[0].stsRsnInf[0].rsn.cd | ⦅NOT_SET⦆ |
| payload.content.txInf*And*Sts[0].stsRsnInf[0].rsn.prtry | ⦅XT81⦆ |