Rates

This object represents the interest and promo rates of the loan. You can modify interest and promo rates at any time. If a rate is modified or added with an effective date in the past, we will recalculate loan balances retroactively and future expected payments from the effective date. If a rate is modified or added with effective date in the future, we will recalculate future expected payments only.

Add loan rate

This endpoint is used for adding rates. A loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

The added interestRate must be within the bounds of any corresponding minimum and maximum rate range configuration that is found on the loan type (if any).

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

Request Body schema: application/json
object (Interest rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

object (Promo rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

caseId
string

An identifier for an existing case.

Responses
201

Created

post/people/{personId}/loans/{loanId}/rates
Request samples
application/json
{
  • "interestRate": {
    },
  • "promoRate": {
    },
  • "caseId": "string"
}

Get loan rates

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

Responses
200

Success

get/people/{personId}/loans/{loanId}/rates
Response samples
application/json
{
  • "data": {
    }
}

Get loan effective rates

This endpoint returns rates details of a loan for a given date(s). Interest rates: If two or more interest rates are active on the same date (aka overlap), the Peach system selects the lowest rate (also called effective rate) to accrue interest. Promo rates: If two or more promo rates are active on the same date (aka overlap), the Peach system sums up the rates as "effective" promo rate.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

query Parameters
fromDate
string

The from date. Pass the same value in the fromDate and toDate if you need to get the rates for a specific date.

toDate
string

The to date. Pass the same value in the fromDate and toDate if you need to get the rates for a specific date.

Responses
200

Success

get/people/{personId}/loans/{loanId}/effective-rates
Response samples
application/json
{
  • "data": {
    }
}

Update loan rate

This endpoint is used for updating a single interest or promo rate. (don't pass both in the same call). The updating of an interest rate cannot lead to a gap in the loan where there is no reference interest rate.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

rateId
required
string

Unique identifier of an interest or promo rate.

Request Body schema: application/json
object (Interest rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

object (Promo rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

caseId
string

An identifier for an existing case.

Responses
204

Success

put/people/{personId}/loans/{loanId}/rates/{rateId}
Request samples
application/json
{
  • "interestRate": {
    },
  • "promoRate": {
    },
  • "caseId": "string"
}

Remove loan rate

This endpoint is used for removing a single interest or promo rate. The deletion of an interest rate cannot lead to a gap in the loan where there is no reference rate.

Rates where setAtActivation is true can only be deleted with a special force permission.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

rateId
required
string

Unique identifier of an interest or promo rate.

query Parameters
caseId
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

Filter by case's object unique identifier. Can be Peach or lender's external identifier.

Responses
204

Success

delete/people/{personId}/loans/{loanId}/rates/{rateId}

Add draw rate

This endpoint is used for adding rates. A draw can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

The added interestRate must be within the bounds of any corresponding minimum and maximum rate range configuration that is found on the loan type (if any).

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

drawId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The draw identifier.

Request Body schema: application/json
object (Interest rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

object (Promo rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

caseId
string

An identifier for an existing case.

Responses
201

Created

post/people/{personId}/loans/{loanId}/draws/{drawId}/rates
Request samples
application/json
{
  • "interestRate": {
    },
  • "promoRate": {
    },
  • "caseId": "string"
}

Get draw rates

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

drawId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The draw identifier.

Responses
200

Success

get/people/{personId}/loans/{loanId}/draws/{drawId}/rates
Response samples
application/json
{
  • "data": {
    }
}

Get draw effective rates

This endpoint returns rates details of a draw for a given date(s). Interest rates: If two or more interest rates are active on the same date (aka overlap), the Peach system selects the lowest rate (also called effective rate) to accrue interest. Promo rates: If two or more promo rates are active on the same date (aka overlap), the Peach system sums up the rates as "effective" promo rate.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

drawId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The draw identifier.

query Parameters
fromDate
string

The from date. Pass the same value in the fromDate and toDate if you need to get the rates for a specific date.

toDate
string

The to date. Pass the same value in the fromDate and toDate if you need to get the rates for a specific date.

Responses
200

Success

get/people/{personId}/loans/{loanId}/draws/{drawId}/effective-rates
Response samples
application/json
{
  • "data": {
    }
}

Update draw rate

This endpoint is used for updating a single interest or promo rate (don't pass both in the same call). The updating of an interest rate cannot lead to a gap in the loan where there is no reference interest rate.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

drawId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The draw identifier.

rateId
required
string

Unique identifier of an interest or promo rate.

Request Body schema: application/json
object (Interest rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

object (Promo rate)

Loan can have multiple rates. If two or more interestRate overlap on the same date we use the lowest value. If two or more promoRate overlap on the same date, we take the sum of the promo rates for the given day, and cap this rate at the maximum interest rate for the given day (to avoid accruing negative interest).

caseId
string

An identifier for an existing case.

Responses
204

Success

put/people/{personId}/loans/{loanId}/draws/{drawId}/rates/{rateId}
Request samples
application/json
{
  • "interestRate": {
    },
  • "promoRate": {
    },
  • "caseId": "string"
}

Remove draw rate

This endpoint is used for removing a single interest or promo rate. The deletion of an interest rate cannot lead to a gap in the loan where there is no reference rate.

Rates where setAtActivation is true can only be deleted with a special force permission.

Securityoauth2 or bearerAuth or apiKeyHeader
Request
path Parameters
personId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

A Borrower's unique identifier, tied to a person or a business. Can be Peach or a lender's external identifier.

loanId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The unique identifier of the Loan we wish to retrieve. Can be Peach or lender's external identifier.

drawId
required
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

The draw identifier.

rateId
required
string

Unique identifier of an interest or promo rate.

query Parameters
caseId
string^ext-|^[A-Z]{2}-[A-Z0-9]+-[A-Z0-9]+|^\d+$

Filter by case's object unique identifier. Can be Peach or lender's external identifier.

Responses
204

Success

delete/people/{personId}/loans/{loanId}/draws/{drawId}/rates/{rateId}