QFAST API Documentation
  1. API
  • Authentication
  • Onboarding
    • Overview
    • Reference
      • Area Reference
    • API
      • Onboarding Personal
        POST
      • Get Onboarding Status
        GET
      • Submit Loan
        POST
      • Get Loan
        GET
    • Webhook
      • Onboarding Webhooks
  • Disbursement
    • Overview
    • Webhook
      • Disbursement Webhooks
  • Repayment
    • Overview
    • Webhook
      • Repayment Webhooks
  • Schemas
    • Loan Schema
    • Onboarding Schema
  1. API

Get Loan

Developing
GET
/v1/loans/{loan_id}

Get Loan API#

Retrieve the current details and status of a loan. Use this to check loan state after submission, or to reconcile loan data.

1. Endpoint Information#

ItemDescription
MethodGET
Path/v1/loans/{loanId}
AuthOAuth2 Client Credentials (Bearer Token)

2. Path Parameters#

ParameterTypeRequiredDescription
loanIdUUIDYesThe loan_id returned by the Submit Loan.

3. Response#

Success Response (200 OK)#

{
  "data": {
    "loan_id": "019e15a1-c644-705c-9330-fffa62cd44ed",
    "reference_account_number": "1234567890",
    "status": "pending",
    "principal_amount": 5000000,
    "interest_amount": 900000,
    "admin_fee_amount": 250000,
    "reserve_amount": 230533,
    "term_unit": "month",
    "term_length": 6,
    "penalty_rate": "0.0000",
    "start_date": "2026-06-01"
  }
}
FieldTypeDescription
loan_idUUIDUnique loan identifier.
reference_account_numberStringYour reference number for this loan.
statusStringCurrent loan status. See values below.
principal_amountNumberLoan principal in IDR.
interest_amountNumberTotal interest amount in IDR.
admin_fee_amountNumberAdmin fee in IDR.
reserve_amountNumberReserve amount held by QFAST, in IDR.
term_unitStringLoan term unit. Value: month.
term_lengthIntegerLoan duration in months.
penalty_rateStringDaily late penalty rate.
start_dateStringLoan start date in YYYY-MM-DD.

Loan Status Values#

StatusDescription
pendingLoan submitted, awaiting disbursement.
activeLoan disbursed and repayment is in progress.
completedAll repayments fulfilled. Loan closed.

Error Responses#

401 Unauthorized
{
  "error": "invalid_token",
  "error_description": "The access token is missing or invalid.",
  "code": 401
}
403 Forbidden
{
  "error": "forbidden",
  "error_description": "Loan exists but belongs to a different lender.",
  "code": 403
}
404 Not Found
{
  "error": "loan_not_found",
  "error_description": "No loan found with the given loanId.",
  "code": 404
}
HTTP StatusErrorCause
401invalid_tokenMissing or invalid access token.
403forbiddenLoan exists but belongs to a different lender.
404loan_not_foundNo loan found with the given loanId.

4. Example#

Request

Path Params

Header Params

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --globoff 'https://api.sandbox.qfast.id/v1/loans/{{loan}}' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'

Responses

🟢200Success
application/json
Bodyapplication/json

Example
{
    "data": {
        "loan_id": "019e15a1-c644-705c-9330-fffa62cd44ed",
        "reference_account_number": "1234567890",
        "status": "pending",
        "principal_amount": 5000000,
        "interest_amount": 900000,
        "admin_fee_amount": 250000,
        "reserve_amount": 230533,
        "term_unit": "month",
        "term_length": 6,
        "penalty_rate": "0.0000",
        "start_date": "2026-06-01"
    }
}
Previous
Submit Loan
Next
Onboarding Webhooks
Built with