Create a personal loan (V1 endpoints)
The following shows you how to create a personal loan on the Pismo platform. For information about the loan lifecycle, see Pismo lending lifecycle.
Personal loan
A personal loan is a type of unsecured loan product offered for individual borrowers where the funds have no predestined use.
Create personal loan product
To create a personal loan product, use the Create loan product endpoint. The API request example includes these required fields.
| Field | Description |
|---|---|
product_name | The name of the loan product. |
product_type | The type of loan product. To create a personal loan product, use PERSONAL. |
currency | The currency the loan product uses. |
collateral | Shows whether there’s collateral involved on a loan product. For personal loans, use none. |
repayment_calculation_method | The repayment method the loan product uses. |
interest_type | Specifies whether the loan product uses simple or compound interest. |
days_in_year_method | The days in year method the loan product uses. |
repayment_frequency | The frequency of how often a borrower needs to repay a loan. |
disbursement | The disbursement method the loan product uses. |
stages | The loan interval details, such as interest rate and how often repayments occur. |
{
"product_name": "Personal Loan Example",
"product_type": "PERSONAL",
"currency": "400",
"collateral": "none",
"loan_type": "fixed_rate",
"repayment_calculation_method": "ei_reducing_balance",
"interest_type": "simple",
"days_in_year_method": "actual_actual",
"repayment_frequency": {
"method": "monthly"
},
"disbursement": {
"method": "simple"
},
"stages": [
{
"repayment_mode": {
"type": "PRINCIPAL_AND_INTEREST"
}
}
],
"rules": {
"loan_amount": {
"min": 2000,
"max": 100000
},
"loan_term": {
"min": {
"value": 6,
"unit": "month"
},
"max": {
"value": 36,
"unit": "month"
}
},
"interest_rate": {
"min": {
"value": 6,
"unit": "year"
},
"max": {
"value": 40,
"unit": "year"
}
,
"installment_number": {
"min": 1,
"max": 12
}
}
}After you create the personal loan product, the API response returns the product_id. Use this ID to simulate a loan.
{
"product_id": "5c355ddf-a2c6-4a8e-9661-f53a19fad264"
}Simulate the personal loan
After you create the loan product, you can start offering personal loans to your borrowers.
For example, when a borrower needs to cover an unforeseen expense, you can offer them a personal loan from an existing loan product. To offer a personal loan, use the Simulate loan booking endpoint.
This API request example includes these fields.
| Field | Description |
|---|---|
product_id | The ID of a personal loan product. This is a required field. |
loan_amount | The total amount of the personal loan. |
start_date | The starting date of the personal loan. |
stages | The personal loan interval details, such as interest rate and how often repayments occur. |
disbursement.due_date | The date when to disburse the personal loan. |
{
"product_id": "8753ee7e-d227-4bcf-bd10-af03afca738e",
"loan_amount": 1000.00,
"start_date": "2022-06-24",
"stages": [
{
"interest_rate":{
"value": 0.12,
"unit": "YEAR"
},
"period": {
"value": 3,
"unit": "MONTH"
}
}
],
"disbursement": [
{
"due_date": "2022-06-24"
}
]
}After you simulate the personal loan, the API response includes the loan_simulation_id, which you use to identify the simulation when you book the loan. The response also includes the repayment_schedule, which shows the details of the loan schedule, and the disbursement_schedule, which shows the details of the loan disbursement.
{
"loan_simulation_id": "ae401396-2438-4ff8-8894-27720057522c",
"product_id": "8753ee7e-d227-4bcf-bd10-af03afca738e",
"loan_amount": 1000.00,
"outstanding_balance": {
"principal": 1000.00,
"interest": 20.07,
"total": 1020.07
},
"total_payment_amount": 1020.07,
"start_date": "2022-06-24",
"days_in_year_method": "ACTUAL_ACTUAL",
"repayment_calculation_method": "EI_REDUCING_BALANCE",
"repayment_frequency": {
"unit": "MONTH"
},
"repayment_schedule": [
{
"period": 1,
"payment_amount": 340.02,
"due_date": "2022-07-24",
"principal_amount": 330.02,
"interest_amount": 10.00,
"fee_amount": 0.00,
"balance": 669.98,
"number_of_days": 30,
"auto": false
},
{
"period": 2,
"payment_amount": 340.02,
"due_date": "2022-08-24",
"principal_amount": 333.32,
"interest_amount": 6.70,
"fee_amount": 0.00,
"balance": 336.66,
"number_of_days": 31,
"auto": false
},
{
"period": 3,
"payment_amount": 340.03,
"due_date": "2022-09-24",
"principal_amount": 336.66,
"interest_amount": 3.37,
"fee_amount": 0.00,
"balance": 0.00,
"number_of_days": 31,
"auto": false
}
],
"disbursement_schedule": [
{
"date": "2022-06-24",
"amount": 1000.00,
"principal": 1000.00,
"tax": 0.00,
"fee": 0.00,
"charge": 0.00
}
],
"stages": [
{
"interest_rate": {
"value": 0.12,
"unit": "YEAR"
},
"period": {
"value": 3,
"unit": "MONTH"
}
}
]
}To find an existing personal loan simulation, use the Get loan simulation endpoint. This is useful if there’s a delay in booking a loan with the borrower.
Book the personal loan
After the borrower accepts the terms of the personal loan from the simulation, use the Create loan booking endpoint to book the loan.
This API request example includes these required fields.
| Field | Description |
|---|---|
loan_simulation_id | The ID of the simulated personal loan with the payment schedule. |
account_id | The ID for the account registered on the Pismo platform. |
{
"loan_simulation_id": "ae401396-2438-4ff8-8894-27720057522c",
"external_id": "LOAN_TRACKER_1",
"account_id": 103614168
}After you book the personal loan, the API response shows the loan_id. The loan_id is the identifier for the entire life of the loan. So, if you need to check or edit any details of the loan, use its loan ID.
{
"loan_id": "5d9d9339-3b5e-4c33-b129-8155e4d4946b"
}Disburse the personal loan
After the borrower agrees to book the personal loan, use the Disburse loan endpoint. The interval between booking and disbursing a personal loan depends on your lending rules.
This API request example includes these required fields.
| Field | Description |
|---|---|
disbursement_date | The date to disburse the personal loan. You can find this date in the loan simulation. |
disbursement_amount | The amount disbursed for the personal loan. You can find this amount in the loan simulation. |
disbursement_account | The account on the Pismo platform where to disburse the personal loan funds. |
{
"disbursement_date": "2022-06-24",
"disbursed_amount": 1000.00,
"disbursement_account": {
"type": "INTERNAL",
"account_id": 103614168
}
}After you disburse the personal loan, the API response includes the disbursement_id. This ID is the identifier that confirms the loan disbursement.
{
"loan_id": "5d9d9339-3b5e-4c33-b129-8155e4d4946b",
"disbursement_id": "c1eb9f28-e1c9-4705-b2b5-f986b3bc7455",
"created_at": "2022-06-27T14:19:30.194249",
"updated_at": "2022-06-27T14:21:00.318043",
"product_id": "fb525f7e-4317-45da-84d5-ccb1b0da3f14",
"disbursement_status": "PROCESSING",
"loan_amount": 1000.00,
"disbursed_amount": 1000.00,
"disbursement_account": {
"type": "INTERNAL",
"account_id": 103296044
}
}Updated 3 days ago