Credit SDK by Aarthik Labs

Request-Response Model (Gold Loan)

Gold Loan request-response model for hosted journey integrations.

This document defines the Gold Loan request-response model for hosted journey integrations. It follows the same integration style as the Personal Loan journey and adds Gold Loan-specific request fields and response snapshots.

Request

POST /api/lab/sessions Request Format

  • Send API key in Authorization: Bearer ${PLATFORM_API_KEY}.
  • Use Content-Type: application/json.
  • Top-level request keys:
    • borrowerProviderID (required; must remain stable per mobile number)
    • journeyType (required, must be GOLD_LOAN)
    • profile (required with mandatory profile fields)
    • workProfile (optional)
    • address (optional)
    • goldLoan (optional but strongly recommended)

Basic Initialization

{
  "borrowerProviderID": "BORROWER-123",
  "journeyType": "GOLD_LOAN",
  "profile": {
    "contactNumber": "9876543210"
  }
}

Expected response for this basic initialization request:

{
  "embedUrl": "https://your-platform-domain.com/lab/embed?tenant_id={TENANT_ID}&application_id={APPLICATION_ID}&borrower_provider_id={BORROWER_PROVIDER_ID}&journey_type=GOLD_LOAN#{SESSION_TOKEN}"
}
{
  "borrowerProviderID": "BORROWER-123",
  "journeyType": "GOLD_LOAN",
  "profile": {
    "contactNumber": "9876543210",
    "pan": "ABCDE1234F",
    "panName": "Rahul Sharma",
    "dob": "1995-06-20",
    "gender": "male",
    "personalemail": "rahul@example.com"
  },
  "workProfile": {
    "officialemail": "rahul@company.com",
    "employmentType": "salaried",
    "income": "75000",
    "companyName": "Acme Pvt Ltd",
    "udyamNumber": null
  },
  "address": {
    "addressL1": "Flat 301, Sunrise Heights",
    "addressL2": "MG Road",
    "city": "Bengaluru",
    "state": "Karnataka",
    "pincode": "560001"
  },
  "goldLoan": {
    "userType": "individual",
    "constitution": null,
    "jewelleryWeightGrams": 52,
    "purity": "22K",
    "endUse": consumerDurablePurchase | education | travel | health | marriage | familyFunctions | medicalTreatmentAndEmergencies | travelEducationExpenses | businessExpansion | agricultureAndFarmRelatedNeeds | purchaseOfEquipment | other,
    "bureauConsent": true,
  }
}

Request Schema

FieldTypeRequiredAccepted values / Notes
borrowerProviderIDstringYesStable borrower identity from your system (must be unique within your client/tenant)
journeyTypestringYesMust be GOLD_LOAN
profileobjectYesBorrower profile prefill
profile.contactNumberstringYesIndian mobile number (10 digits, optional +91)
profile.panstringNoValid PAN, normalized uppercase
profile.panNamestringNoPAN name
profile.dobstringNoDate string, recommended YYYY-MM-DD
profile.genderstringNoNormalized to male, female, transgender
profile.personalemailstringNoValid email, normalized lowercase
workProfileobjectNoEmployment prefill
workProfile.officialemailstringNoValid email
workProfile.employmentTypestringNosalaried or selfEmployed (aliases accepted)
workProfile.incomestring | numberNoDigits only, positive integer
workProfile.companyNamestringNoEmployer / business name
workProfile.udyamNumberstring | nullNoAllowed only for selfEmployed
addressobjectNoAddress prefill
address.addressL1stringNoAddress line 1
address.addressL2stringNoAddress line 2
address.citystringNoCity
address.statestringNoState
address.pincodestringNoPIN code
goldLoanobjectNoGold Loan prefill object
goldLoan.userTypestringNoindividual or non-individual
goldLoan.constitutionstring | nullNoApplicable for non-individual borrowers
goldLoan.jewelleryWeightGramsnumber | stringNoGold weight in grams, positive
goldLoan.puritystringNoCanonical: 24K, 22K, 21K, 18K, 14K, 9K
goldLoan.endUsestringNoe.g. businessExpansion, marriage, medicalTreatmentAndEmergencies
goldLoan.bureauConsentbooleanNoMust be true before bureau flow
goldLoan.aaIDstringNoAA handle (example: 9876543210@finvu)
goldLoan.requestedAmountstring | numberNoRequested loan amount
goldLoan.requestedTenureMonthsnumber | stringNoRequested tenure in months

Borrower Identity Mapping (Important)

borrowerProviderID is your permanent borrower identity key.

borrowerProviderID is client-scoped, so two different clients may send the same value. We generate and use internal borrowerID as the unique borrower identifier in our platform.

Maintain a stable 1:1 mapping between:

  • mobile numberborrowerProviderID

Example

If mobile number 8000352223 is initialized with:

  • borrowerProviderID = 1234

then every future session for the same mobile number must continue to send:

  • borrowerProviderID = 1234

What Happens If This Changes?

If you send a different ID for the same mobile number, the platform may treat the borrower as new. This can break resume continuity and post-disbursal tracking.

Integration Rule

Always send the same borrowerProviderID for the same mobile number across all sessions.

Canonical Normalization

  • gender normalizes to: male, female, transgender
  • employmentType normalizes to: salaried, selfEmployed
  • purity should be sent in canonical uppercase tokens, for example 22K

cURL Examples

curl --request POST "${PLATFORM_BASE_URL}/api/lab/sessions" \
  --header "Authorization: Bearer ${PLATFORM_API_KEY}" \
  --header "Content-Type: application/json" \
  --data-raw '{
    "borrowerProviderID": "BORROWER-123",
    "journeyType": "GOLD_LOAN",
    "profile": {
      "contactNumber": "9876543210"
    }
  }'
curl --request POST "${PLATFORM_BASE_URL}/api/lab/sessions" \
  --header "Authorization: Bearer ${PLATFORM_API_KEY}" \
  --header "Content-Type: application/json" \
  --data-raw '{
    "borrowerProviderID": "BORROWER-123",
    "journeyType": "GOLD_LOAN",
    "profile": {
      "contactNumber": "9876543210",
      "pan": "ABCDE1234F"
    },
     goldLoan: {
      userType: individual | non-individual,
      constitution: null,
      jewelleryWeightGrams: 52,
      purity: 22K,
      endUse: consumerDurablePurchase | education | travel | health | marriage | familyFunctions | medicalTreatmentAndEmergencies | travelEducationExpenses | businessExpansion | agricultureAndFarmRelatedNeeds | purchaseOfEquipment | other,
      bureauConsent: true,
      aaID: "9876543210@finvu"(optional)
    }
  }'

Notes

  • borrowerProviderID is mandatory.
  • journeyType = GOLD_LOAN is mandatory for Gold Loan session creation.
  • profile.contactNumber is mandatory.
  • Always validate and protect borrower PII in transit and at rest.

Response

Lifecycle updates via postMessage

The hosted journey posts lifecycle updates to the parent window using postMessage.

Webhooks, callbacks, and postMessage updates now use the same payload shape. Tenants should infer the event from borrower.journey.status. There is no separate event name field.

"use client";

import { useEffect } from "react";

const PLATFORM_ORIGIN = "https://your-platform-domain.com";

export function useJourneyLifecycleUpdates() {
  useEffect(() => {
    const handleMessage = (event: MessageEvent) => {
      if (event.origin !== PLATFORM_ORIGIN) return;

      const lifecycleUpdate = event.data as
        | { borrower?: { journey?: { status?: string } } }
        | null;

      if (!lifecycleUpdate?.borrower?.journey?.status) return;

      void fetch("/api/journey-updates", {
        method: "POST",
        headers: { "Content-Type": "application/json" },
        body: JSON.stringify(lifecycleUpdate),
      });
    };

    window.addEventListener("message", handleMessage);
    return () => window.removeEventListener("message", handleMessage);
  }, []);
}

Validate origin and protect PII

Always validate event.origin strictly. Lifecycle payloads may contain sensitive borrower data.

Lifecycle event sequence

The canonical lifecycle sequence for Gold Loan journeys is:

  1. STARTED
  2. PROFILED
  3. OFFERED or NOT_OFFERED
  4. OFFER_SELECTED (only if the borrower was offered at least one offer)
  5. OFFER_ACCEPTED
  6. LENDER_REDIRECTED
  7. REJECTED or DISBURSED

Important behavior:

  • NOT_OFFERED is terminal for the journey lifecycle.
  • REJECTED may happen at any time and is terminal.
  • OFFER_SELECTED and OFFER_ACCEPTED carry the same payload shape. The only intentional difference is borrower.journey.status.
  • At most 7 lifecycle webhook events are created per journey.
  • Retries for delivery failures do not create additional logical lifecycle events.

Stage-by-stage lifecycle samples

The payload shape stays the same for every lifecycle update. The examples below use the same complete field set for every stage so integrators can treat the payload as a stable contract.

Consistent contract across all stages

Every Gold Loan example below shows the same top-level fields, borrower profile fields, and journey fields. The gold_loan block is always present for Gold Loan journeys. Only the values change from stage to stage.

STARTED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": null,
        "dob": null,
        "gender": null,
        "personalemail": null,
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": null,
        "officialemail": null,
        "income": null,
        "companyName": null,
        "udyamNumber": null
      },
      "address": {
        "addressL1": null,
        "addressL2": null,
        "city": null,
        "state": null,
        "pincode": null
      },
      "gold_loan": {
        "userType": null,
        "constitution": null,
        "jewelleryWeightGrams": null,
        "purity": null
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": null,
      "bureauConsent": false,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T12:45:00Z",
      "type": "GOLD_LOAN",
      "status": "STARTED",
      "activity_status": "ACTIVE",
      "decision_status": null,
      "lender_mode": null,
      "kyc_status": null,
      "kyc_attempts": null,
      "emandate_status": null,
      "emandate_attempts": null,
      "esign_status": null,
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": null,
      "borrower_preferred_tenure": null,
      "lenders": [],
      "offers": []
    }
  }
}

PROFILED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T13:20:12Z",
      "type": "GOLD_LOAN",
      "status": "PROFILED",
      "activity_status": "ACTIVE",
      "decision_status": null,
      "lender_mode": null,
      "kyc_status": "PENDING",
      "kyc_attempts": null,
      "emandate_status": "PENDING",
      "emandate_attempts": null,
      "esign_status": "PENDING",
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": null,
      "borrower_preferred_tenure": null,
      "lenders": [],
      "offers": []
    }
  }
}

OFFERED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T13:27:00Z",
      "type": "GOLD_LOAN",
      "status": "OFFERED",
      "activity_status": "ACTIVE",
      "decision_status": null,
      "lender_mode": null,
      "kyc_status": "PENDING",
      "kyc_attempts": null,
      "emandate_status": "PENDING",
      "emandate_attempts": null,
      "esign_status": "PENDING",
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": null,
      "borrower_preferred_tenure": null,
      "lenders": [
        {
          "id": "lndr_muthoot_01",
          "lender_name": "Muthoot Finance",
          "lender_gro_name": "Regional GRO",
          "lender_gro_email": "gro@muthoot.com",
          "lender_gro_contact_number": "+918000000101",
          "lender_gro_designation": "Grievance Officer",
          "lender_gro_address": "Kochi, Kerala",
          "lender_customer_support_link": "https://www.muthootfinance.com/contact-us",
          "lender_customer_support_contact_number": "+918000000102",
          "lender_customer_support_email": "support@muthoot.com"
        }
      ],
      "offers": [
        {
          "id": "ofr_gold_001",
          "accepted": false,
          "expired": false,
          "amount_principal": "220000",
          "amount_total_interest_payable": "26400",
          "amount_net_disbursed_amount": "218000",
          "offer_term": "12 months",
          "interest_rate": "12.0",
          "interest_type": "Fixed",
          "annual_percentage_rate": "12.8",
          "number_of_installments": 12,
          "cool_off_period": "3 days",
          "terms_and_conditions_link": "https://example.com/tc/ofr_gold_001",
          "key_facts_statement_link": "https://example.com/kfs/ofr_gold_001",
          "application_fees": "0",
          "foreclosure_fees": "1500",
          "interest_rate_conversion_charges": null,
          "delay_penalty_fees": "400",
          "other_penalty_fees": null,
          "processing_fees": "2000",
          "other_upfront_charges": null,
          "insurance_charges": null,
          "other_charges": null,
          "installments": []
        }
      ]
    }
  }
}

NOT_OFFERED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T13:27:00Z",
      "type": "GOLD_LOAN",
      "status": "NOT_OFFERED",
      "activity_status": "INACTIVE",
      "decision_status": "NOT_APPROVED",
      "lender_mode": null,
      "kyc_status": "PENDING",
      "kyc_attempts": null,
      "emandate_status": "PENDING",
      "emandate_attempts": null,
      "esign_status": "PENDING",
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": null,
      "borrower_preferred_tenure": null,
      "lenders": [
        {
          "id": "lndr_muthoot_01",
          "lender_name": "Muthoot Finance",
          "lender_gro_name": "Regional GRO",
          "lender_gro_email": "gro@muthoot.com",
          "lender_gro_contact_number": "+918000000101",
          "lender_gro_designation": "Grievance Officer",
          "lender_gro_address": "Kochi, Kerala",
          "lender_customer_support_link": "https://www.muthootfinance.com/contact-us",
          "lender_customer_support_contact_number": "+918000000102",
          "lender_customer_support_email": "support@muthoot.com"
        }
      ],
      "offers": []
    }
  }
}

OFFER_SELECTED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T13:30:00Z",
      "type": "GOLD_LOAN",
      "status": "OFFER_SELECTED",
      "activity_status": "ACTIVE",
      "decision_status": null,
      "lender_mode": "OFFLINE",
      "kyc_status": "PENDING",
      "kyc_attempts": null,
      "emandate_status": "PENDING",
      "emandate_attempts": null,
      "esign_status": "PENDING",
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": 220000,
      "borrower_preferred_tenure": 12,
      "lenders": [
        {
          "id": "lndr_muthoot_01",
          "lender_name": "Muthoot Finance",
          "lender_gro_name": "Regional GRO",
          "lender_gro_email": "gro@muthoot.com",
          "lender_gro_contact_number": "+918000000101",
          "lender_gro_designation": "Grievance Officer",
          "lender_gro_address": "Kochi, Kerala",
          "lender_customer_support_link": "https://www.muthootfinance.com/contact-us",
          "lender_customer_support_contact_number": "+918000000102",
          "lender_customer_support_email": "support@muthoot.com"
        }
      ],
      "offers": [
        {
          "id": "ofr_gold_001",
          "accepted": false,
          "expired": false,
          "amount_principal": "220000",
          "amount_total_interest_payable": "26400",
          "amount_net_disbursed_amount": "218000",
          "offer_term": "12 months",
          "interest_rate": "12.0",
          "interest_type": "Fixed",
          "annual_percentage_rate": "12.8",
          "number_of_installments": 12,
          "cool_off_period": "3 days",
          "terms_and_conditions_link": "https://example.com/tc/ofr_gold_001",
          "key_facts_statement_link": "https://example.com/kfs/ofr_gold_001",
          "application_fees": "0",
          "foreclosure_fees": "1500",
          "interest_rate_conversion_charges": null,
          "delay_penalty_fees": "400",
          "other_penalty_fees": null,
          "processing_fees": "2000",
          "other_upfront_charges": null,
          "insurance_charges": null,
          "other_charges": null,
          "installments": []
        }
      ]
    }
  }
}

OFFER_ACCEPTED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T13:31:00Z",
      "type": "GOLD_LOAN",
      "status": "OFFER_ACCEPTED",
      "activity_status": "ACTIVE",
      "decision_status": null,
      "lender_mode": "OFFLINE",
      "kyc_status": "PENDING",
      "kyc_attempts": null,
      "emandate_status": "PENDING",
      "emandate_attempts": null,
      "esign_status": "PENDING",
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": 220000,
      "borrower_preferred_tenure": 12,
      "lenders": [
        {
          "id": "lndr_muthoot_01",
          "lender_name": "Muthoot Finance",
          "lender_gro_name": "Regional GRO",
          "lender_gro_email": "gro@muthoot.com",
          "lender_gro_contact_number": "+918000000101",
          "lender_gro_designation": "Grievance Officer",
          "lender_gro_address": "Kochi, Kerala",
          "lender_customer_support_link": "https://www.muthootfinance.com/contact-us",
          "lender_customer_support_contact_number": "+918000000102",
          "lender_customer_support_email": "support@muthoot.com"
        }
      ],
      "offers": [
        {
          "id": "ofr_gold_001",
          "accepted": true,
          "expired": false,
          "amount_principal": "220000",
          "amount_total_interest_payable": "26400",
          "amount_net_disbursed_amount": "218000",
          "offer_term": "12 months",
          "interest_rate": "12.0",
          "interest_type": "Fixed",
          "annual_percentage_rate": "12.8",
          "number_of_installments": 12,
          "cool_off_period": "3 days",
          "terms_and_conditions_link": "https://example.com/tc/ofr_gold_001",
          "key_facts_statement_link": "https://example.com/kfs/ofr_gold_001",
          "application_fees": "0",
          "foreclosure_fees": "1500",
          "interest_rate_conversion_charges": null,
          "delay_penalty_fees": "400",
          "other_penalty_fees": null,
          "processing_fees": "2000",
          "other_upfront_charges": null,
          "insurance_charges": null,
          "other_charges": null,
          "installments": []
        }
      ]
    }
  }
}

LENDER_REDIRECTED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T13:40:00Z",
      "type": "GOLD_LOAN",
      "status": "LENDER_REDIRECTED",
      "activity_status": "ACTIVE",
      "decision_status": null,
      "lender_mode": "OFFLINE",
      "kyc_status": "PENDING",
      "kyc_attempts": 1,
      "emandate_status": "PENDING",
      "emandate_attempts": null,
      "esign_status": "PENDING",
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": 220000,
      "borrower_preferred_tenure": 12,
      "lenders": [
        {
          "id": "lndr_muthoot_01",
          "lender_name": "Muthoot Finance",
          "lender_gro_name": "Regional GRO",
          "lender_gro_email": "gro@muthoot.com",
          "lender_gro_contact_number": "+918000000101",
          "lender_gro_designation": "Grievance Officer",
          "lender_gro_address": "Kochi, Kerala",
          "lender_customer_support_link": "https://www.muthootfinance.com/contact-us",
          "lender_customer_support_contact_number": "+918000000102",
          "lender_customer_support_email": "support@muthoot.com"
        }
      ],
      "offers": [
        {
          "id": "ofr_gold_001",
          "accepted": true,
          "expired": false,
          "amount_principal": "220000",
          "amount_total_interest_payable": "26400",
          "amount_net_disbursed_amount": "218000",
          "offer_term": "12 months",
          "interest_rate": "12.0",
          "interest_type": "Fixed",
          "annual_percentage_rate": "12.8",
          "number_of_installments": 12,
          "cool_off_period": "3 days",
          "terms_and_conditions_link": "https://example.com/tc/ofr_gold_001",
          "key_facts_statement_link": "https://example.com/kfs/ofr_gold_001",
          "application_fees": "0",
          "foreclosure_fees": "1500",
          "interest_rate_conversion_charges": null,
          "delay_penalty_fees": "400",
          "other_penalty_fees": null,
          "processing_fees": "2000",
          "other_upfront_charges": null,
          "insurance_charges": null,
          "other_charges": null,
          "installments": []
        }
      ]
    }
  }
}

REJECTED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T13:44:00Z",
      "type": "GOLD_LOAN",
      "status": "REJECTED",
      "activity_status": "INACTIVE",
      "decision_status": "NOT_APPROVED",
      "lender_mode": "OFFLINE",
      "kyc_status": "FAILURE",
      "kyc_attempts": 1,
      "emandate_status": "PENDING",
      "emandate_attempts": null,
      "esign_status": "PENDING",
      "esign_attempts": null,
      "change_in_offer": false,
      "borrower_preferred_amount": 220000,
      "borrower_preferred_tenure": 12,
      "lenders": [
        {
          "id": "lndr_muthoot_01",
          "lender_name": "Muthoot Finance",
          "lender_gro_name": "Regional GRO",
          "lender_gro_email": "gro@muthoot.com",
          "lender_gro_contact_number": "+918000000101",
          "lender_gro_designation": "Grievance Officer",
          "lender_gro_address": "Kochi, Kerala",
          "lender_customer_support_link": "https://www.muthootfinance.com/contact-us",
          "lender_customer_support_contact_number": "+918000000102",
          "lender_customer_support_email": "support@muthoot.com"
        }
      ],
      "offers": [
        {
          "id": "ofr_gold_001",
          "accepted": true,
          "expired": false,
          "amount_principal": "220000",
          "amount_total_interest_payable": "26400",
          "amount_net_disbursed_amount": "218000",
          "offer_term": "12 months",
          "interest_rate": "12.0",
          "interest_type": "Fixed",
          "annual_percentage_rate": "12.8",
          "number_of_installments": 12,
          "cool_off_period": "3 days",
          "terms_and_conditions_link": "https://example.com/tc/ofr_gold_001",
          "key_facts_statement_link": "https://example.com/kfs/ofr_gold_001",
          "application_fees": "0",
          "foreclosure_fees": "1500",
          "interest_rate_conversion_charges": null,
          "delay_penalty_fees": "400",
          "other_penalty_fees": null,
          "processing_fees": "2000",
          "other_upfront_charges": null,
          "insurance_charges": null,
          "other_charges": null,
          "installments": []
        }
      ]
    }
  }
}

DISBURSED

{
  "tenant_id": "TENANT_ID",
  "application_id": "APPLICATION_ID",
  "borrower": {
    "id": "AL_BORROWER_ID",
    "provider_id": "BORROWER-123",
    "profile": {
      "personal": {
        "panName": "Rahul Sharma",
        "dob": "1995-06-20",
        "gender": "male",
        "personalemail": "rahul@example.com",
        "contactNumber": "+919876543210"
      },
      "work": {
        "employmentType": "selfEmployed",
        "officialemail": null,
        "income": 75000,
        "companyName": "Acme Jewels",
        "udyamNumber": null
      },
      "address": {
        "addressL1": "Flat 301, Sunrise Heights",
        "addressL2": "MG Road",
        "city": "Bengaluru",
        "state": "Karnataka",
        "pincode": "560001"
      },
      "gold_loan": {
        "userType": "individual",
        "constitution": null,
        "jewelleryWeightGrams": 52,
        "purity": "22K"
      }
    },
    "journey": {
      "id": "jrn_1b2c3d4e-55aa-4b21-9c11-7dd2e1b8a0ab",
      "endUse": "businessExpansion",
      "bureauConsent": true,
      "ondc_transaction_id": "c0a8012e-7b2f-4f2a-9e31-2f1e0c3a1a22",
      "created": "2026-01-05T12:45:00Z",
      "updated": "2026-01-05T14:05:00Z",
      "type": "GOLD_LOAN",
      "status": "DISBURSED",
      "activity_status": "ACTIVE",
      "decision_status": "APPROVED",
      "lender_mode": "OFFLINE",
      "kyc_status": "SUCCESS",
      "kyc_attempts": 1,
      "emandate_status": "SUCCESS",
      "emandate_attempts": 1,
      "esign_status": "SUCCESS",
      "esign_attempts": 1,
      "change_in_offer": false,
      "borrower_preferred_amount": 220000,
      "borrower_preferred_tenure": 12,
      "lenders": [
        {
          "id": "lndr_muthoot_01",
          "lender_name": "Muthoot Finance",
          "lender_gro_name": "Regional GRO",
          "lender_gro_email": "gro@muthoot.com",
          "lender_gro_contact_number": "+918000000101",
          "lender_gro_designation": "Grievance Officer",
          "lender_gro_address": "Kochi, Kerala",
          "lender_customer_support_link": "https://www.muthootfinance.com/contact-us",
          "lender_customer_support_contact_number": "+918000000102",
          "lender_customer_support_email": "support@muthoot.com"
        }
      ],
      "offers": [
        {
          "id": "ofr_gold_001",
          "accepted": true,
          "expired": false,
          "amount_principal": "220000",
          "amount_total_interest_payable": "26400",
          "amount_net_disbursed_amount": "218000",
          "offer_term": "12 months",
          "interest_rate": "12.0",
          "interest_type": "Fixed",
          "annual_percentage_rate": "12.8",
          "number_of_installments": 12,
          "cool_off_period": "3 days",
          "terms_and_conditions_link": "https://example.com/tc/ofr_gold_001",
          "key_facts_statement_link": "https://example.com/kfs/ofr_gold_001",
          "application_fees": "0",
          "foreclosure_fees": "1500",
          "interest_rate_conversion_charges": null,
          "delay_penalty_fees": "400",
          "other_penalty_fees": null,
          "processing_fees": "2000",
          "other_upfront_charges": null,
          "insurance_charges": null,
          "other_charges": null,
          "installments": [
            {
              "serial_number": 1,
              "type": "INSTALLMENT",
              "amount": "20500",
              "status": "NOT-DUE",
              "installment_due_date": "2026-02-05T00:00:00.000Z"
            },
            {
              "serial_number": 2,
              "type": "INSTALLMENT",
              "amount": "20500",
              "status": "NOT-DUE",
              "installment_due_date": "2026-03-05T00:00:00.000Z"
            }
          ]
        }
      ]
    }
  }
}

Payload rules

  • borrower.journey contains only the current journey. The old borrower.journeys array is no longer sent.
  • borrower.profile.personal, borrower.profile.work, and borrower.profile.address are always present structurally. Fields may be null when data is unavailable.
  • borrower.profile.gold_loan is included only for Gold Loan journeys.
  • borrower.journey.lenders contains every lender that has received the borrower form for this journey, even if no offer was returned.
  • borrower.journey.offers remains [] until offers exist. It must be [] for NOT_OFFERED.
  • offer.installments remains [] until the journey becomes DISBURSED.
  • REJECTED can happen from any earlier stage. The REJECTED example above shows one common path after redirection, but rejection may also arrive earlier.
  • Only curated business-facing fields are returned. Internal raw data, metadata, protocol traces, and implementation details are not included.

Payload rules

  • borrower.journey contains only the current journey. The old borrower.journeys array is no longer sent.
  • borrower.profile.personal, borrower.profile.work, and borrower.profile.address are always present structurally. Fields may be null when data is unavailable.
  • borrower.profile.gold_loan is included only for Gold Loan journeys.
  • borrower.journey.lenders contains every lender that has received the borrower form for this journey, even if no offer was returned.
  • borrower.journey.offers remains [] until offers exist. It must be [] for NOT_OFFERED.
  • offer.installments remains [] until the journey becomes DISBURSED.
  • REJECTED can happen from any earlier stage. The REJECTED example above shows one common path after redirection, but rejection may also arrive earlier.
  • Only curated business-facing fields are returned. Internal raw data, metadata, protocol traces, and implementation details are not included.

On this page