Originations
Originations module allows existing as well as new customers to apply for new products offered by the bank. OBAPIs provide a suite of APIs for the customers to apply for new product(s) by capturing details of personal information, identity details, contact details, employment details and financial information, depending on the product selected.

Additionally there are a set of APIs available to specify information pertaining to features and funding options. Once an application is submitted, the same can be tracked through the application tracker.

Listed below are the gamut of services available to the customer for different originations.

Products and Offers
Banks have a wide array of products to offer to their customers. They can also categorize the products depending on the segment of their customer base eg. Retail, corporate etc. OB API facilitates this maintenance through the APIs listed below. These set of APIs are used for creation of various products and offers along with modification, view and delete facility. Currently this facility is available for the following products: Savings Account Current Account Term Deposits Credit Cards Personal Loan Auto Loan Home Loan In Principal Approval

Listed below are the set of API’s which would be invoked to create, modify, view or delete the products and Offers provided to the customer:

To fetch the offer details for the offer id for the selected product( casa, TD, Loan, CC)

GEToffers/{offerId}

To fetch the product groups

GETproductClass/{productClass}/productGroups

To validate the availability of the product for a particular state

GET/productClass/{productClass}/type/{productSubClass}/states/{state}

To fetch the list of loan purpose type when user is submitting the form for a loan account

GET/productGroups/{productGroupId}/purposes

To fetch product group details for a particular product group id

GET/productGroups/{productGroupId}

To fetch list of offers for the product group

GET/productGroups/{productGroupId}/offers

To fetch the list of currency for product group

GET/productGroups/{productGroupId}/currencies

To fetch products for a particular product group

GET/productGroups/{productGroupId}/products

To fetch list of offers for the product.

GET/productGroups/{productGroupId}/products/{productId}/offers

To fetch offer details for offer id

GET/productGroups/{productGroupId}/products/{productId}/offers/{offerId}

To fetch list of product groups

GET/productGroups

To fetch list of offers

GET/submissions/{submissionId}/products/{productGroupSerialNumber}/offers

To fetch the list of CASA products

GET/products/demandDeposit

To fetch Loan Product Details

GET/products/loan/{productId}

To fetches the residential and employment stability criteria as defined under the bank policy.

GET/bankPolicyTemplates

To fetch the product details

GET/products/demandDeposit/{productId}

To fetch Loan Product Details

GET/products/loan/{productId}

To fetch interest rates of a product

GET/products/deposit/{productId}/interestRates

To fetch the list of deposit products

GET/products/deposit

To fetch deposit product details

GET

GET/products/deposit/{productId}
Primary and Contact Information
These APIs allow creation, view and modification of primary information as well as contact details of the customer consisting of address, email address and phone numbers as part of application submission process.

Listed below are the different APIs available for this:

To fetch the applicant details for a submission

GET/submissions/{submissionId}/applicants/{applicantId}

To Update applicant details for a particular submission ID

PUT/submissions/{submissionId}/applicants/{applicantId}

To fetch the contact details of an applicant for a submission

GET/submissions/{submissionId}/applicants/{applicantId}/contactPoints

To create contact details for an applicant as part of a submission

POST/submissions/{submissionId}/applicants/{applicantId}/contactPoints

To fetch a list of addresses of the applicant

GET/submissions/{submissionId}/applicants/{applicantId}/addresses

To create addresses for an applicant as part of a submission

POST/submissions/{submissionId}/applicants/{applicantId}/addresses

To create address for an applicant as a part of submission

POST/submissions/{submissionId}/applicants/{applicantId}/address

To fetch details of contact point created for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/contactPoints/{contactId}

To update details of the contact points created for an applicant

PUT/submissions/{submissionId}/applicants/{applicantId}/contactPoints/{contactId}

To delete details of the contact points created for an applicant

DELETE/submissions/{submissionId}/applicants/{applicantId}/contactPoints/{contactId}

To fetch address details of the applicant for current or previous addresses

GET/submissions/{submissionId}/applicants/{applicantId}/addresses/{addressId}

To update address details of the applicant for current or previous addresses

PUT/submissions/{submissionId}/applicants/{applicantId}/addresses/{addressId}

To delete address details of the applicant for current or previous addresses

DELETE/submissions/{submissionId}/applicants/{applicantId}/addresses/{addressId}

To fetch the list of accommodation types

GET/accommodationTypes

To create accommodation type maintenance

POST/accommodationTypes

To Update the accommodation type maintenance

PUT/accommodationTypes/{accommodationTypeCode}

To delete accommodation type maintenance

DELETE/accommodationTypes/{accommodationTypeCode}
Account Configurations
Account details are needed for various preferences, funding requirements or other configuration settings while applying for an origination.

List of APIs for the above with their details are:

To Update the funding instructions for deposit application

PUT/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/funding

To create funding instruction for deposit application

POST/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/funding

To fetche list of funding options

GET/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/fundingOptions

To fetch account configuration for deposit application

GET/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration

To validate account configuration for deposit application

PUT/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration

To fetch list of debit cards for offer associated with submission

GET/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/debitCard

To update card holder preferences

PUT/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/holderPreference

To create card holder preferences

POST/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/holderPreference

To create term deposit account requirements

POST/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/requirement

To confirm loan account configuration

PUT/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/loans/confirm

To Fetch Loan Account Configuration

GET/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/loans

To create loan account configuration

POST/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/loans

To fetch credit card account configuration details

GET/submissions/{submissionId}/creditCardApplications/account

To create credit card account configuration details

POST/submissions/{submissionId}/creditCardApplications/account

To fetch list of card add-on holders

GET/submissions/{submissionId}/creditCardApplications/supplementaryCard

To update a card add-on holder

PUT/submissions/{submissionId}/creditCardApplications/supplementaryCard

To create a card add-On holder

POST/submissions/{submissionId}/creditCardApplications/supplementaryCard

To delete a card add-on holder

DELETE/submissions/{submissionId}/creditCardApplications/supplementaryCard

To fetch list of backgrounds for credit card

POST/submissions/{submissionId}/creditCardApplications/backGroundContent

To fetch list of balance transfer instructions

PUT/submissions/{submissionId}/creditCardApplications/balanceTransfer

To fetch list of network providers of various credit cards

GET/submissions/networkProviders
Proof of Identifications
The authenticity of the customer is primarily required to be determined for them to be onboarded as a part of the banking family. The KYC of the customer also gets validated using information of their proof of Identification. Thus it is essential to capture the details of valid identity proofs.

Listed below are the set of API’s which would be invoked to capture, edit or delete the identification details of the customer:

To fetch the list of identifications

GET/submissions/{submissionId}/applicants/{applicantId}/identifications

To update the identifications details

PUT/submissions/{submissionId}/applicants/{applicantId}/identifications

To create identification for an applicant

POST/submissions/{submissionId}/applicants/{applicantId}/identifications

To fetch identification details

GET/submissions/{submissionId}/applicants/{applicantId}/identifications/{identificationId}

To delete identification of an applicant

DELETE/submissions/{submissionId}/applicants/{applicantId}/identifications/{identificationId}
Employment Details
Employment details are necessary to be obtained especially when the user is approaching for any type of lending product. The details required from applicant may vary upon the different types of products for which the customer is applying. The employment information obtained also plays a deciding factor in mapping the customers under various profile.

The below mentioned API’s enable the bank to create, validate, update or delete the employment profile:

To fetch the list of employment types and applicable employment status list

GET/employmentTypeAndStatus

To validate the employment profile.

GET/submissions/{submissionId}/applicants/{applicantId}/employments/validate

To create an employment profile id

POST/submissions/{submissionId}/applicants/{applicantId}/employments/profileId

To validate the employment stability by employment start date

GET/submissions/{submissionId}/applicants/{applicantId}/employments/validateEmploymentDate/{employmentDate}

To validate employment profiles

GET/submissions/{submissionId}/applicants/{applicantId}/employments/validateEmployments

Adds employment profiles for the applicant.

POST/submissions/{submissionId}/applicants/{applicantId}/employments/profiles

To fetch employment profile details

GET/submissions/{submissionId}/applicants/{applicantId}/employments/{employmentId}

To updates employment profile details

PUT/submissions/{submissionId}/applicants/{applicantId}/employments/{employmentId}

To delete the employment profile for the applicant.

DELETE/submissions/{submissionId}/applicants/{applicantId}/employments/{employmentId}

To fetch the list of all employment profiles of an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/employments

To add an employment profile for the applicant

POST/submissions/{submissionId}/applicants/{applicantId}/employments
Financial Details
These APIs allow creation, view and modification of financial details about the applicant that is required by the banks to process the application. Customers can provide with details about assets, liability, income and expenses as part of application submission process.

The APIs to capture, view, modify or delete the various financial information of customers are:

To fetch list of financial income types that will be available to the user for selection.

GET/financialIncomeTypes

To fetch list of financial liability types that will be available to the user for selection.

GET/financialLiabilityTypes

To fetch the financial template from which the applicable financial parameters can be resolved for income, liability, assets and expenses.

GET/financialTemplate

To fetch details of an asset created for an applicant as part of submission

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/assets/{assetId}

To update details of an asset created for an applicant as part of submission.

PUT/submissions/{submissionId}/applicants/{applicantId}/financialProfile/assets/{assetId}

To delete an asset that was mapped to an applicant.

DELETE/submissions/{submissionId}/applicants/{applicantId}/financialProfile/assets/{assetId}

To fetch the list of assets mapped to the applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/assets

To create an asset record along with details as part of submission

POST/submissions/{submissionId}/applicants/{applicantId}/financialProfile/assets

To fetch the list of incomes mapped to the applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/incomes

To create an income record along with details for an applicant as part of submission

POST/submissions/{submissionId}/applicants/{applicantId}/financialProfile/incomes

To fetch the details of an income created for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/incomes/{incomeId}

To update the details of an income created for an applicant

PUT/submissions/{submissionId}/applicants/{applicantId}/financialProfile/incomes/{incomeId}

To delete the details of an income created for an applicant

DELETE/submissions/{submissionId}/applicants/{applicantId}/financialProfile/incomes/{incomeId}

To fetch the list of expenses mapped to the applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/expenses

To create an expense record along with details for an applicant as part of submission

POST/submissions/{submissionId}/applicants/{applicantId}/financialProfile/expenses

To fetch the details of an expense created for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/expenses/{expenseId}

To update the details of an expense for an applicant

PUT/submissions/{submissionId}/applicants/{applicantId}/financialProfile/expenses/{expenseId}

To delete the details of an expense for an applicant

DELETE/submissions/{submissionId}/applicants/{applicantId}/financialProfile/expenses/{expenseId}

To fetch the details of the liability created for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/liabilities/{liabilityId}

To update the details of the liability created for an applicant

PUT/submissions/{submissionId}/applicants/{applicantId}/financialProfile/liabilities/{liabilityId}

To delete the details of the liability created for an applicant

DELETE/submissions/{submissionId}/applicants/{applicantId}/financialProfile/liabilities/{liabilityId}

To fetch the list of liabilities created for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/liabilities

To create a liability record along with the details for an applicant

POST/submissions/{submissionId}/applicants/{applicantId}/financialProfile/liabilities

To validate the financial details captured by the applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/validateFinancials

To fetch the list of current assets created for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentAssets

To create the record of a current asset for an applicant as part of submission

POST/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentAssets

To modify the details of the current asset created for an applicant

PUT/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentAssets/{currentAssetId}

To delete a current asset along with details created for an applicant

DELETE/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentAssets/{currentAssetId}

To fetch the list of current liabilities created for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentLiabilities

To create the record of a current liability for an applicant as part of submission

POST/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentLiabilities

To modify the details of the current liability created for an applicant

PUT/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentLiabilities/{currentLiabilityId}

To delete a current liability along with details created for an applicant

DELETE/submissions/{submissionId}/applicants/{applicantId}/financialProfile/currentLiabilities/{currentLiabilityId}

To fetch the list of financial parameters for an applicant

GET/submissions/{submissionId}/applicants/{applicantId}/financialParameter
Generic
Banks need to capture certain data from the applicant which applicant’s consent for their preferences or fees or insurance etc.

The API’s that enable the banks to capture such details are:

To fetch the document checklist

GET/submissions/{submissionId}/documentChecklist

To create a document checklist

POST/submissions/{submissionId}/documentChecklist

To submit an application to core banking for processing

PUT/submissions/{submissionId}

To fetch the application fee

GET/submissions/{submissionId}/applications/{applicationId}/fees

To update the application fee instructions

PUT/submissions/{submissionId}/applications/{applicationId}/fees

To fetch the list of documents for application

GET/submissions/{submissionId}/applications/{applicationId}/documents

To fetch the submission fee

GET/submissions/{submissionId}/fees

To fetch the list of insurance instructions.

GET/submissions/{submissionId}/products/{productGroupSerialNumber}/insurances

To fetch submission summary details

GET/submissions/{submissionId}/summary

To fetch the list of documents

GET/submissions/{submissionId}/documents

To create a submission document

POST/submissions/{submissionId}/documents/{documentId}

To delete the submission document

DELETE/submissions/{submissionId}/documents/{documentId}

To fetch the list of submissions

GET/submissions

To create a submission

POST/submissions

To fetch the residential and employment stability criteria as defined under the bank policy.

GET/bankPolicyTemplates
User Requirements
These API’s enable the bank to capture data to ascertain the user preferences.

The API’s that enable capture the data as per user requirements are :

To fetch the list of dealer details available with bank.

GET/dealers

To fetch loan item details

GET/loanItems/{transactionRefNumber}

To delete the loan item details

DELETE/loanItems/{transactionRefNumber}

To submit an application to core banking for processing

PUT/submissions/{submissionId}

To create the loan item details

POST/loanItems

To fetch selected offer

GET/submissions/{submissionId}/products/{productGroupSerialNumber}/selectedOffer

To associate an offer to the product

POST/submissions/{submissionId}/products/{productGroupSerialNumber}/selectedOffer

To validate loan requirements

PUT/submissions/{submissionId}/loanApplications/validation

To fetch list of vehicles incase of an auto loan

GET/submissions/{submissionId}/loanApplications/vehicleLookup

To fetch the list of vehicle sub type

GET/submissions/{submissionId}/loanApplications/vehicleSubType

To fetches list of vehicle models

GET/submissions/{submissionId}/loanApplications/vehicleModels

To fetch the loan requirements

GET/submissions/{submissionId}/loanApplications

To update the loan requirements

PUT/submissions/{submissionId}/loanApplications

To creates loan requirements

POST/submissions/{submissionId}/loanApplications

To delete the loan requirements

DELETE/submissions/{submissionId}/loanApplications

To fetch a list of interest frequencies

GET/submissions/{submissionId}/depositApplications/interestFrequencies

To validate term deposit requirements

PUT/submissions/{submissionId}/depositApplications/validation

To update the term deposit requirements

PUT/submissions/{submissionId}/depositApplications/{productGroupSerialNumber}

To fetch the term deposit requirements

GET/submissions/{submissionId}/depositApplications

To create the term deposit requirements

POST/submissions/{submissionId}/depositApplications

To validate the demand deposit requirements

GET/submissions/{submissionId}/demandDepositApplications

To fetch demand deposit requirements

GET/submissions/{submissionId}/demandDepositApplications

To update the demand deposit requirements

PUT/submissions/{submissionId}/demandDepositApplications

To create demand deposit requirements

POST/submissions/{submissionId}/demandDepositApplications

To fetch credit card requirements

GET/submissions/{submissionId}/creditCardApplications

To update credit card requirements

PUT/submissions/{submissionId}/creditCardApplications

To create credit card requirements

POST/submissions/{submissionId}/creditCardApplications

To fetch funding table details

GET/submissions/{submissionId}/fundingTable

To update funding table details

PUT/submissions/{submissionId}/fundingTable

To update funding table with customer contribution

PUT/submissions/{submissionId}/fundingTable/addContribution

To fetch the list of property types

GET/properties/propertyType

To fetch the list of property sub types

GET/properties/subpropertyType

To Fetch list of vehicle policy templates

GET/vehiclePolicyTemplates
App Tracker
Post submission of the application form, the user can track the status of it using the app tracker application. The current status of application can be viewed, or the submitted application can e user can also withdraw the application.

The API’s that enable users to view or delete the application form are:

To fetch list of submission disclosures of the applicant

GET/submissions/{submissionId}/applicants/{applicantId}/disclosures

To fetch list of applicants of the applicant

GET/submissions/{submissionId}/applicants

To fetch the list of applications for submission

GET/submissions/{submissionId}/applications

To fetch application details for application id

GET/submissions/{submissionId}/applications/{applicationId}

To withdraw an application of the applicant

DELETE/submissions/{submissionId}/applications/{applicationId}

To fetch an application form of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/applicationform

To fetch the application progress of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/progress

To fetch the application summary for application id of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/summary

To fetch the list of repayment instructions for loan application of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/repayment

To update repayment instructions for loan application of the applicant

PUT/submissions/{submissionId}/applications/{applicationId}/repayment

To fetch the offer documents for loan application of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/offerDocuments

To update the offer document status for loan application of the applicant

PUT/submissions/{submissionId}/applications/{applicationId}/offers/{offerDocumentStatus}

To fetch the list of status history of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/history

To fetch the list of pending actions of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/actions

To fetch the statement instructions for loan application of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/configuration

To update statement instructions for loan application of the applicant

PUT/submissions/{submissionId}/applications/{applicationId}/configuration

To fetch primary card holder preferences for credit card application

GET/submissions/{submissionId}/applications/{applicationId}/primaryPreferences

To update primary card holder preferences for credit card application

PUT/submissions/{submissionId}/applications/{applicationId}/primaryPreferences

To fetch membership details for credit card application

GET/submissions/{submissionId}/applications/{applicationId}/membership

To update membership details for credit card application

PUT/submissions/{submissionId}/applications/{applicationId}/membership

To fetch the list of balance transfer instructions for credit card application

GET/submissions/{submissionId}/applications/{applicationId}/balanceTransfer

To update balance transfer instructions for credit card application

PUT/submissions/{submissionId}/applications/{applicationId}/balanceTransfer

To fetch additional details for credit card application

GET/submissions/{submissionId}/applications/{applicationId}/additionalDetails

To update additional details for credit card application

PUT/submissions/{submissionId}/applications/{applicationId}/additionalDetails

To fetch the list of add-on card holders for credit card application

GET/submissions/{submissionId}/applications/{applicationId}/addOnCardHolders

To fetch the list of applicants

GET/submissions/{submissionId}/applications/{applicationId}/applicants

To update activity profile of the applicant

PUT/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/activityProfile

To create activity profile of the applicant

POST/submissions/{submissionId}/applicants/{applicantId}/accountConfiguration/activityProfile

To fetch the list of application proposals of the applicant

GET/submissions/{submissionId}/applications/{applicationId}/proposals

Updates application proposal for loan application of the applicant

PUT/submissions/{submissionId}/applications/{applicationId}/proposals/{proposalid}

To fetch the card holder preferences for credit card application

GET/submissions/{submissionId}/applications/{applicationId}/cardHolderPreferences

To update the card holder preferences for credit card application

PUT/submissions/{submissionId}/applications/{applicationId}/cardHolderPreferences

To fetch delivery preferences for credit card application

GET/submissions/{submissionId}/applications/{applicationId}/deliveryPreferences

To update delivery preferences for credit card application

PUT/submissions/{submissionId}/applications/{applicationId}/deliveryPreferences

To cancel a submission

POST/submissions/{submissionId}/cancellation
Adminstrator
These API’s enable the administrator to create a list of workflows which are created and maintained for different products.

The APIs to per form administrative work for originations are:

To fetch the list of origination workflows for the specified product

GET/workflows

To create an origination workflow

POST/workflows

To update origination workflow details

PUT/workflows/{workflowId}

To activate the origination workflow

PUT/workflows/{workflowId}/activation