Application Decisioning

Preapproval
MPLs perform due diligence for every loan request they receive. An application can be submitted to the Preapproval API whether or not it has been approved or denied. If it hasn’t yet been approved, MPLs can revise the loan application later after a decision was reached, approved, or denied (this includes rejected applications), in accordance with the Fair Lending law.

APIDescription
POST /applications/approvePost an application marked as approved.
POST /applications/denyPost an application marked as denied, with a declination object attached.
POST /applicationPost an application without the decisioning.
POST /applications/{id}/approveUpdate an existing application to approved status.
POST /applications/{id}/denyUpdate an existing application to denied status.
PATCH /applications/{id}Update the content of a certain object within the application.

Notes:

  • During implementation, Cross River (CR) and the MPL may agree on additional fields to be passed to CR based on the MPL's unique operating model.
  • During implementation, CR and the MPL may also agree on the content of the data using the Data Dictionary Monday board. Questions on specific fields should be posted there. If you don't yet have access, contact your Relationship Manager (RM).
  • Data types and schemas are available directly in Swagger, which is the "source of truth".
  • MPLs should send in their Final Decision using either POST /approve or POST /deny.

Data Dictionary

The Data Dictionary is presented to each MPL during the onboarding process. The content to be sent will be agreed upon between CR and the MPL before launch. If you can't access the Data Dictionary, contact your RM.

POST /applications/approve

Use this API to send in a unique application that hasn't been submitted already, and mark it as approved. This is the preferred method for sending in an approved application.

  • For applications that were approved, but not accepted, you should use this API and mark AcceptedByCustomer as false.
  • For applications that were approved and accepted by the customer, you should use this API and mark AcceptedByCustomer as true.

The API returns a unique ID that represents this application in our system.
If the decision changes afterwards, you can update it using POST /applications/{ID}/deny.

POST /applications/deny

Use this API to send in a unique application that hasn't been submitted already, and mark it as denied. This is the preferred method of sending in an application that has a final status of denied. For denied applications, an ApplicationDeniedRequest Object containing the reasons for denial, must be sent in along with the application information.

The API returns a unique ID that represents this application in our system.

If the decision changes afterwards, you can update it using POST /applications/{ID}/approve.

POST /application

Use this API to send in a unique application that hasn't been submitted already, and where a decision hasn't yet been made yet about the loan application. We do not recommend this method of sending in applications unless you have a special use case that requires it.

The API returns a unique ID that represents this application in our system.

When a decision is made, you can update it using POST /applications/{id}/deny, POST /applications/{id}/approve, and update any fields that need updating using PATCH /applications/{id}.

PATCH /applications/{id}

Use this API to update a value or add a key/value inside an application that has already been submitted so that it can be marked as approved. Certain values that are required for approved will need to be added before changing an application to approved.

📘

Important

We currently only support the add operation, which is used to add a key/value. If the key already exists, the add operation will replace the value.

The example below will change the investor's name to "John Smith". If the investor's name was not previously submitted, this will add the name.

[
    {
    "op": "add",
    "path": "/investor/name",
    "value": "John Smith"
    }
]

See here for more information about Patch.

POST /applications/{id}/approve

Use this API to approve an application that has already been submitted. If the application is missing any required fields for an approved application, first use PATCH to add the missing data.

🚧

Information

  • This API only marks the application as approved and does not update other information.
    • No Body is used in this call.
    • Use PATCH to update application information.

POST /applications/{id}/deny

Use this API to mark as denied an application that has already been submitted.

An ApplicationDeniedRequest Object containing the reasons for denial and other denial information must be submitted along with the application information.

📘

Deprecated: CSV File to SFTP folder

For partners who onboarded before 2021, you should continue dropping application tapes into the SFTP folder until you're ready to migrate to API.

  • The file format is .csv.
  • Naming convention: MplId_ApplicationTape_yyyymmdd.csv, where yyyymmdd is the date of file generation.
  • Data in the report should be for prior-day applications.
  • If a loan changes status (such as from denied to funded), you should include the updated loan record in the tape with the UpdatedFlag. The flag indicates that this record updates a previous credit decision for this loan.