Hypothecation Fetch and Termination — MoRTH

Created by Rajatha B M, Modified on Fri, 27 Mar at 2:33 PM by Rajatha B M

What does this API do?

The MoRTH Vehicle Hypothecation service (provider code 156) provides two operations for lenders managing vehicle loans:

  • Hypothecation Fetch (vehicle-hypothecation-details) — Retrieves the current and historical hypothecation (lien) status for a vehicle, including financer name, HP start/end dates, and active status.
  • Hypothecation Termination (vehicle-hypothecation-termination) — Submits a request to MORTH to terminate an active hypothecation entry for a vehicle upon loan closure.

Both APIs use a hybrid encryption scheme (AES-256-GCM for payload, RSA-2048-OAEP for key protection) for request and response data. The encrypted payload is base64-encoded and passed in the data field.

Who can use it?

Lenders and financial institutions onboarded to the ULI Platform who have subscribed to the MoRTH Hypothecation service in the Developer Portal.

What are the prerequisites?

Complete all common platform prerequisites as described in Getting Started with ULI Platform APIs.

In addition, the following are specific to this service:

  • Payload encryption: Request data must be encrypted using the hybrid AES-256-GCM + RSA-2048-OAEP scheme described in the API specification (Section 8). The ULI Platform's public key (shared during onboarding) is used to protect the AES session key. The encrypted JSON is base64-encoded and submitted as the data field.
  • Lender ID: A lender_ID (8-character string prefixed S) is assigned by RBIH and must be included in each request payload.
  • Ensure the MoRTH service is subscribed separately for Sandbox and Production in the Dev Portal.

What are the API endpoints?

ServicePurposeSandbox URLProduction URLMethod
vehicle-hypothecation-details Fetch hypothecation details for a vehicle https://extgw.nonprod.rbihub.io/vehicle-hypothecation-details/1.0/en https://extgw.api.rbihub.io/vehicle-hypothecation-details/1.0/en POST
vehicle-hypothecation-termination Submit hypothecation termination for a vehicle https://extgw.nonprod.rbihub.io/vehicle-hypothecation-termination/1.0/en https://extgw.api.rbihub.io/vehicle-hypothecation-termination/1.0/en POST

What headers must be sent?

The following headers apply to both endpoints:

HeaderDescriptionRequired
AuthorizationJWT Bearer token from the Authentication APIMandatory
client-IDBase64-encoded Client ID from onboardingMandatory
provider-ID156 for MoRTHMandatory
timestampDate and time of request in format YYYY-MM-DDTHH:mm:ss.SSSZMandatory
request-IDUnique alphanumeric request identifier provided by the lenderMandatory
customer-consentBoolean — must be true indicating customer consent has been obtainedMandatory
x-env-routeSet to /sb for Sandbox onlySandbox only

What does the request body look like?

Both endpoints accept a JSON body with an encrypted data field and an HMAC:

{
  "hmac": "SHA-256 hash of the encrypted data value",
  "data": "base64(JSON{ sessionKey: base64(RSA(AES_KEY)), sessionId: base64(RSA(IV)), payload: base64(AES-GCM(DATA)) })"
}

The plain-text JSON payload (before encryption) differs by endpoint:

vehicle-hypothecation-details payload fields

FieldDescriptionData Type
registration_NumVehicle registration numberString (max 10 chars)
chassis_NumLast 5 digits of the chassis numberString (5 chars)
lender_IDLender ID provided by RBIH (e.g., S1234567)String (8 chars)
loan_Acct_NumLoan account numberString (1–50 chars)
owner_nameVehicle owner nameString (1–35 chars)

vehicle-hypothecation-termination payload fields

FieldDescriptionData Type
registration_NumVehicle registration numberString (max 10 chars)
chassis_NumLast 5 digits of the chassis numberString (5 chars)
termination_dateHypothecation termination date (format: YYYY-MM-DD)Date
lender_IDLender ID provided by RBIHString (8 chars)
loan_Acct_NumLoan account numberString (1–50 chars)
owner_nameVehicle owner nameString (1–35 chars)

What does the response contain?

The response body contains an encrypted data field. After decryption (using the same hybrid scheme with the lender's private key), the plain-text JSON contains the following fields.

vehicle-hypothecation-details decrypted response

FieldDescription
response_code1 for success
response_messageHuman-readable outcome message
registration_numVehicle registration number
chassis_numFull chassis number
engine_numEngine number
owner_nameRegistered owner name
financer_details[].financer_nameName of the financer/lender on record
financer_details[].is_activeWhether this hypothecation entry is currently active
financer_details[].hp_start_dateHypothecation start date
financer_details[].hp_end_dateHypothecation end date (NA if active)
financer_details[].statusStatus message for the hypothecation entry

vehicle-hypothecation-termination decrypted response

FieldDescription
response_code1 for success
response_messageConfirmation message including the MORTH reference ID and vehicle number
reference_numberMORTH-assigned reference number for the termination request
termination_request_dateDate and time the termination was submitted to MORTH

Common response envelope fields

FieldDescription
meta.response_idUnique request ID provided by the lender
meta.provider_nameAlways MORTH
meta.timestampResponse timestamp in YYYY-MM-DDTHH:mm:ss.SSSZ format
security.signatureDigital signature of the response data
security.hmacSHA-256 hash of the response data
security.public_keyPlatform public key for source verification

On failure, the data array contains error_code and error_message. Error codes follow the pattern E-MORT-P-XXX (platform error) or E-MORT-D-XXX (provider/MORTH error).

What are the error codes?

Error codes are structured as:

  • E-MORT-P-XXX — Error originating from the ULI Platform layer
  • E-MORT-D-XXX — Error originating from the MORTH provider

Example: E-MORT-P-001 — Missing mandatory header parameter. Refer to the Latest Platform Error Code document on the Dev Portal for the complete list.

Who do I contact for support?

Write to support@rbihub.in with the following details:

  • Subject: MoRTH Hypothecation API Error
  • Service Name: Vehicle Hypothecation (MoRTH)
  • Environment: Sandbox / Production
  • Service Provider code: 156 (MoRTH)
  • Request Payload (headers and body)
  • Error Code and Error Message received
  • Screenshot or log of the error
  • Prerequisites status: IP Whitelisting, URL Whitelisting, Service Subscription, Token Generation

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article