Body Required

Amortization Schedule Calculation Inputs

  • principal_balance_cents integer Required

    The loan amount (in cents) exluding deferred interest and amortized fees.

  • The amount of deferred interest (in cents) to be amortized in equal monthly payments. Interest will not be charged on this balance.

    Default value is 0.

  • The amount of fees (in cents) to be amortized in equal monthly payments. Interest will not be charged on this balance.

    Default value is 0.

  • am_len integer Required

    Amortization length in number of cycles, e.g. am_len: 3 and cycle_interval: 1 month would amortize 3 periods of 1 month each for a total repayment across 3 months.

  • cycle_interval string Required

    The length of the billing cycle. after which a statement is generated, and a due date assigned. IE '1 month' '3 months' or '7 days' (most common is monthly)

  • cycle_due_interval string Required

    The amount of time between the statement cut and the payment due. If positive, it will count days from the start of the cycle. Note, this field has a signage convention: if negative, it will count days back from the end of the cycle. IE '25 days' indicates that payments are due 25 days after the statement is cut. -5 days indicates that payments will be due five days prior to the cut of the next cycle. Cannot exceed the duration of the billing cycle.

  • first_cycle_end string(date-time)

    The date of the end of the first loan cycle. If not provided, the default value is the current date-time.

  • The yearly interest rate to be charged on the loan. If not provided, the default value is 0.

    Default value is 0.

  • Divisor used with the interest_rate to determine the interest charged per period. This should be equal to the number of cycles in a year. If not provided, the default value is 1.

    Default value is 1.

  • This is used to differentiate between ordinary annuity calculations and annuity due calculations for the given amortization schedule. If False, the default, the first cycle due date will be first_cycle_end + cycle_due_interval. If true, not the default, the first cycle due date will be first_cycle_end + cycle_interval+ cycle_due_interval.

    Default value is false.

  • The policy which defines which principal balance to accrue interest on during the installment interest accrual calculation. ACTUAL accrues interest on the actual outstanding principal balance of loans (e.g. after a missed payment, interest would be higher than originally anticipated in the amortization schedule), EXPECTED accrues interest on the loan's expected balance (e.g. interest would be accrued at the same rate as quoted in the original amortization schedule). ORIGINAL accrues interest based on the original principal balance of the loan (i.e. a fixed amount of interest each cycle). AVERAGE accrues interest using the calculated average daily ending balance of the loan during the given cycle.

    Values are EXPECTED, ACTUAL, ORIGINAL, or AVERAGE. Default value is EXPECTED.

Responses

  • 200 array[object]

    Amortization schedule for a loan

    • line_item_id string Required

      The ID of this generated amortization schedule.

    • cycle_exclusive_end string(date-time) | null Required

      The date-time the am cycle ends.

    • min_pay_due_at string(date-time) | null Required

      The date the minimum payment for the am schedule is due.

    • am_min_pay_cents number Required

      The amount due just for the am schedule. This accounts for principal, interest, and deferred interest balance but does not include fees.

    • am_cycle_payment_cents number Required

      The amount in cents that was actually paid towards the loan during the billing cycle

    • am_interest_cents number Required

      The amount in cents allocated to interest from this am payment

    • am_deferred_cents number Required

      The amount in cents allocated to deferred interest from this am payment

      Default value is 0.

    • am_principal_cents number Required

      The amount in cents allocated to principal from this am payment

    • The amount in cents allocated to fees from this am payment

    • The starting principal balance on the loan before this payment

    • The ending principal balance on the loan after this payment

    • The starting balance on the loan before this payment

    • The ending balance on the loan after this payment

    • Indicates whether the amount for this am payment was paid on time; only present if the date scheduled for the am payment has passed as of the time of the request.

  • 401

    Unauthorized.

  • 403

    Forbidden.

  • 404

    Amortization Schedule not found

  • 429

    Too many requests.

  • Unexpected Error.

POST /amortization_schedule
curl \
 -X POST https://<your_environment_name>-uat-api.canopyservicing.com/amortization_schedule \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
 -H "Content-Type: application/json" \
 -d '{"principal_balance_cents":50000,"deferred_interest_balance_cents":5000,"am_fee_balance_cents":5000,"am_len":12,"cycle_interval":"1 month","cycle_due_interval":"1 month","first_cycle_end":"2022-2-22T12:00:00-05:00","interest_rate":8.76,"interest_divisor":12,"is_ordinary_annuity":false,"installment_interest_applicable_balance":"EXPECTED"}'
Request example
{
  "principal_balance_cents": 50000,
  "deferred_interest_balance_cents": 5000,
  "am_fee_balance_cents": 5000,
  "am_len": 12,
  "cycle_interval": "1 month",
  "cycle_due_interval": "1 month",
  "first_cycle_end": "2022-2-22T12:00:00-05:00",
  "interest_rate": 8.76,
  "interest_divisor": 12,
  "is_ordinary_annuity": false,
  "installment_interest_applicable_balance": "EXPECTED"
}
Response example (200)
[
  {
    "line_item_id": 400,
    "cycle_exclusive_end": "2018-07-20T09:10:14+00:00",
    "min_pay_due_at": "2018-07-20T09:10:14+00:00",
    "am_min_pay_cents": 84000,
    "am_cycle_payment_cents": 18325,
    "am_interest_cents": 10000,
    "am_deferred_cents": 4000,
    "am_principal_cents": 70000,
    "am_fees_cents": 1500,
    "am_start_principal_balance_cents": 136691,
    "am_end_principal_balance_cents": 136691,
    "am_start_total_balance_cents": 136691,
    "am_end_total_balance_cents": 136691,
    "paid_on_time": false
  }
]