Line of Credit accounts

Account Product

For Line of Credit, setting up an Account Product is mandatory. Even if the interest rate is 0%, the interest rate should be defined in the Account Product. Please see the Account Product section of the Accounts Guide for more details

Line of Credit Account Template

Account Templates contain predefined values for creating an account. When creating an account with an account template ID, the Accounts object inherits all values from the Account Template object first, before applying passed-in values. The Account Template API spec can be found here

Some specific points regarding Account Template configuration for Line of Credit:

  • grace_period - The number of days past the billing period to allow for payment before it is considered overdue. This directly infers the payment due date. This is a required field.

  • interest_product_id - Refers to the Account Product Object. This configuration defines the interest rate(s) that is associated with the Account Template. This is a required field.

  • minimum_payment - Calculating the minimum payment due on the account for a billing period. This is a required field.

    1. minimum_payment.min_amount - This configuration sets the minimum payment due for a billing period if the account balance greater than this amount. This value is set in cents. For example, to set the min_amount to $30, the value will be 3000.

    2. minimum_payment.rate - the percentage of the balance used for calculating the minimum payment. If the value is set at 10%, then 10% of the outstanding balance is the required minimum payment. The value is use is expressed in basis points. For example, to set 12.50% of the balance, set this value to 1250.

    3. minimum_payment.type - Set this to RATE_OR_AMOUNT.

The calculated minimum payment is greater of (1) rate times statement balance when the billing period closes and (2) min_amount. But obviously, not greater than the statement balance.

 curl -X POST \
     -H 'Authorization: Bearer $apikey' \
     -H 'Content-Type: application/json' \
     -d '
     {
         "name": "Line of Credit Template",
         "description": "An account template for Line of Credit accounts",
         "is_enabled": true,
         "template": {
             "account_type": "LINE_OF_CREDIT",
             "currency": "USD",
             "bank_country": "US",
             "minimum_payment": {
                 "type": "RATE_OR_AMOUNT",
                 "amount": 2500,
                 "rate": 125
             },
             "grace_period": 21
         }
     }' $baseurl/v0/accounts/templates

Line of Credit Account

API fields

The Account API has certain fields that are specific to Line of Credit. These fields are:

Field NameDescriptionExample
account_typeFor Line of Credit, please set this field as LINE_OF_CREDITLINE_OF_CREDIT
application_idLoCs require the customer application to be approved and accepted by the applicant (details). application_id is required for creating an LoC account.
credit_limitDefined in cents, the credit limit for this account.10000 ($100)
grace_periodThe number of days past the billing period to allow for payment before it is considered due. This directly infers the due date for the minimum payment. For LOCs, please treat this as a required field.25
interest_product_idRefers to the AccountProduct Object. This configuration defines the interest rate(s) that is associated with the AccountTemplate. Please treat this as s a required field for LoCs
minimum_payment
min_amountDefined in cents, the minimum amount to charge as a minimum payment. Note: The minimum payment will never be greater than the statement balance despite setting this value.3000
rateThe percentage of the balance used for calculating the minimum payment. If the value is set at 10%, then 10% of the outstanding balance will be the minimum payment. The value is expressed in basis points. For example, to set the value at 12.75% the input should be 12751275
typeThe calculated minimum payment is greater of (1) rate times statement balance and (2) min_amount. But obviously, not greater than the statement balance.

Example

Create an account of type LINE_OF_CREDIT Accounts API or refer to the Accounts Guide

curl -X POST \
    -H 'Authorization: Bearer $apikey' \
    -H 'Content-Type: application/json' \
    -d '
    {
        "account_template_id": "{ACCOUNT_TEMPLATE_UUID}",
        "account_purpose": "LOC Account",
        "credit_limit": 100000,
        "application_id": "{APPLICATION_UUID}",
        "relationships": [
            {
                "relationship_type": "PRIMARY_ACCOUNT_HOLDER",
                "customer_id": "{CUSTOMER_UUID}"
            }
        ]
    }' $baseurl/v0/accounts

Sample response body

{
  "access_status": "ACTIVE",
  "account_number": "790586668526",
  "account_purpose": "LOC Account",
  "account_type": "LINE_OF_CREDIT",
  "balance_ceiling": {
    "balance": 100000
  },
  "balance_floor": {
    "balance": 0
  },
  "balances": [
    {
      "balance": 20000,
      "type": "ACCOUNT_BALANCE"
    },
    {
      "balance": 80000,
      "type": "AVAILABLE_BALANCE"
    }
  ],
  "bank_routing": "112233445",
  "creation_time": "2022-04-07T20:37:46.356692Z",
  "currency": "USD",
  "customer_ids": ["{CUSTOMER_UUID}"],
  "customer_type": "PERSONAL",
  "id": "3389aeac-0163-4479-8702-ff8572d39fe8",
  "is_account_pool": false,
  "last_updated_time": "2022-04-07T20:37:46.356692Z",
  "status": "ACTIVE",
  "is_ach_enabled": true,
  "is_card_enabled": false,
  "is_p2p_enabled": true,
  "minimum_payment": {
    "type": "RATE_OR_AMOUNT",
    "amount": 2500,
    "rate": 125
  },
  "application_id": "{APPLICATION_UUID}",
  "metadata": {},
  "grace_period": 21
}