...
Date: | Author: | Version: | Changes: | Completed | Ext. | Int. | Is in Core |
---|---|---|---|---|---|---|---|
20 July 2023 | CMI | 1.0 | Doc. created | No | |||
21 July 2023 | CMI | 1.0.1 | Added nordea documentation | No | |||
11 August 2023 | CMI | 1.0.2 | Added EngineStartupCheck documentation | No | |||
31 August 2023 | CMI | 1.0.3 | Added documentation for EngineItemErrorHandler. Moved debtor name and address line from mandatory to optional parameter configuration. Added END_TO_END_ID to NORDEA_PAYOUT_ITEM table. | No | |||
19 March 2024 | AG | 1.1 | Added documentation of changes introduced with ALKA-1345 and ALKA-1347 | Yes | |||
27 March 2024 | AG | 1.2 | Added RESPONSE_STATUS state diagrams for NORDEA_PAYOUT_SOURCE and NORDEA_PAYOUT_ITEM based on changes introduced with ALKA-1336. | Yes |
Terms and definitions:
Terms/definitions: | Meaning: |
---|---|
TBD | To be determined |
N/A | Not applicable |
...
The response from Nordea comes in two tiers: The acknowledgement response is a validation of the payment message file format itself. If the acknowledgement response is positive, the payment message will be sent to Nordea’s backend for processing. Once this process is complete, we will receive a status report with an overview of the status of each requested payment.
The project consists of three engines:
...
Name
Additionally, if an accepted payment fails when attempted by Nordea, we may receive a third report containing rejections for previously accepted transactions.
The project consists of three engines:
Name | Description |
---|---|
PaymentHandlerEngine | The payment handler engine will pick up Account Payments in status (DO_CAPTURE) and prepare them for handling by the MessageHandlerEngine. |
MessageHandlerEngine | The message handler engine will pick up payments ready for processing, and create a pain.001.001.03 Nordea payout message. The resulting file will be saved to a configurable outgoing file path. |
ResponseHandlerEngine | The response handler engine will pick up Nordea response files (pain.002.001.03) from a configurable incoming file location, and process the file, If the response file contains payout results, the original account payments to either PAID_OUT or PAYOUT_REJECTED, depending on the result status. |
...
Column | Notes |
---|---|
ID | Standard rator ID. |
MESSAGE_ID | Generated when a new source is created, used as messageId in the nordea payment file. |
FILE_NAME | The name of the file on the file system, created when the file is created, and updated on the source. |
STATUS_ID | The status of the batch. 0=new, 1=ready, 2=send, 3=resend, 4=error. Notes: 0=new is used when the batch is created. Once the source has been filled out with relevant information and is ready to be picked up by the MessageHandlerEngine, the status is updated to 1=ready. Status 3=resend is used if file validation fails and the file needs to be recreated. |
CREATE_DATE | The date the source was created. |
SEND_DATE | Will be updated with the date when the Nordea payment file is created. |
RESPONSE_STATUS | The result from nordea's validation, set when we receive a response. This can be either ACTC or RJCT for acknowledgement response, or one of ACCP, ACWC, PART PDNG, or RJCT for the status report. |
RESPONSE_MESSAGE | if the file is rejected, the StatusReasonInformation will be added here if provided in the response. |
BATCH_SIZE | The total number of account payments included in this batch. Calculated in PaymentHandlerEngine as each account payment is being processed. Used as NumberOfTransactions in the nordea payment file. |
BATCH_SUM | The sum of values of all items included in this batch. Calculated in PaymentHandlerEngine as each account payment is being processed. Used as ControlSum in the nordea payment file |
State Diagram - NORDEA_PAYOUT_SOURCE.RESPONSE_
...
Table containing information about each individual payment, used to track PaymentInformation for the nordea payment file.
...
Column
...
Notes
...
ID
...
Standard rator ID.
...
ACCOUNT_PAYMENT_ID
...
The ID of the account payment this item represents.
...
INSTRUCTION_ID
...
Generated when the payout item is created. Maps to the InstrId in the nordea payment file.
...
END_TO_END_ID
...
Generated when the payout item is created. Maps to the EndToEndId in the nordea payment file.
...
AMOUNT
...
The amount on the account payment. Used in the payment information of the nordea payment file. Note that this value will be positive in the payout item.
...
RESPONSE_STATUS
...
The response code from Nordea validation. Possible values: ACCP, ACWC, PDNG, RJCT
...
RESPONSE_MESSAGE
...
If payment is rejected, the StatusReasonInformation will be inserted here if provided in the response
...
SOURCE_ID
...
STATUS
NORDEA_PAYOUT_SOURCE.RESPONSE_STATUS
is updated by NordeaResponseHandler based on Group Status or Payment Information Status received in PAIN.002 response files from Nordea:
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
NORDEA_PAYOUT_ITEM
Table containing information about each individual payment, used to track PaymentInformation for the nordea payment file.
Column | Notes |
---|---|
ID | Standard rator ID. |
ACCOUNT_PAYMENT_ID | The ID of the account payment this item represents. |
INSTRUCTION_ID | Generated when the payout item is created. Maps to the InstrId in the nordea payment file. |
END_TO_END_ID | Generated when the payout item is created. Maps to the EndToEndId in the nordea payment file. |
AMOUNT | The amount on the account payment. Used in the payment information of the nordea payment file. Note that this value will be positive in the payout item. |
RESPONSE_STATUS | The response code from Nordea validation. Possible values: ACCP, ACWC, PDNG, RJCT |
RESPONSE_MESSAGE | If payment is rejected, the StatusReasonInformation will be inserted here if provided in the response |
SOURCE_ID | The ID of the source object this item belongs to |
State Diagram - NORDEA_PAYOUT_ITEM.RESPONSE_STATUS
NORDEA_PAYOUT_ITEM.RESPONSE_STATUS
is updated by NordeaResponseHandler based on Transaction Status received for the individual payout transactions in the PAIN.002 response files. The corresponding AccountPayment is also captured, rejected, or withdrawn in conjunction with this change in state.
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
NextBankingDayAsPaymentDateForNordeaPayoutRequestProvider
...