Get Available Funds for Contract

Request/Response & Json Schema

Overview

The GetAvailableFunds API accepts a contract id and returns all the funds available on that contract which can be vested into, including all the funds which are currently vested by that contract. The funds are tied to the product associated with the contract.

The API also returns segment information in response as of Current Date.

The following products are in scope:

Deferred Annuity

Universal Life

The following information for each of the available fund is returned in the response:

Policy

PolNumber

ProductCode

CusipNum

FullName

AssetClass

InvestProductTypeCode

InvestmentRate

DateBasedOn

UnitPrice

UnitPriceAsOfDate

FinancialStatement

InvestmentStatement

SubAccountStatement

Technical Requirements

TR ID# Technical Requirements
TR1 ACORDv2.36 shall be used to communicate.
TR2 ACORD Tx 233 “Holding Product Inquiry Transaction tc=233” is being used for getting the available funds and its details
TR3 Interface must always return an error code and desc in the event of a processing failure in addition to HTTP response code.
TR4 For a success, the response will provide the available funds and its details.

Business Requirements

BR ID# Business Requirements
BR1 The Get Available Funds For Contract should provide the list and details of all the available funds for the contract.
BR2 Interface returns a list of funds based on the product associated with the contract, irrespective of the status of the contract.
BR3 The contract needs to be present in ALIP for the data to be returned.
BR4 API supports display of active segments data elements (For list of data elements refer section 3.2.9)
BR5 A segment is active if the current date is on or before the segment maturity date.
BR6 Active segments are always displayed in response based on current date. To fetch active Segment/Bucket details on a contract, a quote will be run on current date which will fetch all the active segment/Buckets.

Below is the screenshot of ALIP segments, which are fetched in response.

Process Flow

The external system would fire the REST URL containing the input parameters for retrieving the available funds on the request queue.

ALIP webadapters would pick up, process the message, convert it into XML format, and posts it onto the ALIP request queue.

ALIP process server will pick up the message, convert from ACORD to the canonical format, perform the necessary XSD validations, and other basic validations on the completeness of the fund information, existence of the client/contract id in ALIP etc.

Post the necessary validations, it would invoke the necessary ALIP APIs to retrieve the necessary fund information from the database.

The fund information since it is a case of a “GET” request, would be generated in XML format, converted to ACORD format, and sent back to the REST layer

Here, it would be further converted back into the final JSON output format and returned back to the external system.

Impact on ALIP system

N/A

Assumptions

Contracts in ‘Pending Issue’ and ‘Pending Awaiting Funds’ status will not fetch Segment related data elements.

Segment information will be supported for valid business cases only, where last processed transaction date is not a future date or cycle is processed till current date.

Dependencies

N/A

Request Data Elements

Request Parameters Description Mandatory Allowed values
Contract Number A number which uniquely identifies a contract number within ALIP. Y

Response Data Elements

Success/Error Handling

Success Success Scenario Description Message Code Message Description Message Type Additional Comments
#1 The Get Available Funds for Contract call was successful with details being returned in the output 1 Success Informational TXLife/TXLifeResponse/TransResult/ResultCode/@tc =1

Error Error Scenario Description Message Code Message Description Message Type Additional Comments
#1 The Get Available Funds for Contract call was NOT successful due to a technical error or contract not found. 5 Internal Error Informational TXLife/TXLifeResponse/TransResult/ResultCode/@tc =5