Documentation for a newer release is available. View Latest

Handle Validate Scheme Rules - AmtLimit - Fails.story

Scenario: Handling validation of scheme rules invalid amount limit checked


Steps
When the Payment Service sends a 'Validate Scheme Rules Request' with values:
| getPayload().getContent().cdtTrfTxInf[0].intrBkSttlmAmt.value                  | <amount>                                 |
| getPayload().getContent().cdtTrfTxInf[0].<agent>.finInstnId.clrSysMmbId.mmbId  | <mmbid>                                   |
| customBusinessData                                                             | supportingContext('flowType','<type>')   |
Then the Payment Service receives a 'Validate Scheme Rules Response' with values:
| status                                | FAILURE                           |
| getPayload().getContent().reasonCode  | AM02                              |
| getPayload().getContent().description | Amount exceeds scheme limit       |
| requestId                             | #ValidateSchemeRulesRequest.ipfId |
Examples:
mmbid agent type amount

318668

instgAgt

CREDITOR

100000

002940

instdAgt

DEBTOR

100000

Example: {agent=instgAgt, amount=100000, type=CREDITOR, mmbid=318668}

com.iconsolutions.ipf.payments.csm.sic5.application.bdd.testfw.Steps.parseMeta(java.lang.String)

com.iconsolutions.ipf.payments.csm.sic5.application.bdd.testfw.Steps.parseLegacy(java.lang.String)

When the ⦅Payment Service⦆ sends a Validate Scheme Rules Request with values:
| getPayload().getContent().cdtTrfTxInf[0].intrBkSttlmAmt.value | ⦅100000⦆ |
| getPayload().getContent().cdtTrfTxInf[0].⦅instgAgt⦆.finInstnId.clrSysMmbId.mmbId | ⦅318668⦆ |
| customBusinessData | supportingContext(flowType,⦅CREDITOR⦆) |

Then ⦅the Payment Service⦆ receives a Validate Scheme Rules Response with values:
| status | FAILURE |
| getPayload().getContent().reasonCode | AM02 |
| getPayload().getContent().description | Amount exceeds scheme limit |
| requestId | #ValidateSchemeRulesRequest.ipfId |

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

Example: {agent=instdAgt, amount=100000, type=DEBTOR, mmbid=002940}

com.iconsolutions.ipf.payments.csm.sic5.application.bdd.testfw.Steps.parseMeta(java.lang.String)

com.iconsolutions.ipf.payments.csm.sic5.application.bdd.testfw.Steps.parseLegacy(java.lang.String)

When the ⦅Payment Service⦆ sends a Validate Scheme Rules Request with values:
| getPayload().getContent().cdtTrfTxInf[0].intrBkSttlmAmt.value | ⦅100000⦆ |
| getPayload().getContent().cdtTrfTxInf[0].⦅instdAgt⦆.finInstnId.clrSysMmbId.mmbId | ⦅002940⦆ |
| customBusinessData | supportingContext(flowType,⦅DEBTOR⦆) |

Then ⦅the Payment Service⦆ receives a Validate Scheme Rules Response with values:
| status | FAILURE |
| getPayload().getContent().reasonCode | AM02 |
| getPayload().getContent().description | Amount exceeds scheme limit |
| requestId | #ValidateSchemeRulesRequest.ipfId |

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()

com.iconsolutions.testfw.core.steps.BaseSteps.clearContext()