Simulate Loans

POST /v1/borrowers/loans/simulate

Simulate total and installment payments for loans

application/json

Body

  • loan object

    Additional properties are allowed.

    Hide loan attributes Show loan attributes object
    • amount_financed number

      The initial principal amount of the loan

      Minimum value is 0.

    • config_id string Required

      The ID of the loan configuration associated with this loan.

      Minimum length is 1.

    • daily_fee_charge null | number

      The fee charged for each day the loan is outstanding. The fee is accrued daily until reaching the max_charge specified in the loan configuration.

      Minimum value is 0.

    • delinquency_interest_rate number

      The effective annual interest rate charged on the overdue balance of the loan, as a percentage. If configured above the usury rate it will adjusted according to the behavior specified in the loan configuration.

      Minimum value is 0.

    • due_dates array[string(date-time)] | null Required

      A list of due dates for the loan, expressed as a datetime object with timezone information. The time can be overridden depending on the loan configuration attribute: due_date_preference, the final due dates will be displayed in the response.

      At least 1 element.

    • guarantee_provider null | string

      The type of installment fee to be charged.

    • installment_fee_2_charge null | number

      Same as installment_fee_charge

      Minimum value is 0.

    • installment_fee_charge null | number

      Specifies the total fee amount to be charged throughout the lifetime of the loan. The fee will be split and charged in equal amounts on the due dates of the loan.

      Minimum value is 0.

    • interest_rate number

      The effective annual interest rate charged throughout the loan, as a percentage. If the interest rate exceeds the usury rate at the time of origination, it will be adjusted according to the usury rules defined in the loan configuration.

      Minimum value is 0.

    • origination_date string(date-time)

      The origination date is the starting date and time for the loan, expressed as a datetime object with timezone information. Interest and fees begin accruing from this point onward. The time part can be overridden depending on the loan configuration attribute: origination_date_preference.

    • owner null | string

      The ID of the owner of the loan.

  • request_id string

    Optional field that will be returned unmodified in each response. Especially useful for keeping track of responses in batch requests.

Responses

  • 200 application/json

    OK

    Hide response attributes Show response attributes object
    • failed array[object] | null
      Hide failed attributes Show failed attributes object
      • error_detail string
      • request_id string
      • status_code integer
    • succeeded array[object] | null
      Hide succeeded attributes Show succeeded attributes object
      • amortization_plan array[object] | null
        Hide amortization_plan attributes Show amortization_plan attributes object
        • daily_fee_payment number
        • end_date string(date-time)
        • installment_fee_2_payment number
        • installment_fee_payment number
        • interest_payment number
        • principal_payment number
        • start_date string(date-time)
      • attributes object

        Additional properties are allowed.

        Hide attributes attributes Show attributes attributes object
        • amount_financed number
        • due_dates array[string(date-time)] | null
        • interest_rate number
      • request_id string

        Optional field that will be returned unmodified in each response. Especially useful for keeping track of responses in batch requests.

      • summary object

        Additional properties are allowed.

        Hide summary attributes Show summary attributes object
        • fixed_installment_amount number
        • total number
        • total_daily_fee number
        • total_installment_fee number
        • total_installment_fee_2 number
        • total_interest number
  • 400 application/json

    Bad Request

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

  • 404 application/json

    Not Found

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

  • 409 application/json

    Conflict

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

  • 500 application/json

    Internal Server Error

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

POST /v1/borrowers/loans/simulate
curl \
 --request POST 'https://sandbox.lms.kordev.io/v1/borrowers/loans/simulate' \
 --header "Content-Type: application/json" \
 --data '[{"loan":{"amount_financed":163333.34,"config_id":"string","daily_fee_charge":null,"delinquency_interest_rate":0.3848,"due_dates":["2020-02-01T23:59:59.999999-05:00, 2020-03-01T23:59:59.999999-05:00"],"guarantee_provider":"FGA","installment_fee_2_charge":null,"installment_fee_charge":null,"interest_rate":0.3848,"origination_date":"2020-01-01T00:00:00-05:00","owner":"BANK_1"},"request_id":"string"}]'
Request examples
[
  {
    "loan": {
      "amount_financed": 163333.34,
      "config_id": "string",
      "daily_fee_charge": null,
      "delinquency_interest_rate": 0.3848,
      "due_dates": [
        "2020-02-01T23:59:59.999999-05:00, 2020-03-01T23:59:59.999999-05:00"
      ],
      "guarantee_provider": "FGA",
      "installment_fee_2_charge": null,
      "installment_fee_charge": null,
      "interest_rate": 0.3848,
      "origination_date": "2020-01-01T00:00:00-05:00",
      "owner": "BANK_1"
    },
    "request_id": "string"
  }
]
Response examples (200)
{
  "failed": [
    {
      "error_detail": "string",
      "request_id": "string",
      "status_code": 42
    }
  ],
  "succeeded": [
    {
      "amortization_plan": [
        {
          "daily_fee_payment": 42.0,
          "end_date": "2025-05-04T09:42:00Z",
          "installment_fee_2_payment": 42.0,
          "installment_fee_payment": 42.0,
          "interest_payment": 42.0,
          "principal_payment": 42.0,
          "start_date": "2025-05-04T09:42:00Z"
        }
      ],
      "attributes": {
        "amount_financed": 42.0,
        "due_dates": [
          "2025-05-04T09:42:00Z"
        ],
        "interest_rate": 42.0
      },
      "request_id": "string",
      "summary": {
        "fixed_installment_amount": 42.0,
        "total": 42.0,
        "total_daily_fee": 42.0,
        "total_installment_fee": 42.0,
        "total_installment_fee_2": 42.0,
        "total_interest": 42.0
      }
    }
  ]
}
Response examples (400)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}
Response examples (404)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}
Response examples (409)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}
Response examples (500)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}