LPG Id Verification
1 endpoint · Core API
What is LPG ID Verification?
The LPG ID Verification API validates 17-digit LPG IDs issued by LPG suppliers across India, ensuring the secure authentication of LPG connections. It enables reliable access to information related to LPG connections, enhancing the overall authentication process and ensuring the legitimacy of connections nationwide. By offering seamless verification, this API plays a crucial role in preventing unauthorized access and fraudulent activities associated with LPG connections. With its robust authentication mechanism, it provides peace of mind to both consumers and suppliers, fostering trust and transparency in the LPG supply chain.
Benefits
- 1. Secure authentication of LPG connections
- 2. Reliable access to information related to LPG IDs
- 3. Prevention of unauthorized access and fraudulent activities
- 4. Enhanced trust and transparency in the LPG supply chain
What you can do
This API verifies 17-digit LPG IDs issued by LPG suppliers nationwide, ensuring secure authentication of LPG connections and facilitating reliable access to information.
No biller code needed — the LPG ID identifies everything.
This API accepts only the 17-digit LPG ID. You do not need to send a separate biller or service-provider field: the LPG ID itself encodes the oil company and the distributor.
The distributor is returned to you in the response — distributorCode, distributorName and distributorAddress.
Supported LPG service providers
We currently support all 3 LPG oil companies in India:
| # | Service provider |
|---|---|
| 1 | Bharat Gas |
| 2 | HP |
| 3 | Indane Gas |
Get LPG Id verification details
Headers
- X-API-KEYstringrequiredYour secret API key for the environment you are calling (Stage and Live use different keys).
- X-API-APP-IDstringrequiredThe App ID issued together with the key.
- Content-Typestringrequiredapplication/json
Body parameters
application/json- consentstringrequiredRequired. The end user's consent to this verification. Send `Y`.minLength 1default Y
- consent_textstringrequiredRequired. The consent statement shown to the end user. Send the default text from the sample.minLength 1default I hear by declare my consent agreeme…
- request_idstringoptionalOptional. Your own id to correlate this call in your logs. A unique id is generated if you leave it out.nullable
- lpgIdstringrequiredRequired. The 17-digit LPG ID printed on the consumer card, digits only (0-9). It identifies the oil company and distributor. Do not send the shorter distributor consumer number.length 17pattern ^\d{17}$default 10000000051234567
Sample request body
Responses
200OK
- successbooleanoptionalNo description.
- statusCodeinteger (int32)optionalNo description.default 200
- messagestringoptionalNo description.nullabledefault XXXXX
- dataobjectoptionalResponse model containing LPG ID verification details.
20 fields
- statusstringoptionalGets or sets the status of the LPG connection.nullable
- approximateSubsidyAvailedstringoptionalGets or sets the approximate subsidy amount availed by the consumer.nullable
- subsidizedRefillConsumedstringoptionalGets or sets the number of subsidized refills consumed.nullable
- pinstringoptionalGets or sets the PIN code of the consumer's address.nullable
- consumerEmailstringoptionalGets or sets the email address of the consumer.nullable
- distributorCodestringoptionalGets or sets the distributor code.nullable
- bankNamestringoptionalGets or sets the name of the bank linked to the subsidy account.nullable
- ifscCodestringoptionalGets or sets the IFSC code of the linked bank branch.nullable
- cityTownstringoptionalGets or sets the city or town of the consumer.nullable
- aadhaarNostringoptionalGets or sets the Aadhaar number linked to the LPG connection.nullable
- consumerContactstringoptionalGets or sets the contact number of the consumer.nullable
- distributorAddressstringoptionalGets or sets the address of the distributor.nullable
- consumerNamestringoptionalGets or sets the name of the consumer.nullable
- consumerNostringoptionalGets or sets the consumer number.nullable
- distributorNamestringoptionalGets or sets the name of the distributor.nullable
- bankAccountNostringoptionalGets or sets the bank account number linked to the subsidy.nullable
- givenUpSubsidystringoptionalGets or sets whether the consumer has given up the LPG subsidy.nullable
- consumerAddressstringoptionalGets or sets the address of the consumer.nullable
- lastBookingDatestringoptionalGets or sets the date of the last LPG refill booking.nullable
- totalRefillConsumedstringoptionalGets or sets the total number of refills consumed.nullable
- messagesarray<string>optionalNo description.nullable
- request_idstringoptionalNo description.nullable
- isBillablebooleanoptionalWhether this request was charged: true if it was, false if not. Errors always show false. Flows that finish later (ITR Fetch, SHCIL eStamp, DigiLocker, eSign) show false here, because the charge is made when the result is ready. eSign charges each signer when they complete signing. DigiLocker deducts the credit when the link is created and refunds it automatically if the link expires before the user completes it.
400Bad Request
- dataobjectoptionalNo description.
- messagesarray<string>optionalNo description.nullable
- request_idstringoptionalNo description.nullable
- successbooleanoptionalNo description.default false
- messagestringoptionalNo description.nullabledefault XXXXX
- isBillablebooleanoptionalNo description.
- statusCodeinteger (int32)optionalNo description.default 400
401Unauthorized
- dataobjectoptionalNo description.
- messagesarray<string>optionalNo description.nullable
- request_idstringoptionalNo description.nullable
- successbooleanoptionalNo description.default false
- messagestringoptionalNo description.nullabledefault XXXXX
- isBillablebooleanoptionalNo description.
- statusCodeinteger (int32)optionalNo description.default 401
500Internal Server Error
- dataobjectoptionalNo description.
- messagesarray<string>optionalNo description.nullable
- request_idstringoptionalNo description.nullable
- successbooleanoptionalNo description.default false
- messagestringoptionalNo description.nullabledefault XXXXX
- isBillablebooleanoptionalNo description.
- statusCodeinteger (int32)optionalNo description.default 500