Overview
Financing Integration Guide
Slate allows you to surface pre-qualified financing offers directly inside your product. Businesses are evaluated automatically, and approved offers are displayed via an embeddable banner.
This guide walks you through the full integration flow — from registering businesses to embedding financing offers and monitoring financing agreements.
How It Works
- Send business data — Share your customer's business information and revenue data with Slate
- Automatic evaluation — Slate evaluates businesses and generates pre-approval offers
- Create session token — Generate a secure token on your backend for each business
- Display offers — Embed Slate's script in your frontend to show financing banners
- Customer application — Users click the banner and complete their application on Slate's hosted page
- Financing agreement — Approved applications result in financing agreements, with webhook notifications sent to your system
Integration Steps
Step 1 — Create a Business
First, register each business in Slate's system. Use your own stable identifier as the externalId to easily reference the business later.
POST https://api.tryslatehq.com/businesses
Request:
{
"externalId": "biz_123",
"legalName": "Acme Corp",
"dba": "Acme",
"website": "https://acme.com",
"type": "PARTNERSHIP",
"address": {
"address1": "123 Main St",
"address2": null,
"city": "San Francisco",
"postalCode": "94105",
"country": "US",
"state": "AL"
},
"contact": {
"fullName": "John Doe",
"email": "john@acme.com",
"phone": "+15551234567"
}
}
Step 2 — Attach Financial Data
Provide financial information to enable Slate to evaluate the business for pre-approval. You can submit data in two formats:
POST https://api.tryslatehq.com/businesses/{id}/attach-financial-data
Request:
{
"externalId": "biz_123",
"timeseries": [
{
"date": "2025-01-01",
"data" {
"propertyName*": "anything"
}
}
]
}
Step 3 — Create a User Session Token
Generate a secure session token on your backend for each business that will view financing offers. This token authenticates the embedded banner.
POST https://api.tryslatehq.com/user-sessions
Request:
{
"externalId": "biz_123"
}
Response:
{
"token": "ust_a1b2c3d4e5f6g7h8i9j0"
}
⚠️ Important
Generate this token server-side to protect your API key. Never expose your API key in frontend code.
Step 4 — Embed the Financing Banner
Add Slate's script to your frontend and pass the session token. The banner will automatically appear if the business has an active pre-approval.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Your Application</title>
</head>
<body>
<div id="slate-pre-approval-banner"></div>
<script
src="https://integrations.tryslatehq.com/pre-approval-banner.js"
data-user-token="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
data-target-id="slate-pre-approval-banner"
></script>
</body>
</html>
⚠️ Important
The sandbox URL for testing is https://integrations-sandbox.tryslatehq.com/pre-approval-banner.js
Behavior:
- If the business has an ACTIVE pre-approval, the banner displays the offer details
- If no pre-approval exists, nothing is rendered
- Clicking the banner opens Slate's application flow in a new window or modal
Step 5 — Access Financing Agreements
Once an application is approved, retrieve the financing agreement details:
GET https://api.tryslatehq.com/financing-agreements?externalId=biz_123
Response:
{
"data": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"businessId": "123e4567-e89b-12d3-a456-426614174000",
"type": "fixed_mca",
"fixedMCA": {
"paybackAmount": 12000,
"factorRate": 1.2
},
"fundedAmount": 10000,
"fundedDate": "2025-01-01T00:00:00Z",
"currency": "CAD",
"firstPaymentDate": "2025-02-01T00:00:00Z",
"estimatedLastPaymentDate": "2026-01-01T00:00:00Z",
"status": "IN_PROGRESS",
"term": 12,
"termUnit": "month",
"repaymentFrequency": 1,
"repaymentFrequencyUnit": "month",
"remainingBalance": 12000,
"totalPaid": 0,
"createdAt": "2025-01-01T00:00:00Z",
"updatedAt": "2025-01-01T00:00:00Z"
}
],
"page": 1,
"limit": 1,
"total": 1,
"totalPages": 1
}
Webhook notifications
Slate will notify you of important events via webhooks. You will be able to configure your endpoints ant the suscribed events in the dashboard.
Common events:
- Created business
- Application created
- Application submitted
- Financing agreement created
- Financing agreement payment received
Testing
For testing your integration sign up to the sandbox.
- In the sandbox environment pre-approvals are created automatically when you upload financial data for a business.
- The sandbox is a completely isolated environment so webhooks, branding and any other configurations are not automatically applied to live environment.
- Base URL's for API an scripts are different between live and sandbox.
Best practices
Keep business data current — Update business information and revenue data regularly to ensure accurate pre-approvals.
Handle missing offers gracefully — The banner won't render if there's no active pre-approval. Design your UI to work with or without the financing offer.
Test thoroughly — Verify the integration in your staging environment before going live.