# Loans

Borrowers typically have loans. We support multiple loan types and each loan type
comes with its set of federal and state compliance rules. You can maintain different statuses of a loan.
A borrower can have multiple loans. A loan can belong to multiple people, but
only one borrower can be defined as a `mainBorrower`. A loan is always created using
the `mainBorrower` borrower identifier. Other people can be added as part of the loan
details.
All loan attributes can be updated as long as the loan is in `pending` status. Once the
loan status changes to `originated` attributes of `atOrigination` object become read only and
cannot be updated.
A Loan doesn't start accruing interest until it is activated. To activate the loan, call `Activate a loan`.
On activation the loan can use the due dates and payments schedule from the `atOrigination` object
or the loan can be re-amortized using the activation date as the loan start date.

 - [GET /loans](https://docs.peachfinance.com/api-docs/api-public/loans/peach.loans.handlers.loans_get_by_company.md): Get all loans associated with a company.
 - [GET /people/{personId}/loans](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loans_get.md)
 - [POST /people/{personId}/loans](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loans_add.md): Add a new loan.
 - [GET /people/{personId}/loans/{loanId}](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_get.md)
 - [PUT /people/{personId}/loans/{loanId}](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_update.md)
 - [POST /people/{personId}/loans/{loanId}/accelerate](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_accelerate.md): The accelerate endpoint will change the status of an `active` loan to `accelerated`, and trigger any acceleration-related logic and accounting treatment. Acceleration is only valid for installment and
 - [POST /people/{personId}/loans/{loanId}/activate](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_activate.md)
 - [POST /people/{personId}/loans/{loanId}/cancel](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_cancel.md): The cancel loan endpoint will change the status of a loan to `canceled`, and trigger any cancellation-related logic, such as removing a loan from active monitoring and handling the accounting treatmen
 - [POST /people/{personId}/loans/{loanId}/charge-off](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_charge_off.md): The charge-off endpoint will change the status of a loan to `chargedOff`, and trigger any charge-off-related logic and accounting treatment. A loan must be in `accelerated` status before being moved t
 - [POST /people/{personId}/loans/{loanId}/close](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_close.md): Closing a loan - For line of credit - Prevents new draws from being opened and closes existing draws to block new purchases. - For installment loan with multiple advances - Prevents new advances from
 - [GET /people/{personId}/loans/{loanId}/credit-limit](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_get_credit_limit.md)
 - [POST /people/{personId}/loans/{loanId}/credit-limit](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_update_credit_limit.md)
 - [POST /people/{personId}/loans/{loanId}/freeze](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_freeze.md): Freeze loan will change the status of an `active` loan to `frozen` effective as of the current date. The loan will remain in a frozen status until the Unfreeze endpoint is called.
 - [GET /people/{personId}/loans/{loanId}/lock-status](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.get_lock_status.md)
 - [POST /people/{personId}/loans/{loanId}/migrate](https://docs.peachfinance.com/api-docs/api-public/loans/peach.loans.migration.handlers.loan_migrate.md)
 - [POST /people/{personId}/loans/{loanId}/refresh](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_refresh.md): In the case that a loan is out of sync, the refresh endpoint will make sure that obligations, expected payments, and interest accrual is brought into sync. Refresh loan is only valid for the statuses
 - [POST /people/{personId}/loans/{loanId}/reimburse](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_reimburse.md): The reimburse endpoint should be used when the lender owes money to a borrower on a given loan. The endpoint will execute a reimbursement according to the specified `reimbursementAmount`. If the `reim
 - [POST /people/{personId}/loans/{loanId}/reopen](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_reopen.md): Reopen a closed line of credit. This will allow new draws to be added. By default, draws in `paidOff` status will not be reopened, and a line of credit that has transitioned to `paidOff` status cannot
 - [POST /people/{personId}/loans/{loanId}/reverse-accelerate](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_accelerate_reverse.md): A loan must be in `accelerated` status to be reversed. The reverse accelerate endpoint will reverse a loan in `accelerated` status, and roll back any acceleration-related logic and accounting treatmen
 - [POST /people/{personId}/loans/{loanId}/reverse-charge-off](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_charge_off_reverse.md): A loan must be in `chargedOff` status to be reversed. The reverse charge-off endpoint will reverse a loan in `chargedOff` status, and roll back any charge-off-related logic and accounting treatment. R
 - [POST /people/{personId}/loans/{loanId}/unfreeze](https://docs.peachfinance.com/api-docs/api-public/loans/peach.people.loans.handlers.loan_unfreeze.md): The Unfreeze endpoint will change the status of a `frozen` loan back to `active`, `accelerated` or `chargedOff`. If the account was overdue before it was frozen, the system will use the earliest overd
