The purpose of this interface is to reverse the failed transactions which were rejected due to payment rejection in External Systems.ALIP interface will receive the details of transaction by providing either transaction number or Suspense Number,
If the transaction number is provided in the input then the interface will directly proceed to reverse the transaction where as If Suspense number is provided in input then the interface will first try to fetch the transaction based on Suspense number and then reverse the corresponding transaction. In case of both the input types i.e Transaction Number as well as Suspense Number, the interface will reverse the transaction and then will move ahead to void the associated suspense.
Applicable Products for this interface
Immediate Annuities
Deferred Annuities
Term Life
Whole Life
Universal Life Insurance
| TR ID# | Technical Requirements |
| TR1 | ACORDv2.36 shall be used to communicate. |
| TR2 | ACORD Tx 508 “Payment Transaction” tc=”508” is being used for Payment Reject. |
| TR3 | Interface must always return an error code and description in the event of a processing failure in addition to HTTP response code. |
| TR4 | For a success, the response will provide the |
| BR ID# | Business Requirements |
| BR1 | For Transaction number provided within the request, If it is last processed transaction in ALIP, Interface will systematically reverse the failed transaction. |
| BR3 | For transaction number provided within the request, If it is not last processed transactionin ALIP, Interface will systematically reverse the failed transaction and recreate the transactions processed after the failed transaction |
| BR4 | For Successful Payment Reject, Interface will void the suspense, generated due to reversing of the failed transaction. |
| BR5 | For successful Payment Reject, a success response should be provided else an error response with description should be provided. |
The external system would fire the SOAP request or REST URL with the JSON containing the Payment Reject Information request.
ALIP Inbound Gateway would pick up, process the message, convert it into XML format, and posts it onto the ALIP request queue.
ALIP API ProcessingServer will pick up the message, perform the necessary XSD validations convert from ACORD to the canonical format and other basic validations on the completeness of the input request and existence of the contract number in ALIP etc.
Post the necessary validations, interface would invoke the INT – Payment Reject Transaction workflow to reverse the failed transaction. For Transaction number provided within the request, If transaction is last processed transaction in ALIP, Interface will systematically reverse the failed transaction whereas if transaction number provided within the request is not last processed transaction in ALIP, Interface will systematically reverse the failed transaction and recreate the transactions processed after the failed transaction.
Once the transaction is reversed, Suspense List for that contract number with new pending state is retrieved via API and associated new generated suspense with associated transaction number will be voided via Base existing API.
A success response will be returned to the external system.In case of a Processing failures, the same will be logged with proper error code, description and the exception information to the log files andalso an Integration Failure should be created.
ALIP will reverse failed payment reject transaction, and recreate transactions processed after failed transaction.
Transaction reversed will be in Pending Reversal state, and recreated transactions will be in pending section of Transaction History.
Interface will not validate type of transaction in input request, it will reverse or recreate transaction based on the input.
N/A
| # | Section | Condition | Test Procedure | Expected Results |
| 1 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request where the contract Number in the incoming request, does not exist in ALIP. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Contract does not exist in ALIP.“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 2 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request where the Transaction Number in the incoming request does not exist on contract. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Transaction Number Does not Exist or is not in Processed Status.“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 3 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request where the Transaction Rejected Amount in the incoming request is incorrect | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Rejected Amount Mismatch“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 5 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request with Correct details and Transaction is Initial Premium Transaction. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an Success message “Transaction Processed Successfully“And all the transaction of the contracts will be in pending reversal status and newly generated suspense of the failed transaction will be voided. |
| 6 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request with Correct details and Transaction is Last processed transaction on the contract. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an Success message “Transaction Processed Successfully“And failed transaction on the contracts will be in pending reversal status and newly generated suspense of the failed transaction will be voided. |
| 7 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request with Correct details and Transaction is not Last processed transaction on the contract. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an Success message “Transaction Processed Successfully“And failed transaction and all transaction processed after failed transaction on the contracts will be in pending reversal status and transaction processed after failed transaction will be in Pending section of transaction history and newly generated suspense of the failed transaction will be voided. |
| 8 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request with Correct details and Transaction is in Pending Reversal Status. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Transaction is in Pending Reversal Status“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 9 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request with Correct details and Transaction is in Reversed Status. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Transaction is in Reversed Status“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 10 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction request where the Transaction Number in Pending Status. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Transaction Number Does not Exist or is not in Processed Status“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 11 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction with Suspense Number in request, where Suspense is not in Applied Status | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Suspense Number is not in Applied Status“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 12 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction with SuspenseNumberin request, where Suspense does not exist. | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Suspense Number does not exist on Contract Number“New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 13 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction with SuspenseNumberand Transaction Number in request | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an error message “Only one TransConfirmNumber is allowed “New record will be logged in“INTEG.T_INIF_INTEGRATION_FAILURES” table. |
| 14 | IExchange IDD-INT-001 | ALIP receives a PaymentRejectTransaction with Transaction Number in Request.Transaction on Contract is Withdrawal transaction and option for Send money to suspense is Yes | Create a TX Life request for the given PaymentRejectTransaction request.Send the message using REST/JMS/SOAP. | ACORD response should be returned, with an Success message “Transaction Processed Successfully“And failed transaction on the contracts will be in pending reversal status and generated suspense of the failed transaction will be voided. |