Create Suspense

Request/Response & Json Schema

Overview

The purpose of Create and Apply Suspense interface is to add and apply suspense on the contract number provided in the input. Interface will receive the request with all the necessary details for creating the suspense from an external system.Suspense will be created in ALIP and applied to contract mentioned in the input sent by the user. Currently, Interface supports both gross and net amount. Also, the interface provides an ability to update, void and approve a suspense a suspense based on the suspense status.

Interface will receive the request with all the necessary details for creating, updating , voiding and approving a suspense disbursement from an external system. Suspense will be created in ALIP and applied to contract mentioned in the input sent by the user. Currently, Interface supports both gross and net amount. In addition, Suspense will be voided, updated or approved for disbursement based on the request.

This API can also Tie the newly created Suspense to the Application and Perform Linkage based on the data received. This API will also support Suspense creation with a Transfer and Exchange record that is available on intended Application or Contract in ALIP.

The following products are in scope:

Deferred Annuity

Immediate Annuity

Whole Life

Technical Requirements

TR ID# Technical Requirements
TR1 ACORDv2.36 shall be used to communicate.
TR2 ACORD Tx 508 Transaction tc=508” is used for Create Apply Suspense
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 as “Success” and must create and apply a suspense record based on the details provided in the input feed.
TR5 API can be accessed through JMS/REST/ SOAP
TR6 If Interface receives a duplicate record (i.e. with the same ‘TransRefGUID’ value), then ALIP will return a Duplicate Record Found Message to ESB
TR7 The service should accept a new element called ‘BusinessService’. The allowable values are ‘CreateSuspense’, ‘UpdateSuspense’, ‘VoidSuspense’ and ‘ApproveSuspenseDisbursement’. When a value for this element is not supplied, the interface should process the request as ‘CreateSuspense’.

Business Requirements

BR ID# Business Requirements
BR1 It will validate, create and apply suspense using Client last name and Contract Number.
BR2 If the provided policy number in the input request is not in active status, then suspense will be created but not applied in ALIP even if the indicator to Apply suspense is passed as “yes”.
BR3 If the provided policy is in active status and the input received signifies that the suspense must be applied as well, suspense will be created and applied in ALIP
BR4 If the input request doesn’t signify that suspense should be applied (i.e. indicator to apply suspense is passed as “no”), then the suspense will only be created in ALIP and suspense Apply flow will not be executed.
BR5 External SuspenseID tag passed in the input is Stored as a name value pair in the ALIP database, which case be used for tying the ALIP suspense record with an external system.
BR6 Exchange/Replacement (T&E):This interface in ALIP will be enhanced to support the receival of Suspense along with Transfer and Exchange information, create the suspense and link the exchange and replacement with the newly created suspense. Whenever a Create Suspense Request is received by ALIP with the Transfer and Exchange record, ALIP will use the incoming Transfer and Exchange’s Source Policy Number and the Amount or if only Amount is provided use only amount to validate against the Transfer and Exchange records on the Contract. Once a matching Transfer and Exchange record is found from the Contract on which the Suspense is being created, it will perform below.If requested T&E record is found in ALIP then this interface will set ‘Premium from Exchange/Replacement?’ to Yes ‘Exchange/Replacement from’ with the value of matching ALIP T&E Record id.If requested T&E is not found in ALIP then this interface will set, ‘Premium from Exchange/Replacement?’ to Yes ‘Exchange/Replacement from’ as Empty, which indicate that matching T&E not found in ALIP.In case Inforce Contract: If the Contract on which the suspense being created is a Post Issue Contract, then this interface will Create the suspense, Send a Work Item create Trigger to BPM and then also Return an Error to the external system .In case of Application related Suspense: If it is a Pre-Issue Contract, then this interface will return an error to external system so that Allianz can utilize this to create a task in BPM as well as this interface will generate a T&E record missing Requirement & open a Task in ALIP .Matching Criteria for Exchange/ReplacementSource Policy Number And AmountIf only Amount is present just use amount (Source Policy Number should not be used)
BR7 Suspense Linkage:This interface will be enhanced to support Tying the newly created Suspense to the Application and as well as its linking process:Suspense Linkage (i.e. tie a Suspense to Application) performs additional validations and will generate the Application level Pre-Issue requirements based on the Application Data and ties the Suspense as per BUS-01Z Suspense Linkage BRD.If the requested Suspense is for Inforce Contract, then Suspense Linkage will not be performed since Suspense Linkage is not applicable in this situation.If the requested Application is a Pre-Issue Contract, then Suspense Linkage will be performed. Post successful Suspense linkage, the Suspense status will be changed to ‘Pending Apply’ and interface will kick off Application Underwriting which will generate the Application level Pre-Issue requirements as per BUS-01Z Suspense Linkage BRD.
BR8 Add a new tag “SuspenseReferenceID” to support external system suspense number
BR9 When ‘UpdateSuspense’ operation is requested, the interface should find if a suspense exists in ALIP with that Suspense ID (SS_SUSP_NUM) and the Suspense Status is not applied and not disbursed and not voided. Please note that a Suspense in ‘Pending Disburse’ status can not be updated. If a match is not found, it should return ‘Suspense does not exist or cannot be updated’. If a match is found, system should update the suspense using the Suspense ID. All rules that are in place while creating a suspense applies from this point. Any changes made by this interface will be recorded with ‘InterfaceUser’.This processing must mimic what happens when the suspense is updated within ALIP such as performing data change audit.
BR10 When ‘’VoidSuspense’ operation is requested, system should find if a suspense exists in ALIP with that Suspense ID (SS_SUSP_NUM) and status is ‘New/Pending‘ or ‘Linked’ statuses. Please note that a Suspense in ‘Pending Disburse’ status cannot be voided.If a match is not found, it should return ‘Suspense does not exist or cannot be Voided’. If a match is found, system should void the suspense using the Suspense ID. Any changes made by this interface will be recorded with ‘InterfaceUser’.Also, the incoming suspense void reason will be validated against what is supported within ALIP. If the validation fails, system will return ‘Suspense cannot be Voided due to incorrect void reason’.This processing must mimic what happens when the suspense is voided within ALIP. Please refer to ‘Suspense Void’ workflow which is in the ‘Attachments’ section.
BR11 When ‘ApproveSuspenseDisbursement’ operation is requested, system should find an existing suspense with that suspense ID in ‘Pending Disburse’ status and update that suspense status with the status received in the request.If a match is not found, it should return ‘Suspense does not exist or cannot be approved’. If a match is found, system should update the status using the Suspense ID. Any changes made by this interface will be recorded with ‘InterfaceUser’.This processing must mimic what happens when the suspense is approved within ALIP.

Process Flow

The external system would post the message containing the contract number and the last name of the client.

ALIP API Processing server will perform the necessary XSD validations, and other basic validations on the completeness of the input information in the request.

Post this, it would convert the request from ACORD format to the ALIP Canonical format.

Then within the ALIP, it will make a call to the Create Apply Suspense Background workflow where it will validate the status of the incoming contract number.

The ALIP system will create the suspense irrespective of contract status. Last Name of the payer is mandatory field in this interface.

The suspense will be applied to contract only if the contract exists in ALIP

The response generated will be converted to ACORD format.

The ACORD response will be sent back to the caller.

Create Suspense Process if the Proposed Contract Number is available in the Input

Upon validating the Contract Number, this API will verify if the incoming request has any Transfer and Exchange record with it.

If the Request do not have any Transfer and Exchange with it then, this interface will perform below.

Verify the Contract Status and

In case Pre-Issue Contract: In case of Application related Suspense, this interface will

Create the Suspense

Use the newly created Suspense and Tie this to the Application in ALIP

Initiate the Suspense Linkage and return the Success response to ESB with the Suspense Number and a success return code.

This interface will not wait till the entire Suspense Linkage process to be completed. It will return after initiating the process for Linkage.

In case Inforce Contract: If this is a Post Issue contract, then this interface will

Create the Suspense

Return to the ESB with the newly created Suspense Number and a success return code.

If the Request has any Exchange/Replacement details, then this interface will call the appropriate API to load the available Application or the Policy level T&E records based on the Application/Contract status.

This interface will use the Source Policy Number and the Amount of incoming Transfer and Exchange and perform below.Go through each of the T&E records found on the proposed Contract and verify it’s Source Policy Number and amount matched with T&E data on contract.

If there is more than one T&E record found at this time or if No T&E record found or if the Amount does not match with the acceptable variation of + 5000 $, then this interface will not attach any T&E Record but instead ,

In case Inforce Contract:

Create the Suspense on the Contract without attaching any T&E record.

This Interface will be passing on the received incorrect T&E information to the Business Configuration Process as needed.

Send a Task to External system through Triggers to Send Tasks to External system Interface.

Return an error to the external system along with the newly created Suspense Number.

In case Pre-Issue Contract : This interface will,

Create the Suspense without attaching T&E record.

Tie the Suspense to the Application and initiate the Suspense Linkage process which will generate appropriate Requirements and the Task Box in ALIP.

This Interface will be passing on the received incorrect T&E information to the Business Configuration Process as needed.

Upon initiating the Suspense Linkage process, this interface will return the Error message to the ESB along with the newly created Suspense Number.

If only ONE T&E record found and if it’s Amount And/Or policy number matches the acceptable variation, then this interface will,

Create the Suspense on the Contract by attaching matched Transfer and Exchange record with it.

In addition to this, Interface will perform below if it is a Pre-Issue Contract.

Tie the newly created suspense with the Application

Initiate the Suspense Linkage process in ALIP.

Return to the calling ESB with success response and newly created suspense number.

Create Suspense Process if the Proposed Contract Number is NOT available in the Input

This API will use the incoming information and perform below

Create the Suspense in ALIP

Generate a Task in the ALIP system for Missing Contract Number Suspense created

Return the newly created Suspense Number part of the Response with an additional Response code indicating the Missing Contract Number

Wherever Suspense Linkage process is applicable, this interface will not wait to return to the ESB until the Suspense Linkage process is completed in ALIP. Instead, this interface will initiate the Suspense Linkage and Underwriting process and return to the calling system. Any Failures with the Suspense Linkage or dependent Underwriting on the Application will be handled as defined in Business Requirements for Suspense Linkage Failures.

The response generated will be converted to ACORD format with ResultCode, ResultInfoDesc, Suspense Number.

API will log the request, response, intermediate transformed XML message and status into ALIP Integration database tables which can be view on Integration History and/or Integration Failure Page.

Create Suspense Interface Flow Chart

Refer to the below attached Flow chart providing details regarding the logical flow of Create Suspense Interface

Impact on ALIP system

This interface provides the ability for creation of suspense in ALIP.

Upon receiving the request, ALIP system check for the contract status and based on the contract status will create and apply the suspense.

If the contract is not active, the suspense will be created with “No Transaction Exists” transaction type.

Assumptions

It is a conscious difference to have the T&E data on the suspense even if it is not being applied. So, interface will be different to UI

This API is tested for below products

Deferred Annuity

Immediate Annuity

This will call Create Suspense when

All receipts for contracts in ALIP

Premium indicated as conditional receipt for a new business application in ALIP

This will call the Create Suspense web service for each unique receipt.

This will assign applicable Premium type transactions when calling Create Suspense

This will use ALIP UI to modify a suspense item

This API will be tested for a Whole Life product.

Please note that the samples attached in this document contain samples from out of box implementation. During design, the applicable samples will be updated with needed changes.

For the ‘SuspenseUpdate’ operation, client team will pass all the information of an existing suspense.

The Create or Update Suspense Item will not be used to reinstate riders associated with the policy. If a such a need arises, the respective action will be done manually within ALIP.

A suspense in pending disburse status cannot be updated via this interface or manually within ALIP.

Please note that while the Suspense is in ‘Pending Disburse’ status, all information may not be available for staging. Also, staging requirements are outside the scope of the integration requirements.

New/Pending

Linked

Disbursed

Dependencies

NA

Request Data Elements

Response Data Elements

Success/Error Handling

# Condition Message Code Message Description Message Type Expected Results
1 CreateSuspense request where Contract Number exist in ALIP and “ApplySuspense” tag is No. 1 Success Informational Response should be returnedSuspense would be created.
2 CreateSuspense request where Contract Number exist in ALIP and “ApplySuspense” tag is Yes. 1 Success Informational Suspense would be created and applied on that contract
3 CreateSuspense request where Contractnumber does not exist in ALIP and Client Last Name is provided 1 Success Informational Suspense would be created with Last Name.
4 CreateSuspense request where FinEffDate is blank in the incoming request 100 Internal Error Fatal An error message “FinEffDate is Required”
5 CreateSuspense request where LastName is blank in the incoming request 100 Internal Error Fatal An error message “LastName is Required”
6 CreateSuspense request where PaymentForm is blank in the incoming request 100 Internal Error Fatal An error message “PaymentFormisRequired”
7 CreateSuspense request where FinActivityNetAmt is blank in the incoming request 100 Internal Error Fatal An error message “FinActivityNetAmtisRequired”
8 CreateSuspense request where CurrencyTypeCode is blank in the incoming request 100 Internal Error Fatal An error message “Currency is Required”
9 CreateSuspense request where ApplySuspense is blank in the incoming request 100 Internal Error Fatal An error message “ApplySuspenseisRequired”
10 CreateSuspense request where PaymentForm is not Valid. 100 Internal Error Fatal An error message “Value for PaymentForm is invalid”
11 CreateSuspense request where SourceOfFundsTC is not Valid. 100 Internal Error Fatal An error message “Value for SourceOfFundsTCis invalid”
12 CreateSuspense request where PreviousSource is not Valid. 100 Internal Error Fatal An error message “Value for PreviousSourceis invalid”
13 CreateSuspense request where FinActivityType is not Valid. 100 Internal Error Fatal An error message “Value for FinActivityTypeis invalid”
14 CreateSuspense request where SuspenseReason is not Valid. 100 Internal Error Fatal An error message “Value for SuspenseReasonis invalid”
15 CreateSuspense request where CarrierCode is not Valid. 100 Internal Error Fatal An error message “Value for CarrierCodeis invalid”
16 CreateSuspense request where CurrencyTypeCode is not Valid. 100 Internal Error Fatal An error message “Value for CurrencyTypeCodeis invalid”
17 CreateSuspense request where GovtIDTC is not Valid. (Contains Special Characters such as #,$,%) 100 Internal Error Fatal An error message “Invalid Tax Id”
18 CreateSuspense request where GovtIDTC is not Valid. (String length is greater than 9 characters) 100 Internal Error Fatal An error message “Tax Id can only be 9 digits”
19 CreateSuspense request with valid Suspense data and non-existing contract and ApplySuspense flag as Yes 100 Internal Error Fatal An error message. Two messages are displayed viz; “Low-Contract does not exists” and “A Transaction type is required to apply suspense”
20 CreateSuspense request with valid Suspense data and existing contract with contract status as “Pending Issue or Pnd-Awiating Fund” and ApplySuspense tag as No and FinActivityType is set to Blank 1 Success Informational Suspense will be created with Initial Premium.
21 CreateSuspense request with valid Suspense data and existing contract with contract status as “Pending Issue or Pnd-Awiating Fund” and ApplySuspense tag as No and FinActivityType is set to “No Transaction Exists” 1 Success Informational Suspense will be created with Initial Premium.
22 ALIP receives a CreateSuspense request with valid Suspense data and existing contract with contract status as “Pending Issue or Pnd-Awiating Fund” and ApplySuspense tag as No and FinActivityType is set to “Additional Premium” 100 Internal Error Fatal An error message “Invalid Policy Status for Transaction type”
23 CreateSuspense request with valid Suspense data and existing contract with contract in Post Issue statuses including Closed, Suspensed,Claim etc and ApplySuspense tag as No and FinActivityType is set to Blank 1 Success Informational Suspense will be created with No Transaction Exists trans type.
24 CreateSuspense request with valid Suspense data and existing contract with contract in Post Issue statuses including Closed, Suspensed,Claim etc and ApplySuspense tag as No and FinActivityType is set to “No Transaction Exists” 1 Success Informational Suspense will be created with No Transaction Exists trans type.
25 CreateSuspense request with valid Suspense data and existing contract with contract in Post Issue statuses including Closed, Suspensed,Claim etc and ApplySuspense tag as No and FinActivityType is set to “Additional Premium or Initial Premium” 100 Internal Error Fatal An error message “Invalid Policy Status for Transaction type”
26 CreateSuspense request with valid Suspense data and existing contract with contract status as “Pending Issue or Pnd-Awiating Fund” and ApplySuspense tag as Yes and FinActivityType is set to Blank 1 Success Informational Suspense will be created with Initial Premium.
27 CreateSuspense request with valid Suspense data and existing contract with contract status as “Pending Issue or Pnd-Awiating Fund” and ApplySuspense tag as Yes and FinActivityType is set to “No Transaction Exists” 1 Success Informational Suspense will be created with Initial Premium.
28 CreateSuspense request with valid Suspense data and existing contract with contract status as “Pending Issue or Pnd-Awiating Fund” and ApplySuspense tag as Yes and FinActivityType is set to “Additional Premium” 1 Success Informational Suspense will be created with Initial Premium.
29 CreateSuspense request with valid Suspense data and existing contract with contract in Post Issue statuses including Closed, Suspensed,Claimetc and ApplySuspense tag as Yes and FinActivityType is set to Blank 1 Success Informational Suspense will be created with No Transaction Exists trans type.
30 CreateSuspense request with valid Suspense data and existing contract with contract in Post Issue statuses including Closed, Suspensed,Claimetc and ApplySuspense tag as Yes and FinActivityType is set to “No Transaction Exists” 1 Success Informational Suspense will be created with No Transaction Exists trans type.
31 CreateSuspense request with valid Suspense data and existing contract with contract in Post Issue statuses including Closed, Suspensed,Claimetc and ApplySuspense tag as Yes and FinActivityType is set to “Additional Premium or Initial Premium” 100 Internal Error Fatal An error message “10: Invalid policy status for trans”
32 Create Suspense Request with valid Suspense data and existing contract in Pre-Issue status. 1 Success Informational Suspense will be successfully created, tied to App and linked to run the rules to generate applicable requirements.
33 Create Suspense Request with valid Suspense data and existing contract in Post-Issue status. 1 Success Informational Suspense will be successfully created in ALIP.
34 Create Suspense Request with valid Suspense data without a Contract Number. 201 Warning Informational Suspense is successfully created in the ALIP and an Error Message is returned to the ESB indicating the Missing Contract Number and New Suspense Number.
35 Create Suspense Request with valid T&E record is received on a Pre- issue contract and a T&E Record found on the proposed policy with the Replacement record’s Amount not being + 5000 202 Warning Informational Suspense is successfully created in ALIP and tied to the Application. Also a Task box indicating failure to find the T&E Record in ALIP. A Response is sent back to the ESB with the newly created Suspense Number and as well as an Error code and description indicting Failure to look up T&E Record.
36 Create Suspense Request with valid T&E record is received on a Post- issue contract and a T&E Record found on the proposed policy with the Replacement record’s Amount not being + 5000 202 Warning Informational Suspense is successfully created in ALIP. A Response is sent back to the ESB with the newly created Suspense Number and as well as an Error code and description indicting Failure to look up T&E record.
37 Create Suspense Request with valid Suspense data and existing contract in Pre-Issue status and ApplySuspense as No ExchRepPremiumInd as Yes.Request T&E data is complete and matching T&E data exists in to ALIP as per matching criteria 1 Success Informational Suspense Created - YesExchange/Replacement from – set since matching T&E exists into ALIP.SuspenseLinkage – Perform which kickoff the Application Underwriting.
38 Create Suspense Request with valid Suspense data and existing contract not in Pre-Issue status and ApplySuspense as No ExchRepPremiumInd as Yes.Request T&E data is complete and matching T&E data exists in to ALIP as per matching criteria 1 Success Informational Suspense Created - YesExchange/Replacement from – set since matching T&E exists into ALIP.SuspenseLinkage – Not perform Since Linkage is not applicable.
39 Supply all the required data to approve a suspense (based on the interface agreement) and supply the BusinessService as ‘ApproveSuspenseDisbursement’.Ensure that suspense with Suspense ID (SS_SUSP_NUM) exists in ALIP and status in ‘Pending Disburse’ status. 1 Success Informational The suspense is updated accordingly with the supplied suspense status. Ensure that whatever happens (such as changes history if applicable ) within ALIP when a suspense is approved/declined happens via API. Please test this scenario for all allowable statuses.
40 Supply all the required data to approve a suspense (based on the interface agreement) and supply the BusinessService as ‘ApproveSuspenseDisbursement. Ensure that suspense with Suspense ID (SS_SUSP_NUM) not exists in ALIP or the status is not ‘Pending Disburse’ status. 100 Error Fatal The request gets rejected with ‘‘Suspense does not exist or cannot be approved based on the status’’
41 Supply all the required data to approve a suspense (based on the interface agreement) and supply the BusinessService as ‘UpdateSuspense’ or ‘VoidSuspense’Ensure that suspense with Suspense ID (SS_SUSP_NUM) exists in ALIP with status ‘Pending Disburse’ status. 100 Error Fatal The request gets rejected with ‘‘Suspense in ‘Pending Disburse’ status cannot be updated or voided”