content from https://api.cuanswers.com/indirect/
What is the CUA API?
It is a software platform designed to accommodate the exchange of information between external software applications and the CU*BASE core processing system. This allows the financial institution to manage conversations with external vendors directly through their core processing solution, increasing efficiency versus accessing siloed software solutions.
How does it work?
The API system utilizes modern best practices associated with the REST API design paradigm. REST is a protocol designed to facilitate the creation, updating, reading, and deletion (CRUD) of remote data structures, referred to as an entity, over the HTTPS protocol. The request of these actions map to HTTP verbs specifying the entity via the URI.
Note: For security and regulatory reasons, CU*Answers does not adhere to HATEOAS.
Authentication and Authorization
The API utilizes HTTP Basic Authentication for access to the platform. Specific authorization is dictated by the unique ID provided during the transaction in the URL. These details are provided by the CU*Answers team during your integration.
Partner Configuration
Certain aspects of the API that relate to authentication, as well as identification within the core processing system require configuration for each partner. These items will not change for each CU you interact with, but will need to be provided with each transaction. In all cases this information will be provided by the CU*Answers Software Integrations team, or retrieved from certain API endpoints. If you have any questions on how to acquire this information, please contact us.
These items are configured at the partner level:
- Partner ID
- Delivery Channel
- Username and Password
CU Configuration
In order to interact with our API, you will see certain aspects in the sample documentation that is required to be different for each CU that you access. In all cases this information will be provided by the CU*Answers Software Integrations team, or retrieved from certain API endpoints. If you have any questions on how to acquire this information, please contact us.
These items are configured at the CU level:
- CU Unique ID
- Lender Dealer ID
Loan Decisioning
When a loan application is submitted to the system (not an approved loan), the CU will have the opportunity to issue a decision on the application. There are two methods of retrieving that loan:
- Performing a GET on the API using the unique application ID provided in the return location header tag (Described below)
- Providing postback information
If you provide postback information in your original application submission (see application spec), the system will attempt to post new decisions to your system when they are applied. This eliminates the need to continually ask if decisions are available for applications.
The system can support two scenarios for posting:
- A web service URL with an API key for auth
- A web service URL using basic authentication credentials
More detail is available within the application schema specification
Example Verbs and URIs
Action | HTTP Verb | Entity | URI |
---|---|---|---|
Create | POST or PUT | Loan Application | /api/credit_unions/{CUID}/loans/applications |
Retrieve | GET | Decisions | /api/credit_unions/{CUID}/loans/applications/{unique_application_id}/decisions |
Create | POST or PUT | Loans | /api/credit_unions/{CUID}/loans |
Available Entity Endpoints
Every verb is not supported to every entity. It is limited by permission and implementation, to be coordinated with your partner certification representative.
Loan Applications
Submit an application for the CU to decision
HTTP Verb | POST |
Endpoint URI | /api/credit_unions/{CUID}/loans/applications |
Available Content-Type(s) | XML |
Request Body | View Schema View XML Sample |
Return Parameters | Variable length string Application ID |
HTTP Response on Success | HTTP 201 Created |
Loan Decisions
Get decisions for a particular application
HTTP Verb | GET |
Endpoint URI | /api/credit_unions/{CUID}/loans/applications/{unique_application_id}/decisions |
Available Content-Type(s) | XML |
Response Body | View Schema View XML Sample |
Return Parameters | XML decision response |
HTTP Response on Success | HTTP 200 OK |
Loans
Submit preapproved loans that contain an approved decision (Typically underwritten in another system)
HTTP Verb | POST |
Endpoint URI | /api/credit_unions/{CUID}/loans |
Available Content-Type(s) | XML |
Request Body | View Schema View XML Sample |
Return Parameters | Variable length string Application ID |
HTTP Response on Success | HTTP 201 Created |
HTTP Examples
The intent to create a loan application is signified by the request type and URI. Each entity response will be provided in XML format per the referenced schemas
Note: These example do not have all header information. Much of the details must be coordinated. The request bodies’ format are for example purposes only.
Submission Example
Request from Vendor to CU*Answers
POST /api/credit_unions/CU00000/loans HTTP/1.1 Host: api.cuanswers.com Authorization: Basic (Provided by CUA) Content-Type: application/x-www-form-urlencoded XML=(XML Request)
Response from CU*Answers
HTTP Status: 201 Created Connection → Keep-Alive Content-Length → 59 Content-Type → text/html Date → Wed, 17 Feb 2016 02:08:10 GMT Keep-Alive → timeout=15, max=100 Location → /credit_unions/CU00000/loans/76ac176fd2ee4d099dfeffae58789d90 Server → Apache/2.4.7 (Ubuntu) <ack type="ack"> <lender_app_id>178597</lender_app_id> </ack>
Contact Us!
This is a closed API, which means in order to gain access, you have to reach out. Also, if you have any questions that aren’t covered in this documentation, or maybe they are and you’d like clarification, please Contact Us