loan payload, not just the changed fields.pending status with no disbursement in progress can be updated. Each successful update fires a loan.updated webhook.Authorization: Bearer ********************{
"loan": {
"principal_amount": "6000000.00",
"interest_amount": "900000.00",
"admin_fee_amount": "50000.00",
"reserve_amount": "500000.00",
"term_unit": "month",
"term_length": 3,
"penalty_rate": 0.01,
"start_date": "2026-05-15",
"repayment_schedules": [
{
"reference_id": "SCH-MONTH-1",
"principal_amount": "2000000.00",
"interest_amount": "300000.00",
"due_date": "2026-06-15",
"daily_repayment_schedules": [
{
"reference_id": "DAY-001",
"principal_amount": "66666.67",
"interest_amount": "10000.00",
"due_date": "2026-05-15"
}
]
}
]
}
}curl --location --globoff --request PATCH 'https://api.sandbox.qfast.id/v1/loans/{{loan}}' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"loan": {
"principal_amount": "6000000.00",
"interest_amount": "900000.00",
"admin_fee_amount": "50000.00",
"reserve_amount": "500000.00",
"term_unit": "month",
"term_length": 3,
"penalty_rate": 0.01,
"start_date": "2026-05-15",
"repayment_schedules": [
{
"reference_id": "SCH-MONTH-1",
"principal_amount": "2000000.00",
"interest_amount": "300000.00",
"due_date": "2026-06-15",
"daily_repayment_schedules": [
{
"reference_id": "DAY-001",
"principal_amount": "66666.67",
"interest_amount": "10000.00",
"due_date": "2026-05-15"
}
]
}
]
}
}'{
"data": {
"loan_id": "019e15a1-c644-705c-9330-fffa62cd44ed",
"reference_account_number": "LND-ACC-2026-0001",
"status": "pending",
"principal_amount": "6000000.00",
"interest_amount": "900000.00",
"admin_fee_amount": "50000.00",
"reserve_amount": "500000.00",
"reserve_balance_amount": "500000.00",
"term_unit": "month",
"term_length": 3,
"penalty_rate": "0.0100",
"start_date": "2026-05-15"
}
}