Invoice financing

Available in: 🇺🇸 US

Overview

Invoice financing refers to a form of short-term borrowing in which a business borrows money against the amount due on invoices it issued to its customers. Invoice financing helps businesses improve cash flow, pay employees and suppliers, and reinvest in operations and growth earlier than they could if they had to wait until their customers paid their balances in full.

Monite has partnered with Kanmon to offer embedded invoice financing as part of Monite API and React SDK. This integration, in turn, enables our partners to provide invoice financing functionality to their US customers.

Contact us

Contact your Monite account manager or schedule a demo to learn more about invoice financing integration.

Requirements

  • Only US entities can enroll into invoice financing.
  • Only invoices in the issued and partially_paid statuses can be financed.
  • Invoice due date must be at least 7 days from the current date.

Integration options

SDK components

Monite React SDK includes the following components that you can use to embed invoice financing functionality into your applications:

  • FinanceBanner - A banner displayed at the top of the Receivables and ReceivablesTable components that allows users to apply for invoice financing.
  • FinanceInvoice - A banner that provides an entry point for financing an invoice and handles the financing flow.
  • FinanceTab - Contains the finance widget and the financed invoices table. This component is also embedded as a built-in tab labelled “My Financing” inside the Receivables and ReceivablesTable components.
    • FinanceWidget - Conbines the FinanceLimits and FinanceOffers components.
      • FinanceLimits - A card that displays the entity’s financing limit.
      • FinanceOffers - A card that displays available invoice financing offers.
    • FinancedInvoicesTable - a table that displays the list of financed invoices, the amount requested for financing, and the financing status of each invoice.
  • Integrations - a page that displays available integrations. Currently displays only the FinanceApplicationCard component.
    • FinanceApplicationCard - Apply for invoice financing from the Integrations page.

API endpoints

While the onboarding flow for financing is currently available only in Monite React SDK, the rest of invoice financing functionality can also be implemented by using Monite API directly. The relevant endpoints are:

Entity onboarding

Before invoices can be financed, the entity must enroll into financing, receive an offer, and accept it. This onboarding process is currently available only in Monite React SDK.

The SDK provides several entry points to onboarding:

  • standalone banner component FinanceBanner that you can place anywhere in your app,
  • the banner at the top of the Receivables component,
  • the “Invoice financing” card displayed by the Integrations component.
Financing banners are rendered only if the current entity is from the US.
Invoice financing banner with onboarding CTA inside the Receivables component

The entity user who onboards to financing is assumed to be an authorized business representative with signing authority.

During the onboarding process, the user is prompted to provide business information about the entity, a list of business owners, and to connect a bank account where the loan funds will be deposited. Plaid Link is used to verify the bank account. The onboarding screens are pre-populated with existing entity data already stored in Monite.

A screen from the invoice financing onboarding flow

At the end of onboarding, the user is presented with the available financing offers, including credit limits, loan terms and fees. To accept an offer, the user then signs the loan agreement.

Financing plan summary

Financing an invoice

You can use the FinanceInvoice component to provide users with an entry point for financing an individual invoice. If the specified invoice object meets financing requirements, the FinanceInvoice component displays a banner indicating that financing is available for this invoice.

1import { FinanceInvoice } from "@monite/sdk-react";
2...
3// TODO: This component must be rendered within the MoniteProvider wrapper
4const InvoiceFinancingPage = () => {
5
6 // Object returned in the response from `GET /receivables/{receivable_id}`
7 const invoice = {
8 id: "7721bd70-f33f-4984-82ef-4ad27efb3b20",
9 ...
10 }
11
12 return (
13 <FinanceInvoice
14 invoice={invoice}
15 />
16 );
17};
If you use the InvoiceDetails component to display invoice details, it already has the FinanceInvoice banner embedded.
FinanceInvoice banner component used in the InvoiceDetails component

Clicking Get paid now in the banner opens a popup window where the user can request financing for the full or partial invoice amount and select the repayment plan that best fits their cash flow requirements.

Invoice financing UI flow

If the entity’s available credit limit has been reached, the component informs the user about this and the user will not be able to submit any invoices for financing.

Invoice status in Monite is not changed after financing because this status is supposed to reflect the actual payment received from the counterpart.

The financing status of an invoice is a separate status displayed by the FinancedTab, InvoiceDetails, and other financing-related components.

Viewing financed invoices

The FinancedTab component displays a summary table of all financed invoices, including the amount requested for financing and the financing status. This component is also integrated as a built-in tab inside the ReceivablesTable and Receivables components.

The FinancedTab component displaying a summary of financed invoices

Testing tips

In the sandbox environment, the onboarding popup has Skip buttons that let you skip certain parts of the onboarding flow and quickly get your test entities onboarded.

'Skip' button during onboarding in sandbox