The origination-system adapter, in its Adapters listing: the connective layer beneath every product that touches the loan file.
This is the same slot as LOS under Integration, carried in both categories because the source catalogue lists it in both. The Integration listing is the vendor-facing view; this one is the platform-facing view.
What sits here is the read and write path into the loan file: a product asks the adapter for the loan, works in canonical classes, and writes back through the same layer.
Dual listing
LOS is filed under two categories. The other listing is
LOS under Integration, and the recorded
specifications resolve there — its 10 operations render on that page.
Operations
Byte Service Application
POST/job/jobs/los-byte-VOI/executions
Income Service Application
byteIncomeAutomation
Invoke Income Verification
Income Service Application
You can start an Income Verification for a loan in Byte using this endpoint.
This endpoint takes file_data_id which is the file id in Byte.
Request
application/json
{
"file_data_id": 1000032
}
Response
application/json
Income Verification Triggered Successfully
{
"execution_id": "01FDYNKEP7DRV8HAE4X6J580NP"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Request bodyapplication/json
1 fields
Field
Type
Description
file_data_idrequired
string
Byte File ID
Response 201application/json
1 fields
Income Verification Triggered Successfully
Field
Type
Description
execution_id
string
Execution ID
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 500application/json
1 fields
The product has encountered an internal server error
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Response 200application/json
3 fields
Successfully returned the partner object
Field
Type
Description
active
boolean
If set to "True" partner can be used for verification. If set to "False" partner will be disabled for verification and excluded from the waterfall.
status
string
Parameter for documentation. Can be set to "active" and "upcoming".
partner
string
Partner name.
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
Field
Type
Description
message
string
Error Message
Other responses
404
GET/partners/{partner_name}/schema
Get Partner Schema
getPartnerSchema
Get list of all LOS partners
Retrieve Partner Credentials Schema retrieves the required partner schema for credentials.
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
partner_namerequired
stringpath
partner_name
Name of the partner for which we wan't to retrieve schema
Response 200application/json
10 fields
Successfully returned the partner schema object
Field
Type
Description
schema
string
Schema URL
id
string
Schema ID
type
string
JSON type
title
string
Schema title
description
string
Schema description
webhook
boolean
Value that indicates if partner requires webhook setup
default
object
Default value for schema
examples
object[]
List of examples
key1
string
Example 1
key2
string
Example 2
required
string[]
Required fields
properties
object
Properties of Schema
key1
object
Key 1 Schema
id
string
Property ID
type
string
Property value type
title
string
Title for property
description
string
Description for property
default
string
Default value if exists
examples
string[]
List of examples for given property
key2
object
Key 2 Schema
id
string
Property ID
type
string
Property value type
title
string
Title for property
description
string
Description for property
default
string
Default value if exists
examples
string[]
List of examples for given property
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
credentials_type
stringquery
test
Credentials type: production or test
Response 200application/json
4 fields
Byte Credentials Response
Field
Type
Description
site_namerequired
string
The Byte Site Name
usernamerequired
string
The username
authorization_keyrequired
string
Authorization Key
server_urlrequired
string
Authorization Key
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
{
"message": "Credentials are saved and verified"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Request bodyapplication/json
6 fields
Field
Type
Description
credentials_type
string
Credentials Typeproductiontest
server_urlrequired
string
The url of Byte site
site_namerequired
string
The Byte Site Name
usernamerequired
string
The username
passwordrequired
string
The password
authorization_keyrequired
string
Authorization Key
Response 200application/json
1 fields
Create Adapter API Triggered Successfully
Field
Type
Description
message
string
Message
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Response 200application/json
4 fields
Encompass Credentials Response
Field
Type
Description
encompass_instance_id
string
Encompass instance ID
username
string
Username
client_id
string
The unique identifier for the client application.
client_secret
string
The secret for the client application.
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
Field
Type
Description
message
string
Error Message
Other responses
404
POST/encompass/credentials
Set Encompass Credentials
setEncompassCredentials
Important: You do not need to use this endpoint to use Staircase Service integrations in Encompass Applications!
Set Encompass Credentials makes our services available by securely storing your credentials in staircase systems.
Credentials Table
Credential
Description
Services that need
Encompass Instance ID
Used for setting up staircase service inside encompass
Process Automations,Input Adapters,Output Adapters, Staircase Automatizations
Username
Used for setting up staircase service inside encompass
Process Automations,Input Adapters,Output Adapters, Staircase Automatizations
Password
Used for setting up staircase service inside encompass
Process Automations,Input Adapters,Output Adapters,Staircase Automatizations
Client ID
Used for setting up staircase automations service inside encompass
{
"message": "Credentials are saved and verified"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Request bodyapplication/json
5 fields
Field
Type
Description
encompass_instance_id
string
The Encompass instance ID
username
string
The username
password
string
The grant type must be "password" for resource owner password credentials
client_id
string
The unique identifier for the client application. Replace <client_id> with the API client ID portion of the API key available from your Encompass Super Administrator
client_secret
string
The secret for the client application. Replace <client_secret> with the API client secret portion of the API key available from your Encompass Super Administrator
Response 200application/json
1 fields
Create Adapter API Triggered Successfully
Field
Type
Description
message
string
Message
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Response 200application/json
2 fields
Encompass EPC Credentials Response
Field
Type
Description
client_id
string
The unique identifier for the client application.
client_secret
string
The secret for the client application.
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
Field
Type
Description
message
string
Error Message
Other responses
404
POST/encompass-epc/credentials
Set Encompass (EPC) Credentials
setEncompassEPCCredentials
EPC uses the Client Credentials grant type to give Partner products secure access to lender-owned resources.
With the Client Credentials grant type, a client application sends its own credentials (its Client ID and Client Secret) to an Ellie Mae oAuth2 Identity Service endpoint that generates an access token.
In order to be able to use Staircase Service Application component for processing your EPC transactions, you need to set your credentials.
{
"message": "Credentials are saved and verified"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Request data failed validation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Request bodyapplication/json
2 fields
Field
Type
Description
client_id
string
The unique identifier for the client application.
client_secret
string
The secret for the client application.
Response 200application/json
1 fields
Create Adapter API Triggered Successfully
Field
Type
Description
message
string
Message
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 403application/json
2 fields
Invalid key for service
Field
Type
Description
message
string
—
url
string
—
Response 422application/json
1 fields
Request data failed validation
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
The product has encountered an internal server error
Field
Type
Description
message
string
Error Message
Other responses
404
Sales Boomerang Adapter
POST/products/los-sales-boomerang/invocations/
Invoke Sales Boomerang Adapter
salesBoomerang
Sales Boomerang Adapter
Usage
You can send a request in two different ways:
Using request_data: If you provide this parameter, flow invocation would use the data here as input. If you also provide a transaction_id in the request body, Response Collection would be created in the related Transaction object. If you don't provide a transaction_id we will automatically create a Transaction for you and Response Collection would be created in this new Transaction as well.
Using transaction_id and request_collection_id: If you already have a request collection, you can provide its details using these two parameters. Note that in this case Response Collection would be created in the provided Transaction.
Retrieving the Invocation Result
After invocation, endpoint returns an invocation_id which you can poll for its status using Retrieve Invocation Response endpoint. Once the invocation is completed, the Response Collection is populated with these search results.
Show the rest
If you would rather receive a callback once the invocation is completed instead of polling it, you can set callback_url parameter in the request body.
Supported Staircase Products Flows
create_loan
update_loan
list_loans
delete_loan
How to Use Sales Boomerang Adapter with any Staircase CRM Integration
The following diagram illustrates the general overview about integration
{
"message": "Please check the key you used to call this service",
"url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Resource is not found.
{
"message": "Unable to retrieve configurations for given product."
}
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
403 invalid error
{
"message": "Please check the key you used to call this service",
"url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
text/html
Resource not found
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
application/json
Internal server error
{
"message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Environment API Key.
invocation_idrequired
string (ulid)path
d7ccedb8-8889-4657-add4-bc1s4xs97637
Product flow invocation identifier
Response 200application/json
13 fields
Successfully returned status of the Product flow Invocation.
Response from Translator service about input and output translation.
input
object
Input translation status.
language_name
string
Input translation language.
translation_id
string (uuid)
Translation ID.
status
string
Input translation status.COMPLETEDFAILEDRUNNING
convert_input
object
Convert input translation status.
language_name
string
Input translation language.
translation_id
string (uuid)
Translation ID.
status
string
Input translation status.COMPLETEDFAILEDRUNNING
output
object
Output translation status.
language_name
string
Output translation language.
translation_id
string (uuid)
Translation ID.
status
string
Output translation status.COMPLETEFAILEDRUNNING
convert_output
object
Convert output translation status.
language_name
string
Output translation language.
translation_id
string (uuid)
Translation ID.
status
string
Output translation status.COMPLETEFAILEDRUNNING
Response 400application/json
1 fields
Request data failed validation
Field
Type
Description
message
one of
Message
Response 403application/json
2 fields
403 invalid error
Field
Type
Description
message
string
Error message.
url
string
Error additional URL.
Response 404application/json
1 fields
Resource not found
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
Internal server error
Field
Type
Description
message
string
Error message.
Platform
POST/transactions
Create Transaction
createTransaction
Create Transaction creates a transaction in Staircase.
Transactions in Staircase are containers for all the data related to an instance of a transaction type. They enable you to correlate the output of various products to a single transaction type, where the transaction type depends on your line of business.
Transactions are identified by a unique key called transaction_id. As you use different Staircase products to gather the data needed for a specific instance of your transaction type, and receive different sets of output from each product, use the same transaction_id to correlate all the outputs to the same transaction.
A transaction_id, when used properly, gives you a holistic view of the data related to the transaction you’ve assembled.
To access all collections associated with a given transaction_id, try out /transactions/{transaction_id}/collections
{
"message": "Please check the key you used to call this service",
"url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Internal server error
{
"message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Environment API Key.
Request bodyapplication/json
2 fields
Field
Type
Description
callback_url
string (url)
URL for receiving events about changes inside transaction
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
application/json
403 invalid error
{
"message": "Please check the key you used to call this service",
"url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Resource not found
{
"message": "Unable to get collections of given transaction. Please check the transaction id"
}
application/json
Internal server error
{
"message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Environment API Key.
transaction_idrequired
string (ulid)path
01F0KHK7DN3H5JZ4QJKMYAM6GB
Staircase Transaction Identifier
Response 200application/json
4 fields
Transaction collection retrieved successfully
Field
Type
Description
transaction_id
string (ulid)
Transaction idExample 01EZQ32PJQGKRA6HR8D72Q9FFF
collection_id
string (ulid)
Collection idExample 01EZQ32PJQGKRA6HR8D72Q9FFF
data
array
Collection data
metadata
object
Metadata about collection, f.e version of used Staircase schema
Response 400application/json
1 fields
Error
Field
Type
Description
message
one of
Either message object with more properties.
Response 403application/json
2 fields
403 invalid error
Field
Type
Description
message
string
Error message.
url
string
Error additional URL.
Response 404application/json
1 fields
Resource not found
Field
Type
Description
message
string
Message
Response 500application/json
1 fields
Internal server error
Field
Type
Description
message
string
Error message.
POST/transactions/{transaction_id}/collections
Create Collection
createCollection
Create Collection creates a collection of data points required for product invocation. A collection contains a digital representation of the input or output data for the product and is identified by collection_id.
The Example below contains a sample collection that you can use to make the product invocation in /get-collection
{
"message": "Unable to create collection. Please check the collection data"
}
text/html
Error
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
application/json
403 invalid error
{
"message": "Please check the key you used to call this service",
"url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Resource not found
{
"message": "Unable to create collection. Please check the transaction ID."
}
text/html
Resource not found
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
application/json
Internal server error
{
"message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Environment API Key.
transaction_idrequired
string (ulid)path
01F0KHK7DN3H5JZ4QJKMYAM6GB
Staircase Transaction Identifier
Request bodyapplication/json
2 fields
Field
Type
Description
data
object
—
people
object[]
—
@id
string
—
has_first_name
object
—
has_value
string
—
has_last_name
object
—
has_value
string
—
has_birth_date
object
—
has_value
string
—
has_taxpayer_identifier_value
object
—
has_value
string
—
with_address
string[]
—
contact_at
string[]
—
works_for
string[]
—
addresses
object[]
—
@id
string
—
@type
string
—
has_address_line_1_text
object
—
has_value
string
—
has_address_line_2_text
object
—
has_value
string
—
has_city_name
object
—
has_value
string
—
has_state_code
object
—
has_value
string
—
has_postal_code
object
—
has_value
string
—
has_country_name
object
—
has_value
string
—
contact_information
object[]
—
@id
string
—
@type
string
—
has_email_address
object
—
has_value
string
—
organizations
object[]
—
@id
string
—
@type
string
—
has_organization_name
object
—
has_value
string
—
metadata
object
Metadata of the collection
Response 201application/json
4 fields
Collection created successfully
Field
Type
Description
transaction_id
string (ulid)
Transaction idExample 01EZQ32PJQGKRA6HR8D72Q9FFF
collection_id
string (ulid)
Collection idExample 01EZQ32PJQGKRA6HR8D72Q9FFF
data
array
Collection data
metadata
object
Metadata about collection, f.e version of used Staircase schema
{
"message": "Please check the key you used to call this service",
"url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
Resource not found
{
"message": "Unable to get collection. Please check the given ids"
}
application/json
Resource not found
{
"message": "Unable to get collections of given transaction. Please check the transaction id"
}
application/json
Internal server error
{
"message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
You can invoke byte input adapters by using this endpoint. This endpoint takes customer_transaction_id from the partner. This should be the unique parameter to identify the loans. For input adapters, invocation responses are always transaction_id and collection_id. With using these two parameters, you can invoke the Staircase products. Adapters guarantee that the same transaction_id is used for each customer transaction_id. For each invocation adapters create transaction_id, request_collection_id and response_collection_id.
Supported Staircase Products Flows
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
invocation_idrequired
string (ulid)path
01FEK8V6RT027SRAW903G97DPF
Invocation ID
Response 201application/json
9 fields
Successfully started flow invocation.
Field
Type
Description
invocation_idrequired
string
Invocation ID.
invocation_statusrequired
string
The status of the invocation.COMPLETEDFAILEDRUNNINGSTARTED
transaction_idrequired
string
Transaction ID.
product_flow_name
string
Product flow name.
metadata
object
The metadata of the invoked product flow.
callback_url
string
Callback URL.
request_data
object
The data for the request collection.
tags
string[]
List of tags.
options
object
Additional information that should be passed to the connector but not be added to the request collection.
Output adapters are used to receive output from a technology partner and return it to the LOS or POS. When the technology partner completes a request, it sends the response to Staircase APIs. Staircase APIs translate and persist the response, then forward it to the LOS/POS.
Prerequisite
Set up Encompass credentials
Call Setup Encompass Credentials to store your Encompass credentials for adapters use.
Show the rest
Usage
You can send a request in two different ways:
Using request_data: If you provide this parameter, flow invocation would use the data here as input. If you also provide a transaction_id in the request body, Response Collection would be created in the related Transaction object. If you don't provide a transaction_id we will automatically create a Transaction for you and Response Collection would be created in this new Transaction as well.
Using transaction_id and request_collection_id: If you already have a request collection, you can provide its details using these two parameters. Note that in this case Response Collection would be created in the provided Transaction.
Retrieving the Invocation Result
After invocation, endpoint returns an invocation_id which you can poll for its status using Retrieve Invocation Response endpoint. Once the invocation is completed, the Response Collection is populated with these search results.
If you would rather receive a callback once the invocation is completed instead of polling it, you can set callback_url parameter in the request body.
Supported Staircase Products Flows
preapproval
employment
document classification
fees
Encompass Preapproval Output Adapter
Encompass Preapproval Output Adapter takes staircase collection as an input and converts it to encompass loan object.
In examples, you can find sample data that you can use to create a loan.
When the process is completed successfully, the adapter will create the loan under the "pipeline" loan folder.
In response collection data, you will find loan identifier and loan case number.
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
invocation_idrequired
string (ulid)path
01FEK8V6RT027SRAW903G97DPF
Invocation ID
Response 201application/json
9 fields
Successfully started flow invocation.
Field
Type
Description
invocation_idrequired
string
Invocation ID.
invocation_statusrequired
string
The status of the invocation.COMPLETEDFAILEDRUNNINGSTARTED
transaction_idrequired
string
Transaction ID.
product_flow_name
string
Product flow name.
metadata
object
The metadata of the invoked product flow.
callback_url
string
Callback URL.
request_data
object
The data for the request collection.
tags
string[]
List of tags.
options
object
Additional information that should be passed to the connector but not be added to the request collection.
This is a product component invocation endpoint. You can use service application features with this endpoint. What you need to do is provide an input to the invocation with request_data and specify the feature of the product component with product_flow_name that you want to use.
This product component has two different flows. You can get detailed information about the services provided by staircase in EPC with get_services, or with process_transaction, you can process your EPC transaction with the staircase product of your choice and inject your processed data into Encompass.
Show the rest
After you invoke product component, product will create transaction, and request-response collections from the request_data you provided.
Staircase Glossary
Transaction:
What is a transaction?
When do I create a transaction?
Collection:
What is a collection?
Retrieving the Invocation Result
After invocation, endpoint returns an invocation_id which you can poll for its status using Retrieve Invocation Response endpoint. Once the invocation is completed, the Response Collection is populated with these search results.
If you would rather receive a callback once the invocation is completed instead of polling it, you can set callback_url parameter in the request body.
How Callbacks are working?
callback_url is used by the product to send a callback, when the flow invocation status changes, including changes in status of underlying services invocation.
Invocation data is included throughout the invocation. Either response payload or failure reason is sent when invocation completed/failed.
How you can validate the callback messages?
Each work unit (invocation) is represented with three distinct ID.
Transaction
Request Collection ID
Response Collection ID
Combination of these three id can be used for validating callback messages related with invocation. You will retrieve these ids in the request body of callback payload.
You can find the callback sample messages response examples.
Process Transaction
! Prerequisite (Setup EPC Credentials): If you want to use Staircase credentials by default, you don't need to do anything. But if you want to use Staircase LOS Adapter as your EPC Integration backend, you need to set your EPC credentials
Process Transaction flow allows you to process Encompass EPC transactions. Flow is doing following items after during invocation:
Extracts transaction data.
Converts transaction data to Staircase Lexicon.
Invokes the Staircase product
After the invocation is completed, the results are sent to Encompass and the transaction is complete.
How to create EPC transaction with using Encompass Partner JS API
! When creating a transaction with the Encompass Partner JS API, you should add three important information to request.options.
applicationId: Application ID field
borrowerType: Type of borrower (borrower or coborrower)
employmentId: Employment ID field
updateLoan: Flag for service application to update the loan after verification
uploadStaircaseReport: Flag for service application to upload the verification report generated by Staircase
uploadPartnerReport: Flag for service application to upload the verification report generated by the partner (if exists)
Check EPC Transaction Management Developer Guide to create transaction
Check below code to create EPC Transaction with Encompass Partner JS API
! A single verification can be triggered with a single invocation.
Working with webhooks
If you are using the EPC webhook integration, you will get an event like below when you create the transaction. If you want to process the transaction in Staircase Service Application, you can find the epc transaction in the $.meta.resourceId path in the incoming message.
Updated entitlements after successful application run
Verification of Employment
Start Date
End Date
Start Date
Position Description
Verification of Income
Base Pay Amount
Overtime Amount
Bonus Amount
Commissions Amount
Verification of Asset (VoD)
Holder Name
Type
Account Identifier
Cash Or Market Value Amount
Depository Account Name
Get Services
It provides the partner services and details that Staircase offers within the encompass system.
Please check the links below to get detailed information about Staircase Encompass EPC Integration
See how Staircase verification APIs can be embedded within Encompass to aggregate data from multiple best-in-class partners, to fully over all data needed to underwrite
Staircase APIs/Encompass Integration Use Case
How to configure and call Staircase services in Encompass
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Request bodyapplication/json
4 fields
Field
Type
Description
request_data
object
Empty Object
organizations
object[]
Organizations Array
@type
string
Organization's Typecustomer
@id
string
Object's ID
has_transaction_identifier
object
EPC Transaction ID
has_value
string
Value
staircase_products
object[]
Staircase Product Array. You can select only one target product for the process transaction flow. Transaction process allows only one transaction at a time. If you want to trigger another invocation, you can change the target product and invoke it again.
@type
string
Product Type
@id
string
Object's ID
has_product_name
object
The business name of a product, which is a provider defined offering of goods or services, including mortgage loans.
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
invocation_idrequired
string (ulid)path
01FEK8V6RT027SRAW903G97DPF
Invocation ID
Response 201application/json
9 fields
Successfully started flow invocation.
Field
Type
Description
invocation_idrequired
string
Invocation ID.
invocation_statusrequired
string
The status of the invocation.COMPLETEDFAILEDRUNNINGSTARTED
transaction_idrequired
string
Transaction ID.
product_flow_name
string
Product flow name.
metadata
object
The metadata of the invoked product flow.
callback_url
string
Callback URL.
request_data
object
The data for the request collection.
tags
string[]
List of tags.
options
object
Additional information that should be passed to the connector but not be added to the request collection.
Process Automation Adapters are RPA (Robotic Process Automation) system that emulate humans actions interacting with Encompass systems. Process Automation service can interact with system the same way people do
Prerequisite
Set up Encompass credentials
Call Setup Encompass Credentials to store your Encompass credentials for adapters use.
Staircase Encompass Services
The services we currently support are as follows. You can check the Service Application to get the collection of these services defined in the staircase lexicon.
Show the rest
Staircase Employment Verification
Staircase Income Verification
Staircase Asset Verification
How to Use
Setup Staircase Service
It creates requested Staircase service if it's not created before and changes service credentials so that it works with the current environment.
RPA system goes under the menu Admin > Company/User Setup
Opens Service Management
If the service sent in the request is not in the list, it adds this service first.
Then, it completes the installation process by injecting the credentials you added with the setup service.
Important notice: You can set up only one service at a time with this product flow!
Create Loan
It creates loan on the Encompass system with the provided information.
Order Verification
It orders a verification of a selected Staircase service for the given loan number.
Setup Staircase Service must be called for the service before ordering a verification.
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
application/json
The product has encountered an internal server error
{
"message": "The product has encountered an internal server error"
}
Parameters
1
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
Request bodyapplication/json
3 fields
Field
Type
Description
transaction_id
string
Staircase Transaction ID used for invocation
request_data
object
Empty Object
people
object[]
Person Array
@type
string
Person's Typeborrower
has_first_name
object
Borrower's First Name
has_value
string
Value
has_last_name
object
Borrower's Last Name
has_value
string
Value
has_birth_date
object
Borrower's Birthday
has_value
string
Value
has_taxpayer_identifier_value
object
Borrower's Taxpayer Identifier Value (SSN)
has_value
string
Value
with_address
object[]
Borrower's Address Array
@type
string
Object Typeaddress
has_address_line_1_text
object
Address Line 1
has_city_name
object
City
has_state_code
object
State Code
has_postal_code
object
Postal Code
has_country_name
object
Country Name
contact_at
object[]
Contact Information Array
@type
string
Object Typecontact_information
has_email_address
object
Email Address
has_phone_number
object
Phone Number
works_for
object[]
Employment Information Array
@type
string
Object Typeorganization
has_organization_name
object
Organization Name
services
object[]
Services Array
has_service_name
object
Name of the service to be used in Encompass automation
{
"message": "{'data': ['Missing data for required field.']}"
}
application/json
Invalid key for service
{
"message": "Please check the key you used to call this service",
"url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
Parameters
2
Parameter
Type
Example
Description
x-api-keyrequired
stringheader
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Staircase Environment API Key
invocation_idrequired
string (ulid)path
01FEK8V6RT027SRAW903G97DPF
Invocation ID
Response 201application/json
7 fields
Successfully started flow invocation.
Field
Type
Description
invocation_idrequired
string
Invocation ID.
invocation_statusrequired
string
The status of the invocation.COMPLETEDFAILEDRUNNINGSTARTED