Simulating Line Item Activity

On an ongoing basis, as any activity occurs for the account (a charge, a payment, etc), you can call the corresponding endpoint.
You can further automate Canopy's notification of line_items by leveraging our issuer-processor and payment-processor integrations. For more details on leveraging these integrations, see our integrations section.
For a full breakdown of the types of Line Item activity, check our API Reference.


Charges are sometimes called purchases or draws, too.

Example: Create Charge

Endpoint: /accounts/{account_id}/line_items/charges
{ "line_item_id": "0x1234", -- optional; canopy will generate if not provided "line_item_status": "AUTHORIZED", -- update to VALID once settled "original_amount_cents": 2500, "effective_at": "2020-07-22T09:11:28+00:00", }

Installment Loans

If you’re working with installment loans in Canopy, please read this very important note.
In Canopy, an Account is the top-level computational vehicle, and a Loan is a special type of Line Item housed inside of an account. If your lending program consists of a single installment loan for your borrowers you do not need to do a separate Create Loan API Call; this is automatically set based on your CreateProduct/CreateAccount request. However, some advanced users of Canopy may be using Canopy’s MultiLoan feature to run lending programs that provide multiple installment loans for a single borrower, that roll up into a single minimum payment due within a revolving line of credit. These users can use the Create Loan endpoint to create a second, third, etc installment loan that “magically” syncs up with the due dates of existing loans on the account.

Example: Create Loan Payload

This is only needed for Revolving Lines of Credit with multiple installment loans
Endpoint: /accounts/{{account_id}}/line_items/loans
{ "line_item_id": "test-novo-{{$randomInt}}-{{$randomAlphaNumeric}}", "original_amount_cents": 600000, "effective_at": "2022-08-09T09:11:28+00:00", "am_len": 6, "interest_policies": { "interest_percent": 36, "is_limited_to_loan_duration": true } }