General Patterns

Three Simple Steps#

1. One-time: Create a product#

  • This is one API call - Create a product.
  • Your product acts as a general template for the agreement you provide to your borrowers.
  • As you later originate each borrower in step 2, you can set borrower-specific details such as credit limits or interest rates, which may vary from borrower to borrower based on your risk-based pricing model.

2. Ongoing: Create a Customer Account#

  • This is two simple API calls: Create a customer, and Create an account.
  • Customers and accounts have a many-to-many relationship. There may be one or more customers assigned to an account (for example, you may want to allow primary vs secondary accountholders). A customer may also have one or more accounts (for example, a customer may have two open credit cards and an installment loan)
  • Customers are simply data fields (name, address, etc) while accounts are the calculation backbone behind the borrower's agreement. Accounts maintain the balances, interest rates, payment due dates, etc.

3. Ongoing: Activity on the account#

  • This is completed via line items
  • Throughout the borrower lifecycle, they may make payments, charges, payment reversals, or other forms of activity.
  • Canopy automatically updates all of the account's information (balances, due dates, etc) as each of these line items is complete. These line items may also trigger scheduled events -- for example, charges will trigger interest calculation.


More Detail Behind Each Step#

Configuring your product#

The Create Product call is where you define the core structure behind your product. Is it a Revolving product, is it an Installment product, or is it a hybrid of the two, or some other more complex lending structure? Do you offer a promotion period? What are the configurations behind the promotional period vs the post-promotional period? Are you running on weekly cycles? Monthly cycles?

You can see some examples of out-of-the-box configurations for simple products in our Your First Product series. You can also get a detailed breakdown of how each possible parameter in the product configuration works in our walkthrough of the Canopy API.

Configuring each account#

This is generally the responsibility of your origination software. After you have approved a borrower, you can configure a customer account for them. Configuring a customer is very straightforward -- simply populate the data fields you would like to include in Canopy (first_name, last_name, email, etc). This information is important to help in servicing the borrower.

Once you've created a customer, you can create an account and assign the customer. Note: one of the parameters in the Create Account API call is product_id -- here, you'll pass the ID of a product created in step 1. This lets Canopy know to enroll the account into the product, inheriting its core qualities. For example -- if the product cycle length is "1 month", your new account will have a statement cut event exactly one month from origination, and then one month later and so on for the entire product lifecycle.

You can also override certain default fields that are set for the product. For example, if you want to onboard a borrower with a lower-than-average interest rate due to their strong credit, you can set their interest rate when creating the account.

You can get a detailed breakdown of how each possible parameter in account configuration works in our walkthrough of the Canopy API.

Sending line items#

This is a fairly straightforward process as well if you check out our Line Items documentation. 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.