Download OpenAPI specification:
This API provides functionality to create and manage loans on the FinanceIt platform. It is hosted at: https://www.financeit.ca/en/api/v3
A sandbox for testing this API is hosted at https://training.financeit.ca/en/api/v3
Authorization Code Flow: This flow involves redirecting the user to our authorization endpoint to grant access, then exchanging an authorization code for an access token to act on the user's behalf. It allows our application to associate an end user with the token and is preferred and/or required for more sensitive endpoints.
Client credentials flow: This flow allows a client application to authenticate and obtain access tokens on its own behalf, without involving the end user.
The appropriate flow to implement depends on whether your application is serving a single merchant or a broker with multiple merchants, and the API endpoints you require access to. See the below table for a breakdown of available actions in different scenarios:
Authorization Flow | Client Type | Calculator | Direct Invites | Loans | Partners | Single Access Links |
---|---|---|---|---|---|---|
Authorization Code | Any | Yes | Yes | Yes | Yes | Yes |
Client Credentials | Individual Merchant | Yes | Yes | Yes | N/A | No |
Client Credentials | Broker or Multi-location | Yes | Yes | No | No | No |
/accounts/create_user_oauth_token
along with either a login and password for a user or an option indicating that the token is for an anonymous user.If an API call fails, the response will contain an "errors" field which points to a list of error strings.
For client credentials/password flow only
Obtain an access token
login | string Required unless anonymous_user is true |
password | string Required unless anonymous_user is true |
app_id required | string Must be obtained from Financeit |
app_secret required | string Must be obtained from Financeit |
anonymous_user | boolean If set, login and password don't need to be sent. The returned token will be for an anonymous user who can perform only a small subset of API actions such as partner create or promo_programs index. |
{- "login": "mylogin",
- "password": "mypassword",
- "app_id": "valid_app_id",
- "app_secret": "valid_app_secret"
}
{- "access_token": "f1a9f8da8ab53d3b0ef4caf9ebbe5c77eff91dbe3c674f9cfbc260ae1e8f4c60",
- "user_id": 12345,
- "user_type": "Partner"
}
Request list of partners belonging to user.
Responds with array of partner hashes that belong to distributor, broker, multi location business, or lender
[- {
- "id": "12345",
- "login": "tv_shack",
- "email": "mike@tvshack.com",
- "firm_name": "TV Shack Inc.",
- "state": "approved",
- "verticals": [
- "Retail"
], - "organization_type": "corporation",
- "firm_address": "123 Firm St.",
- "firm_address_2": "Firm Two",
- "firm_city": "Toronto",
- "firm_postal_code": "M4M4M4",
- "firm_number_years_in_business": "10",
- "firm_annual_sales_volume": "1M_to_5M",
- "address": "123 Main St.",
- "address_2": "Main Two",
- "unit_number": "100",
- "city": "Toronto",
- "province": "ON",
- "contact_first_name": "Mike",
- "contact_last_name": "Smith",
- "contact_position": "owner",
- "contact_date_of_birth_year": "1960",
- "contact_date_of_birth_month": "1",
- "contact_date_of_birth_day": "15",
- "contact_region_id": "8",
- "contact_postal_code": "M5S3G2",
- "referral_uuid": "1A2A3A",
- "work_phone_1i": "416",
- "work_phone_2i": "555",
- "work_phone_3i": "1234",
- "work_phone_4i": "400",
- "home_phone_1i": "410",
- "home_phone_2i": "550",
- "home_phone_3i": "1230",
- "home_phone_4i": "400",
- "firm_current_percent_financed": "0"
}
]
Responds with the requested partner.
id required | integer <int64> Example: 12345 ID of partner to return |
{- "id": "12345",
- "login": "tv_shack",
- "email": "mike@tvshack.com",
- "firm_name": "TV Shack Inc.",
- "state": "approved",
- "verticals": [
- "Retail"
], - "organization_type": "corporation",
- "firm_address": "123 Firm St.",
- "firm_address_2": "Firm Two",
- "firm_city": "Toronto",
- "firm_postal_code": "M4M4M4",
- "firm_number_years_in_business": "10",
- "firm_annual_sales_volume": "1M_to_5M",
- "address": "123 Main St.",
- "address_2": "Main Two",
- "unit_number": "100",
- "city": "Toronto",
- "province": "ON",
- "contact_first_name": "Mike",
- "contact_last_name": "Smith",
- "contact_position": "owner",
- "contact_date_of_birth_year": "1960",
- "contact_date_of_birth_month": "1",
- "contact_date_of_birth_day": "15",
- "contact_region_id": "8",
- "contact_postal_code": "M5S3G2",
- "referral_uuid": "1A2A3A",
- "work_phone_1i": "416",
- "work_phone_2i": "555",
- "work_phone_3i": "1234",
- "work_phone_4i": "400",
- "home_phone_1i": "410",
- "home_phone_2i": "550",
- "home_phone_3i": "1230",
- "home_phone_4i": "400",
- "firm_current_percent_financed": "0"
}
id required | integer <int64> Example: 12345 ID of partner to return |
earned_start_date | string Example: earned_start_date=2013-01-01 The start date for calculating commissions earned. Must have format 'YYYY-MM-DD'. If blank will return all commissions earned. |
earned_end_date | string Example: earned_end_date=2013-01-01 The end date for calculating commissions earned. Must have format 'YYYY-MM-DD'. If blank will return all commissions earned. |
{- "earned": "2000.50",
- "outstanding": "1500.00"
}
requested_amount required | number Examples:
Amount for the loan request. |
vertical_name | string Enum: "Home Improvement" "Retail" "Power" "Marine" "Recreational Vehicle" Required if authenticated as an anonymous user or a partner with multiple verticals. |
region_code | string Enum: "AB" "BC" "MB" "NB" "NL" "NS" "NT" "NU" "ON" "PE" "QC" "SK" "YT" Two letter uppercase code of the province. Required if insurance is set and authenticated as an anonymous user. |
payment_frequency | string Default: "m" Enum: "m" "f" "w" Payment frequency. Either 'm' (monthly, default), 'f' (biweekly), or 'w' (weekly). |
fee_paid_by | string Enum: "borrower" "partner" Either 'borrower' or 'partner'. Defaults to partner's account setting (authenticated as partner) or 'borrower' (authenticated as anonymous user) |
insurance | string Default: "no" Enum: "yes" "no" Whether or not the borrower wants payment protection. Either 'no' (default) or 'yes'. If authenticated as an anonymous user, region_code must also be set. |
promo_program_id | integer ID of promo program for the loan. 0 for free program. See PromoPrograms resource |
amortization | integer Examples:
The loan amortization period in months. See PromoPrograms resource for available amortization periods. Will default to the highest possible amortization for a given promo program |
partner_id | integer Needed if logged in as a broker, distributor or multi location business employee and you want to get back an application_link |
work_site_quebec | string Default: "no" Enum: "yes" "no" If the work site is in Quebec this is used to retrieve Quebec rates. Either 'yes' or 'no' (default) |
{- "results": [
- {
- "credit_type": "standard",
- "rate": 7.99,
- "borrower_fee": 100,
- "total_interest": 1295.12,
- "amortization": 180,
- "term": 60,
- "payment_per_interval": 316.45,
- "payment_frequency": "m",
- "buydown_payment_amount": 214.21,
- "buydown_duration": 24,
- "buydown_rate": 2.99
}, - {
- "credit_type": "extended",
- "rate": 12.99,
- "borrower_fee": 100,
- "total_interest": 2154.77,
- "amortization": 180,
- "term": 60,
- "payment_per_interval": 340.45,
- "payment_frequency": "m",
- "buydown_payment_amount": 214.21,
- "buydown_duration": 24,
- "buydown_rate": 2.99
}
],
}
Sends a direct application link to the customer via email or SMS.
partner_id | integer Required if logged in as a broker or multi-location business employee. |
vertical_name | string Enum: "Home Improvement" "Retail" "Power" "Marine" "Recreational Vehicle" Required if the partner has multiple verticals. |
promo_program_id required | integer ID of promo program for the loan. 0 for free program. |
send_via required | string Enum: "email" "sms" "none" "centah" Method of sending the application link. |
mobile_number | string Required if |
string Required if | |
first_name | string Customer's first name. |
last_name | string Customer's last name. |
language | string Enum: "en" "fr" Language preference. Defaults to English. |
requested_amount | number Purchase amount. No dollar sign or commas. |
amortization | number Loan amortization length. Required if |
use_max_amortization | boolean Whether or not to default to the maximum possible amortization. |
payment_frequency | string Enum: "m" "f" "w" Payment frequency. 'm' (monthly), 'f' (biweekly), or 'w' (weekly). |
message | string Message included in the email if |
object Additional parameters passed as key-value pairs. lead_id
redirect_url
|
{- "requested_amount": 5000,
- "language": "en",
- "partner_id": "1",
- "promo_program_id": "0",
- "email": "fluffy@fluffydog.com",
- "send_via": "email",
- "first_name": "John",
- "last_name": "Smith",
- "custom_params": {
- "lead_id": 100,
- "borrower": {
- "street_address": "289 Richmond St W",
- "unit_number": "5",
- "city": "Toronto",
- "province": "ON",
- "postal_code": "1A2 B3C"
}
}
}
{- "delivered": "true",
}
Retrieves loans belonging to the authenticated user, with filtering options.
Sorted by most recent first.
start | string <date> Default: "2011-01-01" Example: start=2013-01-01 The start date for the search in 'YYYY-MM-DD' format. |
end | string <date> Default: "{today}" Example: end=2013-01-31 The end date for the search in 'YYYY-MM-DD' format. |
state | string Default: "active" Enum: "all" "active" "pending_or_disbursed" "pending" "ready_for_funding" "disbursed_or_closed" "declined" "aborted" Filter loans by state. |
partner | integer Example: partner=1 Filter loans by partner ID, used if user is a broker or multi-location business employee. |
limit | integer Default: 20 Maximum number of loans to return. Default is 20. |
page | integer Default: 1 Defines which "page" of loans to return. For example, if the query would return 15 loans and limit is set to 10, setting page to '1' will return the first 10 loans and setting page to '2' will return the final 5 loans. Default is 1. |
[- {
- "id": 12345,
- "partner_id": 632,
- "description": "Home renovations for first two floors",
- "created_at": "2012-10-02 17:05:11 UTC",
- "rate": "12.99",
- "requested_amount": "1234.0",
- "fee": "99.0",
- "principal_amount": "1460.78",
- "amortization": 36,
- "term": 36,
- "payment_frequency": "m",
- "vertical": "Vehicle",
- "total_payment_amount": "53.14",
- "first_payment_date": "2012-10-13",
- "downpayment_amount": "500",
- "downpayment_source": "cash",
- "intended_use": "Vehicle",
- "vehicle_type": "Car",
- "state": "Car",
- "coborrower_relation": "spouse",
- "coborrower_relation_other": "",
- "max_amount": 40000,
- "min_amount": 1000,
- "credit_limit": "30000",
- "max_amort": 108,
- "api_notices": [
- "string"
], - "lead_id": 123,
- "expiry_date": "2025-10-5",
- "commission_insurance_amount": "100.0",
- "promo_program": {
- "id": "5",
- "program_name": "No Payments",
- "cost_as_percentage_of_loan": "3.25",
- "duration": 12,
- "rate": 0,
- "total_subvented_payment_amount": 0
}, - "insurance_premium": {
- "total": "110.28",
- "declined": false
}, - "vehicle": {
- "make": "The make",
- "model": "The model",
- "year": "2003",
- "vin": "1234567890asdfghj",
- "serial_number": "null",
- "vehicle_type": "Car",
- "kilometres": "100000"
}, - "vehicles": [
- {
- "make": "The make",
- "model": "The model",
- "year": "2003",
- "vin": "1234567890asdfghj",
- "serial_number": "",
- "vehicle_type": "ATV"
}
], - "file_attachments": [
- {
- "category": "document-loan agreement",
- "file_file_name": "loan_agreement_1.pdf"
}
], - "approval_conditions": [
- "string"
], - "funded": false,
- "next_step_in_application": "Complete Financeit Checklist"
}
]
Retrieves detailed information about a specific loan by its ID.
id required | integer |
{- "id": 12345,
- "partner_id": 632,
- "description": "Home renovations for first two floors",
- "created_at": "2012-10-02 17:05:11 UTC",
- "rate": "12.99",
- "requested_amount": "1234.0",
- "fee": "99.0",
- "principal_amount": "1460.78",
- "amortization": 36,
- "term": 36,
- "payment_frequency": "m",
- "vertical": "Vehicle",
- "total_payment_amount": "53.14",
- "first_payment_date": "2012-10-13",
- "downpayment_amount": "500",
- "downpayment_source": "cash",
- "intended_use": "Vehicle",
- "vehicle_type": "Car",
- "state": "Car",
- "coborrower_relation": "spouse",
- "coborrower_relation_other": "",
- "max_amount": 40000,
- "min_amount": 1000,
- "credit_limit": "30000",
- "max_amort": 108,
- "api_notices": [
- "string"
], - "lead_id": 123,
- "expiry_date": "2025-10-5",
- "commission_insurance_amount": "100.0",
- "promo_program": {
- "id": "5",
- "program_name": "No Payments",
- "cost_as_percentage_of_loan": "3.25",
- "duration": 12,
- "rate": 0,
- "total_subvented_payment_amount": 0
}, - "insurance_premium": {
- "total": "110.28",
- "declined": false
}, - "vehicle": {
- "make": "The make",
- "model": "The model",
- "year": "2003",
- "vin": "1234567890asdfghj",
- "serial_number": "null",
- "vehicle_type": "Car",
- "kilometres": "100000"
}, - "vehicles": [
- {
- "make": "The make",
- "model": "The model",
- "year": "2003",
- "vin": "1234567890asdfghj",
- "serial_number": "",
- "vehicle_type": "ATV"
}
], - "file_attachments": [
- {
- "category": "document-loan agreement",
- "file_file_name": "loan_agreement_1.pdf"
}
], - "approval_conditions": [
- "string"
], - "funded": false,
- "next_step_in_application": "Complete Financeit Checklist"
}
Retrieves the loan ID associated with a given lead ID.
lead_id required | integer Example: lead_id=12345 The ID of the lead. |
partner_id | integer Example: partner_id=789 The ID of the partner connected to the lead ID. Required if logged in as a broker, distributor, or multi-location business employee. |
{- "id": 67890
}
Retrieves available promo programs and their amortization periods. This endpoint can be accessed using an anonymous user's access token.
vertical_name | string Enum: "Home Improvement" "Retail" "Power" "Marine" "Recreational Vehicle" Example: vertical_name=Home Improvement Required if authenticated as an anonymous user or a partner with multiple verticals. |
partner_id | integer Required if logged in as a broker or multi-location business employee. |
loan_id | integer Loan ID to base the response on. |
{- "promo_programs": [
- {
- "id": "0",
- "name": "Free Program",
- "rate": 0.1299,
- "amortizations": [
- 12,
- 24,
- 36,
- 48,
- 60,
- 72,
- 84,
- 96,
- 108,
- 120,
- 132,
- 144,
- 156,
- 168,
- 180
], - "type": "StandardProgram",
- "provinces": [
- "ON",
- "AB"
]
}, - {
- "id": "32",
- "name": "3 Months No Payments",
- "rate": 0,
- "amortizations": [
- 12,
- 24,
- 36,
- 48,
- 60,
- 72,
- 84,
- 96,
- 108,
- 120,
- 132,
- 144,
- 156,
- 168,
- 180
], - "type": "NoPayments",
- "provinces": [
- "QC"
]
}, - {
- "id": "1",
- "name": "6 Months No Payments",
- "rate": 0,
- "amortizations": [
- 12,
- 24,
- 36,
- 48,
- 60,
- 72,
- 84,
- 96,
- 108,
- 120,
- 132,
- 144,
- 156,
- 168,
- 180
], - "type": "NoPayments",
- "provinces": [
- "ON",
- "AB"
]
}, - {
- "id": "37",
- "name": "12 Months No Payments",
- "rate": 0,
- "amortizations": [
- 24,
- 36,
- 48,
- 60,
- 72,
- 84,
- 96,
- 108,
- 120,
- 132,
- 144,
- 156,
- 168,
- 180
], - "type": "NoPayments",
- "provinces": [
- "ON",
- "AB"
]
}, - {
- "id": "2",
- "name": "12 Months Equal Payments",
- "rate": 0,
- "amortizations": [
- 12
], - "type": "SameAsCash",
- "provinces": [
- "ON",
- "AB"
]
}, - {
- "id": "38",
- "name": "18 Months Equal Payments",
- "rate": 0,
- "amortizations": [
- 18
], - "type": "SameAsCash",
- "provinces": [
- "ON",
- "AB"
]
}, - {
- "id": "48",
- "name": "24 Months Equal Payments",
- "rate": 0,
- "amortizations": [
- 24
], - "type": "SameAsCash",
- "provinces": [
- "ON",
- "AB"
]
}
]
}
Retrieves available subverticals and their product types.
This endpoint can be accessed using an anonymous user's access token.
vertical_name | string Enum: "Home Improvement" "Retail" "Power" "Marine" "Recreational Vehicle" Example: vertical_name=Home Improvement Required if authenticated as an anonymous user or a partner with multiple verticals. |
partner_id | integer Required if logged in as a broker or multi-location business employee. |
{- "subverticals": [
- {
- "name": "heating_cooling_and_water",
- "id": 1,
- "product_types": [
- {
- "name": "air_conditioner",
- "id": 1
}, - {
- "name": "air_filtration_purification",
- "id": 2
}, - {
- "name": "furnace",
- "id": 3
}, - {
- "name": "fireplace",
- "id": 4
}, - {
- "name": "boiler_replacement",
- "id": 5
}, - {
- "name": "water_heater",
- "id": 6
}, - {
- "name": "water_softening",
- "id": 7
}, - {
- "name": "water_filtration_purification",
- "id": 8
}, - {
- "name": "other",
- "id": 9
}
]
}, - {
- "name": "pool_and_spa",
- "id": 2,
- "product_types": [
- {
- "name": "hot_tub",
- "id": 101
}, - {
- "name": "swim_spa",
- "id": 102
}, - {
- "name": "in_ground_pool",
- "id": 103
}, - {
- "name": "above_ground_pool",
- "id": 104
}, - {
- "name": "pool_repair_and_renovation",
- "id": 105
}, - {
- "name": "pool_equipment",
- "id": 106
}, - {
- "name": "sauna",
- "id": 107
}, - {
- "name": "other",
- "id": 108
}
]
}, - {
- "name": "interior_improvement",
- "id": 3,
- "product_types": [
- {
- "name": "electrical",
- "id": 201
}, - {
- "name": "flooring",
- "id": 202
}, - {
- "name": "painting",
- "id": 203
}, - {
- "name": "plumbing",
- "id": 204
}, - {
- "name": "kitchen_renovation",
- "id": 205
}, - {
- "name": "bathroom_renovation",
- "id": 206
}, - {
- "name": "basement_renovation",
- "id": 207
}, - {
- "name": "living_space_renovation",
- "id": 208
}, - {
- "name": "staircase_remodel",
- "id": 209
}, - {
- "name": "insulation",
- "id": 210
}, - {
- "name": "window_fashions",
- "id": 211
}, - {
- "name": "other",
- "id": 212
}
]
}, - {
- "name": "exterior_improvement",
- "id": 4,
- "product_types": [
- {
- "name": "windows_and_doors",
- "id": 301
}, - {
- "name": "roofing",
- "id": 302
}, - {
- "name": "eavestroughs_and_gutters",
- "id": 303
}, - {
- "name": "garages",
- "id": 304
}, - {
- "name": "siding_panelling",
- "id": 305
}, - {
- "name": "landscaping",
- "id": 306
}, - {
- "name": "deck_and_fence",
- "id": 307
}, - {
- "name": "home_addition",
- "id": 308
}, - {
- "name": "solar",
- "id": 309
}, - {
- "name": "other",
- "id": 310
}
]
}, - {
- "name": "retail",
- "id": 5,
- "product_types": [
- {
- "name": "indoor_products",
- "id": 401
}, - {
- "name": "outdoor_products",
- "id": 402
}, - {
- "name": "sporting_goods_and_recreation",
- "id": 403
}, - {
- "name": "service_and_repair",
- "id": 404
}, - {
- "name": "electronic_goods",
- "id": 405
}, - {
- "name": "security_systems",
- "id": 406
}, - {
- "name": "outbuildings_sheds",
- "id": 407
}, - {
- "name": "other",
- "id": 408
}
]
}
]
}
loan_id required | integer ID of the loan |
{- "loan_id": 12345
}
partner_id | integer ID of the partner (required if logged in as a broker, distributor, or multi-location business employee) |
lead_id required | integer ID of the lead |
string email of the partner employee associated to the customized link. | |
object custom parameters for the loan quotation | |
object Hash containing details for borrower who will apply for loan using this link | |
Array of objects Array of Hashes indicating all individuals who should recieve an email about loans created using this link |
{- "lead_id": 12345,
- "partner_id": 768,
- "custom_params": {
- "quote_defaults": {
- "amortization": 108,
- "amount": 20000,
- "fee_paid_by": "partner",
- "payment_frequency": "f",
- "quebec": false,
- "use_max_amortization": true,
- "promo_program_id": 25,
- "vertical_id": 1
}
}, - "borrower": {
- "first_name": "John",
- "last_name": "Doe",
- "email": "hello@example.com",
- "address": "289 Richmond St W",
- "unit_number": "5",
- "city": "Toronto",
- "province": "ON",
- "postal_code": "1A2 B3C",
- "phone_number": "1234567890"
}, - "contacts": [
- {
- "email": "valid@example.com",
- "first_name": "John",
- "last_name": "Doe"
}
]
}