Create sequence diagrams with simple online tool

Swimlanes.io is a free webapp for making sequence diagrams. You simply edit the text on the left and the diagram is updated in real time. You can download your sequence diagrams as images or distribute with a link.

Title: Bacs Inbound Direct Credit Held with Fincrime _:{fa-check-circle} _Prerequisites_ note: * ClearBank **IBAN** is mapped to Mambu Deposit account & **Virtual Account ID** is linked to Deposit Account * **Client Money Account** & **Bacs Suspense Account** are Available and Active * **Deposit Account** is Active | Approved * `monitorDirectCreditTransaction` is `true` in Mambu Config * **Accounting** is configured at `Deposit Product` level group:**Bacs: three-day processing cycle** _: **`Day One of Processing`** Bacs --> Bacs: **Input Day**: The Service User submits the payment to Bacs _: **`Day Two of Processing`** ClearBank --> ClearBank: **The Processing Day**: The Service User submits the payment to Bacs Bacs --> ClearBank: _Bacs_ outputs to _ClearBank_ ClearBank ->> MPO: {fa-assistive-listening-systems} **BacsDirectCreditInboundPaymentCreated** webhook is sent MPO -->> ClearBank: Confirm received webhook MPO -> MPO: AML status: `Pending` MPO --> Mambu: *Accounting*: (Debit) Scheme & (Credit) Transit MPO -> ComplyAdvantage: Submit **transaction** to ComplyAdvantage _:{fa-cogs} Alerts Review if: Accepted Transaction MPO -->>MPO:{fa-thumbs-up} AML status: `Accepted` MPO -->>MPO: {fa-box} Store the payment in AML _Accepted_ state note_: {fa-flag} **Accepted** Flow continues on `Day Three of Processing` end if: Rejected Transaction MPO -->>MPO:{fa-thumbs-up} AML status: `Rejected` MPO -->>MPO: {fa-box} Store the payment in AML _Rejected_ state note_: {fa-flag} **Rejected** Flow continues on `Day Three of Processing` end if: Suspended Transaction MPO -->>MPO:{fa-thumbs-up} AML status: `Suspended` MPO -->>MPO: {fa-box} Store the payment in AML _Suspended_ state note_: {fa-flag} **Suspended** Flow continues on `Day Three of Processing` end _: **`Day Three of Processing`** ClearBank ->> MPO: {fa-assistive-listening-systems} **BacsDirectCreditInboundPaymentHeld** webhook is sent MPO -->> ClearBank: Confirm received webhook MPO ->> Mambu: {fa-envelope} [INFO] Notification is sent if: Transaction is False Positive ClearBank ->> MPO: {fa-assistive-listening-systems} **TransactionSettled** webhook is sent MPO -->> ClearBank: Confirm received webhook if: Accepted Transaction MPO -->>MPO:{fa-thumbs-up} AML status: `Accepted` MPO -> Mambu: **Deposit** transaction is created in Mambu MPO --> Mambu: *Accounting*: (_Debit_) Suspense & (_Credit_) Savings Control MPO -->>MPO: {fa-box} Store the payment in AML _Accepted_ state end if: Rejected Transaction if: Rejected was sent until/on Day 4 MPO -->>MPO:{fa-box} Store the payment in AML _Returned_ state MPO --> Mambu: *Accounting*: (_Debit_) Suspense & (_Credit_) Scheme MPO -> ClearBank: Initiate **Return** transaction in ClearBank ClearBank ->> MPO: {fa-assistive-listening-systems} **BacsDirectCreditReturnCreated** webhook is sent MPO -->> ClearBank: Confirm received webhook end if: Rejected was sent after Day 4 MPO --> Mambu: *Accounting*: (_Debit_) Transit & (_Credit_) Withhold MPO -->>MPO:{fa-box} Store the payment in AML _Rejected_ state _:{fa-bell} Send **Notification** end end if: Transaction is True Positive Note []: {fa-exclamation} No webhook or notification is sent by ClearBank MPO ->> ClearBank: **Polling Mechanism:** Transaction is searched in ClearBank note: The search is made after 12 hours from the moment the **BacsDirectCreditInboundPaymentHeld** webhook arrvied. if: Transaction is not found in ClearBank MPO ->> Mambu: {fa-envelope} Notification is sent if: Accepted Transaction MPO -->>MPO: {fa-box} Store the payment in Rejected by ClearBank state MPO --> Mambu: *Accounting*: (_Debit_) Transit & (_Credit_) Withhold end if: Rejected Transaction MPO -->>MPO: {fa-box} Store the payment in Rejected by ClearBank state MPO --> Mambu: *Accounting*: (_Debit_) Transit & (_Credit_) Withhold end if: Suspended Transaction MPO -->>MPO: {fa-box} Store the payment in Rejected by ClearBank state MPO --> Mambu: *Accounting*: (_Debit_) Suspense & (_Credit_) Withhold end end end end