Overview
Offer Engine & EMI as a Service is a payment-processor-agnostic SaaS platform that lets you enable offers and EMI across your merchant ecosystem using a simple set of APIs. Leverage Pine Labs’ existing integrations with banks and brands to power discounts, EMI, and co-funded programs—without building or maintaining complex offer logic or issuer integrations.
Launch Faster
Minimal engineering effort with quick go-live for offers and EMI programs.
No Direct Integrations
Eliminate integrations with issuing banks and brands entirely.
Scale Instantly
Scale affordability programs across merchants with zero friction.
Reduce Overhead
Lower operational burden for managing offer rules and EMI logic.
Improve Conversions
Drive higher conversion rates and average order value (AOV).
Use Existing Rails
Continue using your current payment infrastructure.
Key Features
Launch Faster
Minimal engineering effort with quick go-live for offers and EMI programs.
No Direct Integrations
Eliminate integrations with issuing banks and brands entirely.
Scale Instantly
Scale affordability programs across merchants with zero friction.
Reduce Overhead
Lower operational burden for managing offer rules and EMI logic.
Improve Conversions
Drive higher conversion rates and average order value (AOV).
Use Existing Rails
Continue using your current payment infrastructure.
Everything you need to power modern affordability programs.
EMI as a Service
Enable Bank EMI, Brand EMI, and Split EMI using Pine Labs' issuer integrations.
Unified Offer Engine
Support bank-funded, brand-funded, merchant-funded, and co-funded offers.
Real-Time Offer Discovery & Validation
Fetch eligible offers and validate them instantly during checkout.
Built-In Controls
Automatic handling of budgets, velocity limits, and eligibility rules.
Self-Serve Dashboard Access
View offers, budgets, redemptions, and performance insights in real time.
Scalable & SaaS-Ready
Designed for high-volume, multi-merchant environments like PGs and PAs.
How It Works
Simple integration that fits seamlessly into your checkout flow.
Integrate Once
Connect with the Pine Labs Offer Engine using a concise set of APIs.
Onboard Your Merchants
Onboard your merchants through APIs, assigning each a unique client ID.
Discover Offers at Checkout
At the checkout stage, use the Offer Discovery API to retrieve eligible offers and EMI plans.
Validate the Selected Offer
Prior to payment, utilize the Offer Validation API to confirm the eligibility of the selected offer.
Complete the Transaction
After payment has been made, call the Complete Payment API to document the usage of the offer or EMI.
Get Transaction Details
You can access transaction details at any time using the Get Transaction API.
✓ No separate integrations with banks or brands required
Offer Module APIs
The table below provides a list of Offer Engine APIs that you can use to efficiently manage offers.
| Generate Token | POST /pinelabs/protocol/openid-connect/token |
| Client Onboarding | POST /api/affordability/v1/offer/clients |
| Offers Discovery | POST /api/affordability/v1/offer/discovery |
| Offer Validation | POST /api/affordability/v1/offer/validate |
| Complete Payment | POST /api/affordability/v1/offer/complete-payment |
| Create Refund | POST /api/affordability/v1/offer/refund-payment |
| Get Transaction Details | POST /api/affordability/v1/offer/get-txn-by-id |
Integration Steps
Learn how to integrate with Pine Labs Offer Engine to provide your merchants with a seamless shopping experience.
- Ensure you store your Client ID and Secret in your Backend securely.
- Integrate our APIs on your backend system.
- We strictly recommend not to call our APIs from the frontend.
- Failure to adhere to the above guidelines may result in legal implications. In such cases, you will be held responsible for any damage or loss arising from non-compliance.
Follow the steps below to integrate the Pine Labs Offer Engine with your payment gateway.
1. Generate Token
Integrate our Generate Token API in your backend servers to generate the access token. Use the token generated to authenticate Offer Engine APIs.
| Endpoint | POST /pinelabs/protocol/openid-connect/token |
|---|
Below are the sample requests and response for the Generate Token API.
- cURL
- Response
curl --location 'https://identity.pinelabs.com/realms/pinelabs/protocol/openid-connect/token' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --header 'Request-Timestamp: 2024-07-09T07:57:08.022Z' \ --header 'Request-ID: c17ce30f-f88e-4f81-ada1-c3b4909ed235' \ --header 'Merchant-ID: 123456' \ --data '{ "client_id": "client_id", "client_secret": "client_secret", "grant_type": "client_credentials" }'
{ "access_token": "{access_token}", "expires_in": 900, "refresh_expires_in": 0, "token_type": "Bearer", "not-before-policy": 0, "scope": "String", "account_id": "String", "account_name": "String", "partnerId": "String" }
- Header Parameters
- Request Parameters
- Response Parameters
The table below lists the header parameters of our Generate Token API.
| Parameter | Type | Description |
|---|---|---|
| Request-Timestamp | string |
Timestamp of the request. Example: 123456 |
| Request-ID | string |
Unique request identifier. |
| accept | string |
Accepted header format. Example: application/json |
| content-type | string |
Accepted content type. Example: application/json |
The table below lists the request parameters of our Generate Token API.
| Parameter | Type | Description |
|---|---|---|
| client_id REQUIRED | string |
Unique client identifier in the Plural database. Example: a17ce30e-f88e-4f81-ada1-c3b4909ed232Note: The Onboarding team has provided you with this information as part of the onboarding process. |
| client_secret REQUIRED | string |
Unique client secret key provided while onboarding. Example: fgwei7egyhuggwp39w8rhNote: The Onboarding team has provided you with this information as part of the onboarding process. |
| grant_type REQUIRED | string |
The grant type to generate an access token. Accepted value: client_credentials
|
The table below lists the response parameters of our Generate Token API.
| Parameter | Type | Description |
|---|---|---|
| access_token | string |
The access token generated by the system.
eyJhbGciOiJIUzI1NiIsInNote: Use this token in the authorization headers to authenticate Plural APIs. |
| expires_in | string |
Time (in milliseconds) after which the token will expire. Example: 2024-06-28T13:26:06.909140Z
|
| refresh_expires_in | string |
Time (in milliseconds) after which the refresh token will expire. Example: 2024-06-28T13:26:06.909140Z
|
| token_type | string |
Type of Token. Example: Bearer
|
| scope | string |
Scopes of the token. Example: 2024-06-28T13:26:06.909140Z
|
| account_id | string |
Unique identifier of the account. Example: 2024-06-28T13:26:06.909140Z
|
| account_name | string |
Account name. Example: Kevin Bob
|
| partnerId | string |
Unique identifier of the partner. Example: 2024-06-28T13:26:06.909140Z
|
Error Codes
The table below lists the possible error codes returned by the Generate Token API.
| Error Code | Description | Details |
|---|---|---|
| 200 | OK | Response JSON returned successfully. |
| 401 | Unauthorized | Invalid client or Invalid client credentials. |
| 401 | Unauthorized | Missing form parameter: grant_type. |
2. Client Onboarding
Integrate our Client Onboarding API in your backend servers to onboard the clients.
| Endpoint | POST /api/affordability/v1/offer/clients |
|---|
Below are the sample requests and response for the Client Onboarding API.
- cURL
- Response
curl --request POST \ --url https://api-affordability.pinelabs.com/api/affordability/v1/offer/clients \ --compressed \ --header 'Accept-Encoding: gzip' \ --header 'Authorization: Bearer <your_token_here>' \ --header 'Content-Type: application/json' \ --header 'Request-ID: c17ce30f-f88e-4f81-ada1-c3b4909ed235' \ --header 'Request-Timestamp: 2024-07-09T07:57:08.022Z' \ --header 'accept: application/json' \ --data '{ "name": "SHRIRAM GENERAL INSURANCE COM LTD EASEBUZZ PG", "external_id": "353467", "channel": "ONLINE", "type": "MERCHANT", "display_name": "SHRIRAMGI", "details": { "address1": "GROUND Floor TO 2ND FLOOR, E-8, Rajasthan, 302022", "country": "INDIA", "state": "Rajasthan", "city": "Jaipur", "pincode": "302022", "email_id": "digitalcms@shriramgi.com", "mcc": "Insurance, INSURANCE PREMIUMS, INSURANCE OTHER, INSURANCE BROKERS, INSURANCE AGENTS", } }'
{ "id": "300" }
- Header Parameters
- Request Parameters
- Response Parameters
The table below lists the header parameters of our Client Onboarding API.
| Parameter | Type | Description |
|---|---|---|
| Correlation-ID REQUIRED | string |
For request tracing. Note: This value must be generated by you. |
| Content-Type | string |
Content type. Example: application/json |
| Accept | string |
Accept header. Example: application/json |
| payment-processor REQUIRED | string |
Payment processor. Example: ICICI, JusPay |
The table below lists the request parameters of our Client Onboarding API.
| Parameter | Type | Description |
|---|---|---|
| name REQUIRED | string |
Customer's name.
KevinSupported Characters:
|
| external_id REQUIRED | string |
Unique identifier of the external reference Id. Example: fgwei7egyhuggwp39w8rh |
| channel REQUIRED | string |
Type of channel. Possible value:
|
| type REQUIRED | string |
Client category. Possible value: MERCHANT
|
| display_name REQUIRED | string |
Name to be displayed. Example: Kevin
|
| details REQUIRED | string |
An object that contains client informations. Learn more about our details child object.
|
Details Child Object
The table below lists the various parameters in the details object. This is part of the client onboarding request object.
| Parameter | Type | Description |
|---|---|---|
| address1 | string |
Address line 1 of the client. Example: 10 Downing Street Westminster London |
| country | string |
Country of the client. Example: INDIA |
| state | string |
State of the client. Example: Karnataka |
| city | string |
City of the client. Example: Bangalore |
| pincode | string |
Pincode of the client. Example: 560100 |
| email_id | string |
Email ID of the client. Example: kevin.bob@example.com |
| mcc | string |
Merchant Category Code. Example: 1234 |
| instant_discount_settlement_enabled | string |
Status of the Instant discount settlement enablement. Possible values:
|
| instant_subvention_settlement_enabled | string |
Status of the Instant subvention settlement enablement. Possible values:
|
| is_aggregator_model | string |
Type of aggregator model. Possible Values:
Example: Y |
The table below lists the response parameters of our Client Onboarding API.
| Parameter | Type | Description |
|---|---|---|
| id | string |
Unique identifier of the client in Pine Labs database. Example: 300Note: Storing this value on your side is optional. |
Error Codes
The table below lists the possible error codes returned by the Client Onboarding API.
| Error Code | Description | Details |
|---|---|---|
| 200 | OK | Response JSON returned successfully. |
| 401 | Unauthorized | Invalid client or Invalid client credentials. |
| 401 | Unauthorized | Missing form parameter: grant_type. |
| 422 | Unprocessable Entity | Parent External Id is required for Client as Store. |
| 409 | Conflict | The specified resource already exists. |
| 400 | Bad Request | HEADER_MISSING. |
3. Offer Discovery
Use this API to fetch available offers based on order amount and other parameters. This API also helps merchants find eligible EMI and other payment options for customers based on their order amount and product details.
| Endpoint | POST /api/affordability/v1/offer/discovery |
|---|
Below are the sample requests and response for the Offer Discovery API.
- cURL
- Response
curl --request POST \ --url https://api-affordability.pinelabs.com/api/affordability/v1/offer/discovery \ --compressed \ --header 'Accept-Encoding: gzip' \ --header 'Authorization: Bearer <your_token_here>' \ --header 'Content-Type: application/json' \ --header 'Request-ID: c17ce30f-f88e-4f81-ada1-c3b4909ed235' \ --header 'Request-Timestamp: 2024-07-09T07:57:08.022Z' \ --header 'accept: application/json' \ --header 'Merchant-ID: 123456' \ --data '{ "order_amount": { "currency": "INR", "value": 1200000 }, "product_details": [ { "product_code": "xyz", "product_amount": { "currency": "INR", "value": 1200000 }, "product_coupon_discount_amount": { "currency": "INR", "value": 1200000 } } ], "issuer": { "bin": 37474200 }, "cart_coupon_discount_amount": { "currency": "INR", "value": 1200000 } }'
{ "issuers": [ { "id": "1", "name": "ICICI CC", "display_name": "ICICI BANK", "issuer_type": "CC_BANK", "priority": 1, "tenures": [ { "tenure_id": "3", "name": "9 Months", "tenure_type": "MONTH", "tenure_value": 9, "issuer_offer_parameters": [ { "program_type": "BANK_EMI", "offer_id": "4357", "offer_parameter_id": "220257" } ], "details": [ { "product_code": "xyz", "product_display_name": "OnePlus 11", "brand_id": "5", "brand_name": "OnePlus", "product_amount": { "currency": "INR", "value": 1200000 }, "product_coupon_discount_amount": { "currency": "INR", "value": 12000 }, "interest_amount": { "currency": "INR", "value": 42042 }, "interest_rate": 8.5, "cart_coupon_discount_product_share": { "currency": "INR", "value": 12000 }, } ], "loan_amount": { "currency": "INR", "value": 1176000 }, "net_payment_amount": { "currency": "INR", "value": 1218042 }, "monthly_emi_amount": { "currency": "INR", "value": 135338 }, "total_emi_amount": { "currency": "INR", "value": 1218042 }, "interest_amount": { "currency": "INR", "value": 42042 }, "interest_rate_percentage": 8.5, "processing_fee_details": { "percentage": 2, "amount": { "currency": "INR", "value": 20000 } }, "cart_coupon_discount_amount": { "currency": "INR", "value": 12000 } "emi_type": "STANDARD", "total_coupon_discount": { "currency": "INR", "value": 24000 } }, { "tenure_id": "1", "name": "3 Months", "tenure_type": "MONTH", "tenure_value": 3, "issuer_offer_parameters": [ { "program_type": "BANK_EMI", "offer_id": "4357", "offer_parameter_id": "220257" } ], "details": [ { "product_code": "xyz", "product_display_name": "OnePlus 11", "brand_id": "5", "brand_name": "OnePlus", "product_amount": { "currency": "INR", "value": 1200000 }, "product_coupon_discount_amount": { "currency": "INR", "value": 12000 }, "interest_amount": { "currency": "INR", "value": 31479 }, "interest_rate": 15.99, "cart_coupon_discount_product_share": { "currency": "INR", "value": 12000 }, } ], "loan_amount": { "currency": "INR", "value": 1176000 }, "net_payment_amount": { "currency": "INR", "value": 1207479 }, "monthly_emi_amount": { "currency": "INR", "value": 402493 }, "total_emi_amount": { "currency": "INR", "value": 1207479 }, "interest_amount": { "currency": "INR", "value": 31479 }, "interest_rate_percentage": 15.99, "processing_fee_details": { "percentage": 0, "amount": { "currency": "INR", "value": 19900 } }, "cart_coupon_discount_amount": { "currency": "INR", "value": 12000 } "emi_type": "STANDARD", "total_coupon_discount": { "currency": "INR", "value": 24000 } }, { "tenure_id": "2", "name": "6 Months", "tenure_type": "MONTH", "tenure_value": 6, "issuer_offer_parameters": [ { "program_type": "BANK_EMI", "offer_id": "4357", "offer_parameter_id": "220257" } ], "details": [ { "product_code": "xyz", "product_display_name": "OnePlus 11", "brand_id": "5", "brand_name": "OnePlus", "product_amount": { "currency": "INR", "value": 1200000 }, "product_coupon_discount_amount": { "currency": "INR", "value": 12000 }, "interest_amount": { "currency": "INR", "value": 55452 }, "interest_rate": 15.99, "cart_coupon_discount_product_share": { "currency": "INR", "value": 12000 }, } ], "loan_amount": { "currency": "INR", "value": 1176000 }, "net_payment_amount": { "currency": "INR", "value": 1231452 }, "monthly_emi_amount": { "currency": "INR", "value": 205242 }, "total_emi_amount": { "currency": "INR", "value": 1231452 }, "interest_amount": { "currency": "INR", "value": 55452 }, "interest_rate_percentage": 15.99, "processing_fee_details": { "percentage": 0, "amount": { "currency": "INR", "value": 19900 } }, "cart_coupon_discount_amount": { "currency": "INR", "value": 12000 } "emi_type": "STANDARD", "total_coupon_discount": { "currency": "INR", "value": 24000 } } ], "issuer_data": {} } ] }
- Header Parameters
- Request Parameters
- Response Parameters
The table below lists the header parameters of our Offer Discovery API.
| Parameter | Type | Description |
|---|---|---|
| Merchant-ID REQUIRED | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
| Correlation-ID REQUIRED | string |
For request tracing. Note: This value must be generated by you. |
The table below lists the request parameters of our Offer Discovery API.
| Parameter | Type | Description |
|---|---|---|
| order_amount REQUIRED | object |
An object that contains the transaction amount details. Learn more about the order_amount child object. |
| product_details | array of objects |
Mandatory for Brand EMI An array of objects that contains the product details. Learn more about the product_details child object. |
| cart_coupon_discount_amount | object |
An object that contains the cart coupon discount amount details. Learn more about the cart_coupon_discount_amount child object. |
Order Amount [Child Object]
The table below lists the various parameters in the order_amount object. This is part of the offer discovery Bank EMI request object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount in Paisa.
1000 |
Product Details [Child Object]
The table below lists the various parameters in the order_amount object. This is part of the offer discovery request object.
| Parameter | Type | Description |
|---|---|---|
| product_code REQUIRED | String |
Unique Product identifier of the product. Example: redmi_1 |
| product_amount REQUIRED | object |
An object that contains the product amount details. Learn more about the product_amount child object. |
| product_coupon_discount_amount | object |
An object that contains the product coupon discount details. Learn more about the product_coupon_discount_amount child object. |
Product Amount [Child Object]
The table below lists the various parameters in the product_amount child object. This object is part of the product_details object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
1000 |
| currency REQUIRED | string |
Type of currency. Example: INR |
Product Coupon Discount Amount [Child Object]
The table below lists the various parameters in the product_coupon_discount_amount child object. This object is part of the product_details object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
1000 |
| currency REQUIRED | string |
Type of currency. Example: INR |
Cart Coupon Discount Amount [Child Object]
The table below lists the various parameters in the cart_coupon_discount_amount child object. This object is part of the offer Discovery request object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.100 (₹1)100000000 (₹10 lakh)1000 |
| currency REQUIRED | string |
Type of currency. Example: INR |
The table below lists the Response parameters of our Offer Discovery API.
| Parameter | Type | Description |
|---|---|---|
| issuers | array of objects |
List of issuers providing offers. Learn more about our issuers object. |
Issuers [Child Object]
The table below lists the various parameters in the issuers object. This is part of the offer discovery API response object.
| Parameter | Type | Description |
|---|---|---|
| tenures | array of objects |
An array of objects that contains the tenures details. Learn more about the tenures child object. |
| issuer_data | objects |
An object that contains the issuer data details. Learn more about the issuer_data child object. |
| id | String |
Unique identifier of the issuer id in the Plural database. Example: 23 |
| name | String |
Name of the Issuer. Example: INDUSIND CC |
| display_name | string |
Name of the issuer offering the offer. Example: INDUSIND |
| issuer_type | String |
The type of the Issuer offering the offer. Accepted values:
|
| priority | integer |
The priority of the issuer providing the offer. Example: 1 |
| discount | objects |
An object that contains the discount details. Learn more about the discount child object. |
| loan_amount | objects |
An object that contains the loan amount details. Learn more about the loan_amount child object. |
| total_discount_amount | objects |
An object that contains the total discount amount details. Learn more about the total_discount_amount child object. |
| net_payment_amount | objects |
An object that contains the net payment amount details. Learn more about the net_payment_amount child object. |
| monthly_emi_amount | objects |
An object that contains the monthly emi amount details. Learn more about the monthly_emi_amount child object. |
| total_emi_amount | objects |
An object that contains the total emi amount details. Learn more about the total_emi_amount child object. |
| interest_amount | objects |
An object that contains the interest amount details. Learn more about the interest_amount child object. |
| total_subvention_amount | objects |
An object that contains the total subvention amount details. Learn more about the total_subvention_amount child object. |
| processing_fee_details | objects |
An object that contains the processing fee details. Learn more about the processing_fee_details child object. |
| convenience_fee_breakdown | objects |
An object that contains the convenience fee breakdown details. Learn more about the convenience_fee_breakdown child object. |
| cart_coupon_discount_amount | objects |
An object that contains the cart coupon discount amount details. Learn more about the cart_coupon_discount_amount child object. |
| total_coupon_discount | objects |
An object that contains the total coupon discount details. Learn more about the total_coupon_discount child object. |
Tenures [Child Object]
The table below lists the various parameters in the tenures object. This is part of the offer discovery Bank EMI response object.
| Parameter | Type | Description |
|---|---|---|
| tenure_id | String |
Tenure id in the Plural database. Example: 1 |
| name | String |
The name of the Issuer offering the offer. Example: 3 Months |
| tenure_type | String |
The type of the Tenure. Accepted values:
|
| tenure_value | integer |
The value of the tenure. Example: 3 |
| issuer_offer_parameters | array of objects |
An array of objects that contains the issuer_offer_parameters details.Learn more about the issuer_offer_parameters child object. |
| details | array of objects |
An array of objects that contains the product details.Learn more about the details child object. |
| loan_amount | object |
An object that contains the loan amount details. Learn more about the loan_amount child object. |
| net_payment_amount | object |
An object that contains the net payment amount details. Learn more about the net_payment_amount child object. |
| monthly_emi_amount | object |
An object that contains the monthly EMI amount details. Learn more about the monthly_emi_amount child object. |
| total_emi_amount | object |
An object that contains the total EMI amount details. Learn more about the total_emi_amount child object. |
| interest_amount | object |
An object that contains the interest amount details. Learn more about the interest_amount child object. |
| interest_rate_percentage | float |
Interest rate percentage for the tenure. Example: 16.90 |
| processing_fee_details | object |
An object that contains the processing fee details. Learn more about the processing_fee_details child object. |
| cart_coupon_discount_amount | object |
An object that contains the cart coupon discount amount details. Learn more about our cart_coupon_discount_amount child object. |
| emi_type | strings |
Type of EMI. Example: STANDARDAccepted values:
|
| total_coupon_discount | object |
An object that contains the total coupon discount details. Learn more about our total_coupon_discount child object. |
Issuer Offer Parameters [Child Object]
The table below lists the various parameters in the issuer_offer_parameters child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| program_type | String |
Indicates the program type associated with the given offer. Possible values:
|
| offer_id | String |
Unique identifier of the offer. Example: 1 |
| offer_parameter_id | String |
Unique identifier of the parameter which is the part of the offer. Example: 1 |
Details [Child Object]
The table below lists the various parameters in the details child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| product_code | String |
Unique Product identifier of the product. Example: redmi_1 |
| product_display_name | string |
Name of the Product. Example: Oneplus 13R |
| brand_id | String |
Unique brand identifier of the product. Example: 3 |
| product_offer_parameters | array of objects |
An array of objects that contains the product offer schemes for the product EMI details. Learn more about the product_offer_parameters child object. |
| product_amount | object |
An object that contains the product amount details. Learn more about the product_amount child object. |
| product_coupon_discount_amount | object |
An object that contains the product coupon discount amount details. Learn more about the product_coupon_discount_amount child object. |
| subvention | object |
An object that contains the subvention details. Learn more about the subvention child object. |
| discount | object |
An object that contains the product discount details. Learn more about the discount child object. |
| brand_name | string |
Name of the Brand. Example: Oneplus |
| interest_amount | object |
An object that contains the interest amount details. Learn more about the interest_amount child object. |
| interest_rate | double |
Rate of interest applied on the product. Example: 2 |
| cart_coupon_discount_product_share | object |
An object that contains the cart coupon discount product share details. Learn more about the cart_coupon_discount_product_share child object. |
Product Offer Parameters [Child Object]
The table below lists the various parameters in the product_offer_parameters child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| program_type | String |
Type of the Program. Example: BRAND_EMIAccepted values:
|
| offer_id | string |
Unique identifier of the offer. Example: 309 |
| offer_parameter_id | string |
Unique offer parameter identifier. Example: 20 |
Product Amount [Child Object]
The table below lists the various parameters in the product_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount in Paisa.
1000 |
Product Coupon Discount Amount [Child Object]
The table below lists the various parameters in the product_coupon_discount_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount in Paisa.
1000 |
Subvention [Child Object]
The table below lists the various parameters in the subvention child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| subvention_type | String |
Type of subvention. Example: INSTANTAccepted values:
|
| offer_type | string |
Type of the offer. Accepted values:
|
| percentage | integer |
Transaction amount is Paisa.
1000 |
| amount | object |
An object that contains the subvention amount details. Learn more about the amount child object. |
| breakup | object |
An object that contains the subvention breakup details. Learn more about the breakup child object. |
| max_amount | object |
An object that contains the maximum subvention amount details. Learn more about the max_amount child object. |
| min_amount | object |
An object that contains the minimum subvention amount details. Learn more about the min_amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Breakup [Child Object]
The table below lists the various parameters in the breakup child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| brand | object |
An object that contains the breakup details of the brand. Learn more about the brand child object. |
Brand [Child Object]
The table below lists the various parameters in the brand child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details of the brand. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the brand object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Max Amount [Child Object]
The table below lists the various parameters in the max_amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Min Amount [Child Object]
The table below lists the various parameters in the min_amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Discount [Child Object]
The table below lists the various parameters in the discount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| discount_type | String |
Type of discount. Possible values:
|
| discount_string | string |
The additional discount provided by the offering entity after a specific period. Example: 1000 |
| percentage | Double |
The discount percentage provided by the offering entity. Example: 16.90 |
| amount | string |
Discount amount. Example: 2000 |
| max_amount | object |
An object that contains the maximum discount amount details. Learn more about the max_amount child object. |
| min_amount | object |
An object that contains the minimum discount amount details. Learn more about the min_amount child object. |
| discount_deferred_duration_value | integer |
The duration value for the deferred discount. Example: |
| discount_deferred_duration_type | string |
Discount duration type deferred. Possible values:
|
| breakup | object |
An object that contains the product offer details with breakup. Learn more about the breakup child object. |
Max Amount [Child Object]
The table below lists the various parameters in the max_amount child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Min Amount [Child Object]
The table below lists the various parameters in the min_amount child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Breakup [Child Object]
The table below lists the various parameters in the breakup child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| merchant | object |
An object that contains the merchant breakup details. Learn more about the merchant child object. |
| issuer | object |
An object that contains the issuer breakup details. Learn more about the issuer child object. |
| brand | object |
An object that contains the brand breakup details. Learn more about the brand child object. |
| dealer | object |
An object that contains the dealer breakup details. Learn more about the dealer child object. |
Merchant [Child Object]
The table below lists the various parameters in the merchant child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Issuer [Child Object]
The table below lists the various parameters in the issuer child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Brand [Child Object]
The table below lists the various parameters in the brand child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Dealer [Child Object]
The table below lists the various parameters in the dealer child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Interest Amount [Child Object]
The table below lists the various parameters in the interest_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Cart Coupon Discount Product Share [Child Object]
The table below lists the various parameters in the cart_coupon_discount_product_share child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Loan Amount [Child Object]
The table below lists the various parameters in the loan_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total Discount Amount [Child Object]
The table below lists the various parameters in the total_discount_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Net Payment Amount [Child Object]
The table below lists the various parameters in the net_payment_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Monthly EMI Amount [Child Object]
The table below lists the various parameters in the monthly_emi_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total EMI Amount [Child Object]
The table below lists the various parameters in the total_emi_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Interest Amount [Child Object]
The table below lists the various parameters in the interest_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total Subvention Amount [Child Object]
The table below lists the various parameters in the total_subvention_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Processing Fee Details [Child Object]
The table below lists the various parameters in the processing_fee_details child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Convenience Fee Breakdown [Child Object]
The table below lists the various parameters in the convenience_fee_breakdown child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| fee_calculated_on_amount | object |
An object that contains the fee calculation amount details. Learn more about the fee_calculated_on_amount child object. |
| fee_amount | object |
An object that contains the fee amount details. Learn more about the fee_amount child object. |
| tax_amount | object |
An object that contains the tax amount details. Learn more about the tax_amount child object. |
| additional_fee_amount | object |
An object that contains the additional fee amount details. Learn more about the additional_fee_amount child object. |
| maximum_fee_amount | object |
An object that contains the maximum fee amount details. Learn more about the maximum_fee_amount child object. |
| applicable_fee_amount | object |
An object that contains the applicable fee amount details. Learn more about the applicable_fee_amount child object. |
| subvented_fee_amount | object |
An object that contains the subvented fee amount details. Learn more about the subvented_fee_amount child object. |
Fee Calculated on Amount [Child Object]
The table below lists the various parameters in the fee_calculated_on_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Fee Amount [Child Object]
The table below lists the various parameters in the fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Tax Amount [Child Object]
The table below lists the various parameters in the tax_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Additional Fee Amount [Child Object]
The table below lists the various parameters in the additional_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Maximum Fee Amount [Child Object]
The table below lists the various parameters in the maximum_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Applicable Fee Amount [Child Object]
The table below lists the various parameters in the applicable_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Subvented Fee Amount [Child Object]
The table below lists the various parameters in the subvented_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Cart Coupon Discount Amount [Child Object]
The table below lists the various parameters in the cart_coupon_discount_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total Coupon Discount [Child Object]
The table below lists the various parameters in the total_coupon_discount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Issuer Data [Child Object]
The table below lists the various parameters in the issuer_data object. This is part of the offer discovery response object.
| Parameter | Type | Description |
|---|---|---|
| otp_length | integer |
Length of the OTP. Example: 4 |
| otp_time_in_sec | integer |
OTP validity time in seconds. Example: 120 |
| otp_retry_count | integer |
Maximum OTP retry count. Example: |
| is_consent_page_required | Boolean |
Status of the required consent page.
|
| consent_data | String |
Transaction consent data. Example: |
| terms_and_conditions | String |
Transaction terms and conditions. Example: |
| show_key_fact_statement | Boolean |
Key fact statement status.
|
| auth_type | String |
Authentication type. Accepted values:
|
| penny_transaction_amount | string |
Applicable amount for penny transaction. Example: 100 |
| is_tokenized_transaction_supported | Boolean |
Tokenized transactions support status.
|
| pan_number_last_digit_count | String |
Last digit count of PAN. |
| offer_validation_parameters_required | String |
Parameters required in offer validation API. |
Error Codes
The table below lists the possible error codes returned by the Offer Discovery API.
| Error Code | Description | Details |
|---|---|---|
| 200 | OK | Response JSON returned successfully. |
| 400 | Bad Request | Invalid request. |
| 400 | Bad Request | Missing Merchant-ID. |
| 400 | Bad Request | Missing Authorization header. |
| 401 | Unauthorized | Token expired. |
| 422 | Unprocessable Entity | Invalid Merchant. |
| 400 | Bad Request | Missing Authorization header. |
4. Offer Validation
Use this API for validating applied offers.
| Endpoint | POST /api/affordability/v1/offer/validate |
|---|
Below are the sample requests and response for the Offer Validation API.
- cURL
- Response
curl --request POST \ --url https://api-affordability.pinelabs.com/api/affordability/v1/offer/validate \ --compressed \ --header 'Accept-Encoding: gzip' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...' \ --header 'Content-Type: application/json' \ --header 'Request-ID: c17ce30f-f88e-4f81-ada1-c3b4909ed235' \ --header 'Request-Timestamp: 2024-07-09T07:57:08.022Z' \ --header 'accept: application/json' \ --header 'Correlation-ID: c0d835ab-e7cf-4434-b98d-434207776d78' \ --header 'Merchant-ID: 123456' \ --data '{ "order_amount": { "value": 1200000, "currency": "INR" }, "payment_option_details": { "bin": "37474200", "par": "11111111111", "is_token_transaction": true, "card_hash": "8f82064e3614470db2d922a0f9b5527f" }, "payment_method_details": { "payment_mode": "CREDIT_EMI" }, "payment_details": { "payment_id": "xs0344679801" }, "payment_option_metadata": { "card_option_meta_data": { "card_scheme": "VISA", "card_scheme_id": "1", "central_network_type_name": "VISA" } }, "customer_details": { "country_code": "+91", "debit_emi_mobile_no": "9812345670" }, "selected_offer_details": { "id": "1", "name": "ICICI CC", "issuer_type": "CC_BANK", "priority": 1, "tenure": { "tenure_id": "3", "name": "9 Months", "tenure_type": "MONTH", "tenure_value": 9, "issuer_offer_parameters": [ { "program_type": "BANK_EMI", "offer_id": "4357", "offer_parameter_id": "220257" } ], "loan_amount": { "currency": "INR", "value": 1176000 }, "net_payment_amount": { "currency": "INR", "value": 1218042 }, "monthly_emi_amount": { "currency": "INR", "value": 135338 }, "interest_rate_percentage": 8.5, "emi_type": "STANDARD" } } }'
{
"loan_amount": {
"currency": "INR",
"value": 500000
},
"authorization_amount": {
"currency": "INR",
"value": 500000
},
"merchant": {
"id": "111643"
},
"payment_details": {
"payment_id": "xs0344679801",
"offer_reference_id": "18431",
"offer_status": "INITIATED"
},
"selected_offer_details": {
"id": "6",
"name": "HDFC CC",
"issuer_type": "CC_BANK",
"priority": 1,
"tenure": {
"tenure_id": "4",
"name": "12 Months",
"tenure_type": "MONTH",
"tenure_value": 12,
"issuer_offer_parameters": [
{
"program_type": "BANK_EMI",
"offer_id": "1417",
"offer_parameter_id": "61022"
}
],
"details": [
{
"product_code": "redmi_1",
"brand_id": "3",
"product_amount": {
"currency": "INR",
"value": 500000
},
"product_coupon_discount_amount": {
"currency": "INR",
"value": 12000
},
"interest_amount": {
"currency": "INR",
"value": 44380
},
"interest_rate": 16,
"cart_coupon_discount_product_share": {
"currency": "INR",
"value": 12000
}
}
],
"loan_amount": {
"currency": "INR",
"value": 500000
},
"net_payment_amount": {
"currency": "INR",
"value": 544380
},
"monthly_emi_amount": {
"currency": "INR",
"value": 45365
},
"total_emi_amount": {
"currency": "INR",
"value": 544380
},
"interest_amount": {
"currency": "INR",
"value": 44380
},
"interest_rate_percentage": 16,
"processing_fee_details": {
"amount": {
"currency": "INR",
"value": 19900
}
},
"cart_coupon_discount_amount": {
"currency": "INR",
"value": 12000
},
"emi_type": "STANDARD",
"total_coupon_discount": {
"currency": "INR",
"value": 24000
}
}
}
}
- Header Parameters
- Request Parameters
- Response Parameters
The table below lists the header parameters of our Offer Discovery API.
| Parameter | Type | Description |
|---|---|---|
| Merchant-ID REQUIRED | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
| Correlation-ID REQUIRED | string |
For request tracing. Note: This value must be generated by you. |
The table below lists the request parameters of our Offer Validation API.
| Parameter | Type | Description |
|---|---|---|
| payment_method_details REQUIRED | string | Type of payment method you want to use to accept a payment. Accepted values:
|
| order_amount REQUIRED | object | An object that contains the transaction amount details. Learn more about our order_amount child object. |
| payment_details REQUIRED | object | An object that contains the payment details after the offer has been applied. Learn more about our payment_details child object. |
| payment_option_metadata REQUIRED | object | An object that contains payment option metadata details related to the offer. Learn more about our payment_option_metadata child object. |
| selected_offer_details | object | An object that contains details related to the selected offer. Learn more about our selected_offer_details child object. |
| customer_details | object | An object that contains details related to the customer. Learn more about our customer_details child object. |
| payment_option_details REQUIRED | object | An object that contains details related to the payment option. Learn more about our payment_option_details child object. |
Order Amount [Child Object]
The table below lists the various parameters in the order_amount child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | string | Type of currency. Example: INR |
Payment Details [Child Object]
The table below lists the various parameters in the payment_details child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| payment_id REQUIRED | integer | Unique identifier for the payment. Example: payment_12345 |
Payment Option Metadata [Child Object]
The table below lists the various parameters in the payment_option_metadata child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| card_option_meta_data | object | An object that contains card option metadata details. Learn more about our card_option_meta_data child object. |
Card Option Meta Data [Child Object]
The table below lists the various parameters in the card_option_meta_data child object. This object is part of the payment_option_metadata sample request object.
| Parameter | Type | Description |
|---|---|---|
| card_scheme | string | The card network (scheme) associated with the card used for the transaction. Example: VISA |
| card_scheme_id | string | The card scheme id associated with the card used for the transaction. Example: 1 |
| central_network_type_name | string | The name of the card network associated with the card used for the transaction. Example:
|
Selected Offer Details [Child Object]
The table below lists the various parameters in the selected_offer_details child object. This object is part of the Offer Validation API sample request object.
| Parameter | Type | Description |
|---|---|---|
| id | string | Unique identifier of the issuer id. Example: 23 |
| name | string | Name of the Issuer. Example: INDUSIND CC |
| display_name | string | The name of the issuer offering the offer. Example: INDUSIND |
| issuer_type | string | Type of the Issuer. Possible values:
|
| priority | string | Priority of the issuer. Example: 1 |
| tenures | array of objects | Array of tenure objects. Learn more about our tenures child object. |
Tenure [Child Object]
The table below lists the various parameters in the tenures object. This is part of the selected_offer_details request object.
| Parameter | Type | Description |
|---|---|---|
| tenure_id | String | Tenure id in the Plural database. Example: 1 |
| name | String | The name of the Tenure. |
| tenure_type | String | The type of the Tenure. Accepted values:
|
| tenure_value | integer | The value of the tenure. Example: 3 |
| issuer_offer_parameters | array of objects | List of Offer Schemes for the tenure. Learn more about the issuer_offer_parameters child object. |
| details | array of objects | An array of objects that contains the product details.Learn more about the details child object. |
| discount | object | An object that contains the discount details. Learn more about the discount child object. |
| loan_amount | object | An object that contains the loan amount details. Learn more about the loan_amount child object. |
| total_discount_amount | object | Total discount amount for the tenure. Learn more about the total_discount_amount child object. |
| net_payment_amount | object | An object that contains the net payment amount details. Learn more about the net_payment_amount child object. |
| monthly_emi_amount | object | An object that contains the monthly EMI amount details. Learn more about the monthly_emi_amount child object. |
| total_emi_amount | object | An object that contains the total EMI amount details. Learn more about the total_emi_amount child object. |
| interest_amount | object | An object that contains the interest amount details. Learn more about the interest_amount child object. |
| total_subvention_amount | object | An object that contains the total subvention amount details. Learn more about the total_subvention_amount child object. |
| interest_rate_percentage | integer | Interest rate percentage for the tenure. |
| processing_fee_details | object | Processing fee details for the tenure. Learn more about the processing_fee_details child object. |
| emi_type | strings | Type of EMI. Example: STANDARDAccepted values:
|
| convenience_fee_breakdown | object | An object that contains the convenience fee breakdown details. Learn more about the convenience_fee_breakdown child object. |
| cart_coupon_discount_amount | object | An object that contains the cart coupon discount amount details. Learn more about the cart_coupon_discount_amount child object. |
| total_coupon_discount | object | An object that contains the total coupon discount details. Learn more about the total_coupon_discount child object. |
Issuer Offer Parameters [Child Object]
The table below lists the various parameters in the issuer_offer_parameters child object. This object is part of the tenures sample request object.
| Parameter | Type | Description |
|---|---|---|
| program_type | string | Program type. Example: 23 |
| offer_id | string | Unique identifier for the offer. Example: 1 |
| offer_parameter_id | string | Unique identifier for the offer parameter. Possible values:
|
Details [Child Object]
The table below lists the various parameters in the details child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| product_code | String | Unique Product identifier of the product. Example: redmi_1 |
| product_display_name | String | Name of the Product. Example: Oneplus 13R |
| brand_id | String | Unique brand identifier of the product. Example: 3 |
| brand_name | String | Name of the Brand. Example: Oneplus |
| product_offer_parameters | array of objects | An array of objects that contains the product offer schemes for the product EMI details. Learn more about the product_offer_parameters child object. |
| product_amount | object | An object that contains the product amount details. Learn more about the product_amount child object. |
| product_coupon_discount_amount | object | An object that contains the product coupon discount amount details. Learn more about the product_coupon_discount_amount child object. |
| subvention | object | An object that contains the subvention details. Learn more about the subvention child object. |
| discount | object | An object that contains the product discount details. Learn more about the discount child object. |
| brand_name | string | Name of the Brand. Example: Oneplus |
| interest_amount | object | An object that contains the interest amount details. Learn more about the interest_amount child object. |
| interest_rate | string | Rate of interest applied on the product. Example: 19 |
| cart_coupon_discount_product_share | object | An object that contains the cart coupon discount product share details. Learn more about the cart_coupon_discount_product_share child object. |
Product Offer Parameters [Child Object]
The table below lists the various parameters in the product_offer_parameters child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| program_type | String | Type of the Program. Example: BRAND_EMIAccepted values:
|
| offer_id | string | Unique identifier of the offer. Example: 309 |
| offer_parameter_id | string | Unique offer parameter identifier. Example: 20 |
Product Amount [Child Object]
The table below lists the various parameters in the product_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Product Coupon Discount Amount [Child Object]
The table below lists the various parameters in the product_coupon_discount_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Subvention [Child Object]
The table below lists the various parameters in the subvention child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| subvention_type | String | Type of subvention. Example: INSTANTAccepted values:
|
| percentage | integer | Transaction amount is Paisa.
1000 |
| amount | object | An object that contains the subvention amount details. Learn more about the amount child object. |
| breakup | object | An object that contains the subvention breakup details. Learn more about the breakup child object. |
| max_amount | object | An object that contains the maximum subvention amount details. Learn more about the max_amount child object. |
| min_amount | object | An object that contains the minimum subvention amount details. Learn more about the min_amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Breakup [Child Object]
The table below lists the various parameters in the breakup child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| brand | object | An object that contains the breakup details of the brand. Learn more about the brand child object. |
| merchant | object | An object that contains the breakup details of the merchant. Learn more about the merchant child object. |
| issuer | object | An object that contains the breakup details of the issuer. Learn more about the issuer child object. |
| dealer | object | An object that contains the breakup details of the dealer. Learn more about the dealer child object. |
Brand [Child Object]
The table below lists the various parameters in the brand child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup amount details of the brand. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the brand object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Merchant [Child Object]
The table below lists the various parameters in the merchant child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup details of the merchant. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the merchant object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Issuer [Child Object]
The table below lists the various parameters in the issuer child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup details of the issuer. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the issuer object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Dealer [Child Object]
The table below lists the various parameters in the dealer child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup details of the dealer. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the issuer object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Max Amount [Child Object]
The table below lists the various parameters in the max_amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Min Amount [Child Object]
The table below lists the various parameters in the min_amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Discount [Child Object]
The table below lists the various parameters in the discount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| discount_type | String | Type of discount. Possible values:
|
| discount_string | String | The additional discount provided by the offering entity after a specific period. Example: 1000 |
| percentage | Double | The discount percentage provided by the offering entity. Example: 16.90 |
| amount | string | Discount amount. Example: 2000 |
| max_amount | object | An object that contains the maximum discount amount details. Learn more about the max_amount child object. |
| min_amount | object | An object that contains the minimum discount amount details. Learn more about the min_amount child object. |
| discount_deferred_duration_value | integer | The duration value for the deferred discount. Example: |
| discount_deferred_duration_type | string | Discount duration type deferred. Possible values:
|
| breakup | object | An object that contains the product offer details with breakup. Learn more about the breakup child object. |
Maximum Amount [Child Object]
The table below lists the various parameters in the max_amount child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Minimum Amount [Child Object]
The table below lists the various parameters in the min_amount child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Breakup [Child Object]
The table below lists the various parameters in the breakup child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| brand | object | An object that contains the brand breakup details. Learn more about the brand child object. |
| merchant | object | An object that contains the merchant breakup details. Learn more about the merchant child object. |
| issuer | object | An object that contains the issuer breakup details. Learn more about the issuer child object. |
| dealer | object | An object that contains the dealer breakup details. Learn more about the dealer child object. |
Brand [Child Object]
The table below lists the various parameters in the brand child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup amount details. Learn more about the amount child object. |
Merchant [Child Object]
The table below lists the various parameters in the merchant child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup amount details. Learn more about the amount child object. |
Issuer [Child Object]
child object. This is part of thebreakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup amount details. Learn more about the amount child object. |
Dealer [Child Object]
The table below lists the various parameters in the dealer child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object | An object that contains the breakup amount details. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Loan Amount [Child Object]
The table below lists the various parameters in the loan_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Total Discount Amount [Child Object]
The table below lists the various parameters in the total_discount_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Net Payment Amount [Child Object]
The table below lists the various parameters in the net_payment_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| Valuevalue REQUIRED | String | Type of currency. Example: INR |
Monthly EMI Amount [Child Object]
The table below lists the various parameters in the monthly_emi_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Total EMI Amount [Child Object]
The table below lists the various parameters in the total_emi_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Interest Amount [Child Object]
The table below lists the various parameters in the interest_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | String | Type of currency. Example: INR |
Cart Coupon Discount Product Share [Child Object]
The table below lists the various parameters in the cart_coupon_discount_product_share child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total Subvention Amount [Child Object]
The table below lists the various parameters in the total_subvention_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Processing Fee Details [Child Object]
The table below lists the various parameters in the processing_fee_details child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Convenience Fee Breakdown [Child Object]
The table below lists the various parameters in the convenience_fee_breakdown child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| fee_calculated_on_amount | object | An object that contains the fee calculation amount details. Learn more about the fee_calculated_on_amount child object. |
| fee_amount | object | An object that contains the fee amount details. Learn more about the fee_amount child object. |
| tax_amount | object | An object that contains the tax amount details. Learn more about the tax_amount child object. |
| additional_fee_amount | object | An object that contains the additional fee amount details. Learn more about the additional_fee_amount child object. |
| maximum_fee_amount | object | An object that contains the maximum fee amount details. Learn more about the maximum_fee_amount child object. |
| applicable_fee_amount | object | An object that contains the applicable fee amount details. Learn more about the applicable_fee_amount child object. |
| subvented_fee_amount | object | An object that contains the subvented fee amount details. Learn more about the subvented_fee_amount child object. |
Fee Calculated on Amount [Child Object]
The table below lists the various parameters in the fee_calculated_on_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | String | Type of currency. Example: INR |
Fee Amount [Child Object]
The table below lists the various parameters in the fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Tax Amount [Child Object]
The table below lists the various parameters in the tax_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Additional Fee Amount [Child Object]
The table below lists the various parameters in the additional_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Maximum Fee Amount [Child Object]
The table below lists the various parameters in the maximum_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Applicable Fee Amount [Child Object]
The table below lists the various parameters in the applicable_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Subvented Fee Amount [Child Object]
The table below lists the various parameters in the subvented_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Cart Coupon Discount Amount [Child Object]
The table below lists the various parameters in the cart_coupon_discount_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Total Coupon Discount [Child Object]
The table below lists the various parameters in the total_coupon_discount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer |
Transaction amount is Paisa.
Example: 1000
|
| currency REQUIRED | String |
Type of currency. Example: INR |
Customer Details [Child Object]
The table below lists the various parameters in the customer_details object. This is part of the offer validation response object.
| Parameter | Type | Description |
|---|---|---|
| country_code | String |
Country code of the registered mobile number.
+91Note: If the country code is not provided, it defaults to +91. |
| debit_emi_mobile_no | String |
Customers mobile number. Example: 9876543210Note: Ten digit mobile number without country code |
Payment Option Details [Child Object]
The table below lists the various parameters in the payment_option-details object. This is part of the offer validation response object.
| Parameter | Type | Description |
|---|---|---|
| bin | String |
BIN of the card used for the transaction.
37474200Supported characters: 0-9 |
| par | String |
PAR of the card used for the transaction.201211111111111Supported characters: 0-9 |
| is_token_transaction | boolean |
Indicates whether the transaction is a tokenized transaction. Example: true |
| card_hash | String |
Card hash.
123456789012Supported characters: 0-9 |
The table below lists the response parameters of the Offer Validation API.
| Parameter | Type | Description |
|---|---|---|
| loan_amount | Object |
An object that contains the loan amount details. Learn more about our loan_amount child object. |
| authorization_amount | Object |
An object that contains the authorize amount details. Learn more about our authorization_amount child object. |
| merchant | Object |
An object that contains the merchant details. Learn more about our merchant child object. |
| payment_details | Object |
An object that contains the payment information related to the transaction. Learn more about our payment_details child object. |
| selected_offer_details | Object |
An object that contains the selected offer and EMI configuration details. Learn more about our selected_offer_details child object. |
| amount | Object |
An object that contains the amount details. Learn more about our amount child object. |
| breakup | Object |
An object that contains the breakup details. Learn more about our breakup child object. |
| loan_amount_details | Object |
An object that contains the loan amount details. Learn more about our loan_amount_details child object. |
| total_discount_amount | Object |
An object that contains the total discount amount details. Learn more about our total_discount_amount child object. |
| net_payment_amount | Object |
An object that contains the net payment amount details. Learn more about our net_payment_amount child object. |
| monthly_emi_amount | Object |
An object that contains the monthly EMI amount details. Learn more about our monthly_emi_amount child object. |
| total_emi_amount | Object |
An object that contains the total EMI amount details. Learn more about our total_emi_amount child object. |
| interest_amount | Object |
An object that contains the interest amount details. Learn more about our interest_amount child object. |
| total_subvention_amount | Object |
An object that contains the total subvention amount details. Learn more about our total_subvention_amount child object. |
| processing_fee_details | Object |
An object that contains the processing fee details. Learn more about our processing_fee_details child object. |
| cart_coupon_discount_amount | Object |
An object that contains the cart coupon discount amount details. Learn more about our cart_coupon_discount_amount child object. |
| total_coupon_discount | Object |
An object that contains the total coupon discount details. Learn more about our total_coupon_discount child object. |
| convenience_fee_breakdown | Object |
An object that contains the convenience fee breakdown details. Learn more about our convenience_fee_breakdown child object. |
| issuer_data | Object |
An object that contains the selected offer and EMI configuration details. Learn more about our issuer_data child object. |
Loan Amount [Child Object]
The table below lists the various parameters in the order_amount child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Transaction amount is Paisa.
1000 |
| currency REQUIRED | string | Type of currency. Example: INR |
Authorization Amount [Child Object]
The table below lists the various parameters in the authorization_amount child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| value REQUIRED | integer | Authorization amount is Paisa.
1000 |
| currency REQUIRED | string | Type of currency. Example: INR |
Merchant [Child Object]
The table below lists the various parameters in the merchant child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| id REQUIRED | string | Unique identifier for the merchant. Example: merchant_12345 |
Payment Details [Child Object]
The table below lists the various parameters in the payment_details child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| payment_id | string | Unique identifier for the payment. Example: payment_12345 |
| offer_reference_id | string | Unique identifier for the offer reference. Example: offer_reference_12345 |
| offer_status | string | Status of the offer. Example: active |
Selected Offer Details [Child Object]
The table below lists the various parameters in the selected_offer_details child object. This object is part of the offer validation sample request object.
| Parameter | Type | Description |
|---|---|---|
| id | String |
Unique identifier of the issuer id in the Plural database. Example: 23 |
| name | String |
Name of the Issuer. Example: INDUSIND CC |
| display_name | string |
Name of the issuer offering the offer. Example: INDUSIND |
| issuer_type | String |
The type of the Issuer offering the offer. Accepted values:
|
| priority | integer |
The priority of the issuer providing the offer. Example: 1 |
| tenures | array of objects |
An array of objects that contains the tenures details. Learn more about the tenures child object. |
| issuer_data | objects |
An object that contains the issuer data details. Learn more about the issuer_data child object. |
Tenures [Child Object]
The table below lists the various parameters in the tenures object. This is part of the offer discovery response object.
| Parameter | Type | Description |
|---|---|---|
| tenure_id | String |
Tenure id in the Plural database. Example: 1 |
| name | String |
The name of the Issuer offering the offer. Example: 3 Months |
| tenure_type | String |
The type of the Tenure. Accepted values:
|
| tenure_value | integer |
The value of the tenure. Example: 3 |
| issuer_offer_parameters | array of objects |
An array of objects that contains the issuer_offer_parameters details.Learn more about the issuer_offer_parameters child object. |
| details | array of objects |
An array of objects that contains the product details.Learn more about the details child object. |
| discount | object |
An object that contains the discount details. Learn more about the discount child object. |
| loan_amount | object |
An object that contains the loan amount details. Learn more about the loan_amount child object. |
| total_discount_amount | object |
An object that contains the total discount amount details. Learn more about the total_discount_amount child object. |
| net_payment_amount | object |
An object that contains the net payment amount details. Learn more about the net_payment_amount child object. |
| monthly_emi_amount | object |
An object that contains the monthly EMI amount details. Learn more about the monthly_emi_amount child object. |
| total_emi_amount | object |
An object that contains the total EMI amount details. Learn more about the total_emi_amount child object. |
| interest_amount | object |
An object that contains the interest amount details. Learn more about the interest_amount child object. |
| total_subvention_amount | object |
An object that contains the total subvention amount details. Learn more about the total_subvention_amount child object. |
| interest_rate_percentage | float |
Interest rate percentage for the tenure. Example: 16.90 |
| processing_fee_details | object |
An object that contains the processing fee details. Learn more about the processing_fee_details child object. |
| convenience_fee_breakdown | object |
An object that contains the convenience fee breakdown details. Learn more about our convenience_fee_breakdown child object. |
| cart_coupon_discount_amount | object |
An object that contains the cart coupon discount amount details. Learn more about our cart_coupon_discount_amount child object. |
| total_coupon_discount | object |
An object that contains the total coupon discount details. Learn more about our total_coupon_discount child object. |
| emi_type | strings |
Type of EMI. Example: STANDARDAccepted values:
|
Issuer Offer Parameters [Child Object]
The table below lists the various parameters in the issuer_offer_parameters child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| program_type | String |
Unique identifier of the issuer id in the Plural database. Example: 23 |
| offer_id | String |
Name of the Issuer. Example: INDUSIND CC |
| offer_parameter_id | String |
The type of the Issuer offering the offer. Accepted values:
|
Details [Child Object]
The table below lists the various parameters in the details child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| product_code | String |
Unique Product identifier of the product. Example: redmi_1 |
| product_display_name | string |
Name of the Product. Example: Oneplus 13R |
| brand_id | String |
Unique brand identifier of the product. Example: 3 |
| product_offer_parameters | array of objects |
An array of objects that contains the product offer schemes for the product EMI details. Learn more about the product_offer_parameters child object. |
| product_amount | object |
An object that contains the product amount details. Learn more about the product_amount child object. |
| product_coupon_discount_amount | object |
An object that contains the product coupon discount amount details. Learn more about the product_coupon_discount_amount child object. |
| subvention | object |
An object that contains the subvention details. Learn more about the subvention child object. |
| discount | object |
An object that contains the product discount details. Learn more about the discount child object. |
| brand_name | string |
Name of the Brand. Example: Oneplus |
| interest_amount | object |
An object that contains the interest amount details. Learn more about the interest_amount child object. |
| interest_rate | double |
Rate of interest applied on the product. Example: 2 |
| cart_coupon_discount_product_share | object |
An object that contains the cart coupon discount product share details. Learn more about the cart_coupon_discount_product_share child object. |
Product Offer Parameters [Child Object]
The table below lists the various parameters in the product_offer_parameters child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| program_type | String |
Type of the Program. Example: BRAND_EMIAccepted values:
|
| offer_id | string |
Unique identifier of the offer. Example: 309 |
| offer_parameter_id | string |
Unique offer parameter identifier. Example: 20 |
Product Amount [Child Object]
The table below lists the various parameters in the product_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount in Paisa.
1000 |
Product Coupon Discount Amount [Child Object]
The table below lists the various parameters in the product_coupon_discount_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount in Paisa.
1000 |
Subvention [Child Object]
The table below lists the various parameters in the subvention child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| subvention_type | String |
Type of subvention. Example: INSTANTAccepted values:
|
| offer_type | string |
Type of the offer. Accepted values:
|
| percentage | integer |
Transaction amount is Paisa.
1000 |
| amount | object |
An object that contains the subvention amount details. Learn more about the amount child object. |
| breakup | object |
An object that contains the subvention breakup details. Learn more about the breakup child object. |
| max_amount | object |
An object that contains the maximum subvention amount details. Learn more about the max_amount child object. |
| min_amount | object |
An object that contains the minimum subvention amount details. Learn more about the min_amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Breakup [Child Object]
The table below lists the various parameters in the breakup child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| brand | object |
An object that contains the breakup details of the brand. Learn more about the brand child object. |
Brand [Child Object]
The table below lists the various parameters in the brand child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details of the brand. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the brand object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Max Amount [Child Object]
The table below lists the various parameters in the max_amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Min Amount [Child Object]
The table below lists the various parameters in the min_amount child object. This is part of the subvention object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Discount [Child Object]
The table below lists the various parameters in the discount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| discount_type | String |
Type of discount. Possible values:
|
| discount_string | string |
The additional discount provided by the offering entity after a specific period. Example: 1000 |
| percentage | Double |
The discount percentage provided by the offering entity. Example: 16.90 |
| amount | string |
Discount amount. Example: 2000 |
| max_amount | object |
An object that contains the maximum discount amount details. Learn more about the max_amount child object. |
| min_amount | object |
An object that contains the minimum discount amount details. Learn more about the min_amount child object. |
| discount_deferred_duration_value | integer |
The duration value for the deferred discount. Example: |
| discount_deferred_duration_type | string |
Discount duration type deferred. Possible values:
|
| breakup | object |
An object that contains the product offer details with breakup. Learn more about the breakup child object. |
Max Amount [Child Object]
The table below lists the various parameters in the max_amount child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Min Amount [Child Object]
The table below lists the various parameters in the min_amount child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Breakup [Child Object]
The table below lists the various parameters in the breakup child object. This is part of the discount object.
| Parameter | Type | Description |
|---|---|---|
| merchant | object |
An object that contains the merchant breakup details. Learn more about the merchant child object. |
| issuer | object |
An object that contains the issuer breakup details. Learn more about the issuer child object. |
| brand | object |
An object that contains the brand breakup details. Learn more about the brand child object. |
| dealer | object |
An object that contains the dealer breakup details. Learn more about the dealer child object. |
Merchant [Child Object]
The table below lists the various parameters in the merchant child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Issuer [Child Object]
The table below lists the various parameters in the issuer child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Brand [Child Object]
The table below lists the various parameters in the brand child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Dealer [Child Object]
The table below lists the various parameters in the dealer child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| amount | object |
An object that contains the breakup amount details. Learn more about the amount child object. |
Amount [Child Object]
The table below lists the various parameters in the amount child object. This is part of the breakup object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Interest Amount [Child Object]
The table below lists the various parameters in the interest_amount child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Cart Coupon Discount Product Share [Child Object]
The table below lists the various parameters in the cart_coupon_discount_product_share child object. This is part of the details object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Loan Amount [Child Object]
The table below lists the various parameters in the loan_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total Discount Amount [Child Object]
The table below lists the various parameters in the total_discount_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Net Payment Amount [Child Object]
The table below lists the various parameters in the net_payment_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Monthly EMI Amount [Child Object]
The table below lists the various parameters in the monthly_emi_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total EMI Amount [Child Object]
The table below lists the various parameters in the total_emi_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Interest Amount [Child Object]
The table below lists the various parameters in the interest_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total Subvention Amount [Child Object]
The table below lists the various parameters in the total_subvention_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Processing Fee Details [Child Object]
The table below lists the various parameters in the processing_fee_details child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Convenience Fee Breakdown [Child Object]
The table below lists the various parameters in the convenience_fee_breakdown child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| fee_calculated_on_amount | object |
An object that contains the fee calculation amount details. Learn more about the fee_calculated_on_amount child object. |
| fee_amount | object |
An object that contains the fee amount details. Learn more about the fee_amount child object. |
| tax_amount | object |
An object that contains the tax amount details. Learn more about the tax_amount child object. |
| additional_fee_amount | object |
An object that contains the additional fee amount details. Learn more about the additional_fee_amount child object. |
| maximum_fee_amount | object |
An object that contains the maximum fee amount details. Learn more about the maximum_fee_amount child object. |
| applicable_fee_amount | object |
An object that contains the applicable fee amount details. Learn more about the applicable_fee_amount child object. |
| subvented_fee_amount | object |
An object that contains the subvented fee amount details. Learn more about the subvented_fee_amount child object. |
Fee Calculated on Amount [Child Object]
The table below lists the various parameters in the fee_calculated_on_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Fee Amount [Child Object]
The table below lists the various parameters in the fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Tax Amount [Child Object]
The table below lists the various parameters in the tax_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Additional Fee Amount [Child Object]
The table below lists the various parameters in the additional_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Maximum Fee Amount [Child Object]
The table below lists the various parameters in the maximum_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Applicable Fee Amount [Child Object]
The table below lists the various parameters in the applicable_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Subvented Fee Amount [Child Object]
The table below lists the various parameters in the subvented_fee_amount child object. This is part of the convenience_fee_breakdown object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Cart Coupon Discount Amount [Child Object]
The table below lists the various parameters in the cart_coupon_discount_amount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Total Coupon Discount [Child Object]
The table below lists the various parameters in the total_coupon_discount child object. This is part of the tenures object.
| Parameter | Type | Description |
|---|---|---|
| currency | String |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Issuer Data [Child Object]
The table below lists the various parameters in the issuer_data object. This is part of the offer discovery response object.
| Parameter | Type | Description |
|---|---|---|
| otp_length | integer |
Length of the OTP. Example: 4 |
| otp_time_in_sec | integer |
OTP validity time in seconds. Example: 120 |
| otp_retry_count | integer |
Maximum OTP retry count. Example: |
| is_consent_page_required | Boolean |
Status of the required consent page.
|
| consent_data | String |
Transaction consent data. Example: |
| terms_and_conditions | String |
Transaction terms and conditions. Example: |
| show_key_fact_statement | Boolean |
Key fact statement status.
|
| auth_type | String |
Authentication type. Accepted values:
|
| penny_transaction_amount | string |
Applicable amount for penny transaction. Example: 100 |
| is_tokenized_transaction_supported | Boolean |
Tokenized transactions support status.
|
| pan_number_last_digit_count | String |
Last digit count of PAN. |
| offer_validation_parameters_required | String |
Parameters required in offer validation API. |
Error Codes
The table below lists the possible error codes returned by the Offer Validation API.
| Error Code | Description | Details |
|---|---|---|
| 200 | OK | Response JSON returned successfully. |
| 400 | Bad Request | Invalid request. |
| 400 | Bad Request | Missing Merchant-ID. |
| 400 | Bad Request | Missing Authorization header. |
| 401 | Unauthorized | Token expired. |
| 422 | Unprocessable Entity | Invalid Merchant. |
| 400 | Bad Request | Missing Authorization header. |
| 402 | Bad Request | UNPROCESSABLE_ENTITY. |
| 404 | Not Found | RESOURCE_NOT_FOUND. |
5. Complete Payment
Use this API to complete the payment.
| Endpoint | POST /api/affordability/v1/offer/complete-payment |
|---|
Below are the sample requests and response for the Complete Payment API.
- cURL
- Response
curl --location 'https://api-affordability.pinelabs.com/api/affordability/v1/offer/complete-payment' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --header 'Merchant-ID: 123456' \ --data '{ "payment_method_details": { "payment_mode": "string" }, "payment_details": { "payment_id": "string", "offer_reference_id": "string" }, "debit_emi_limit_block": true }'
{ "loan_amount": { "currency": "string", "value": 0 }, "payment_details": { "payment_id": "string", "offer_reference_id": "string", "offer_status": "string" } }
- Header Parameters
- Request Parameters
- Response Parameters
The table below lists the header parameters of our Complete Payment API.
| Parameter | Type | Description |
|---|---|---|
| Merchant-ID REQUIRED | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
| Correlation-ID. REQUIRED | string |
For request tracing. Note: This value must be generated by you. |
The table below lists the request parameters of our Complete Payment API.
| Parameter | Type | Description |
|---|---|---|
| payment_method_details. REQUIRED | object |
An object that contains the payment method details. Learn more about the payment_method_details> child object. |
| payment_details REQUIRED | object |
An object that contains the payment details. Learn more about the payment_details> child object. |
| debit_emi_limit_block | boolean |
A boolean value indicating whether to block the debit EMI limit. Example: true
|
Payment Method Details [Child Object]
The table below lists the various parameters in the payment_method_details child object. This is part of the complete payment request object.
| Parameter | Type | Description |
|---|---|---|
| payment_mode REQUIRED | string |
Type of payment method you want to use to accept a payment. Accepted value:
CREDIT_EMI |
Payment Details [Child Object]
The table below lists the various parameters in the payment_details child object. This is part of the complete payment request object.
| Parameter | Type | Description |
|---|---|---|
| payment_id REQUIRED | string |
Unique identifier of the payment in the Plural database.
v1-5206071124-aa-mpLhF3-cc-l |
| offer_reference_id REQUIRED | string |
Unique identifier of the offer in the Plural database.
13627 |
The table below lists the response parameters of our Complete Payment API.
| Parameter | Type | Description |
|---|---|---|
| loan_amount | object |
An object that contains the loan amount details. Learn more about the loan_amount> child object. |
| payment_amount | object |
An object that contains the payment amount details. Learn more about the payment_amount> child object. |
| payment_details | object |
An object that contains the payment details. Learn more about the payment_details> child object. |
Loan Amount [Child Object]
The table below lists the various parameters in the loan_amount child object. This is part of the complete payment response object.
| Parameter | Type | Description |
|---|---|---|
| currency | string |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Payment Amount [Child Object]
The table below lists the various parameters in the payment_amount child object. This is part of the complete payment response object.
| Parameter | Type | Description |
|---|---|---|
| currency | string |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Payment Details [Child Object]
The table below lists the various parameters in the payment_details child object. This is part of the complete payment response object.
| Parameter | Type | Description |
|---|---|---|
| payment_id | string |
Unique identifier of the payment in the Plural database.
v1-5206071124-aa-mpLhF3-cc-l |
| offer_reference_id | string |
Unique identifier of the offer in the Plural database.
13627 |
| offer_status | string |
Status of the offer. Possible values:
|
Error Codes
The table below lists the possible error codes returned by the Complete Payment API.
| Error Code | Description | Details |
|---|---|---|
| 200 | OK | Response JSON returned successfully. |
| 400 | Bad Request | Invalid request. |
| 400 | Bad Request | Missing Merchant-ID. |
| 400 | Bad Request | Missing Authorization header. |
| 401 | Unauthorized | Token expired. |
| 422 | Unprocessable Entity | Invalid Merchant. |
| 400 | Bad Request | Missing Authorization header. |
| 402 | Bad Request | UNPROCESSABLE_ENTITY. |
| 404 | Not Found | RESOURCE_NOT_FOUND. |
6 Create Refund
Use this API to refund a payment.
| Endpoint | POST /api/affordability/v1/offer/refund-payment |
|---|
Below are the sample requests and response for the Refund API.
- cURL
- Response
curl --location 'https://api-affordability.pinelabs.com/api/affordability/v1/offer/refund-payment' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --header 'Merchant-ID: 123456' \ --data '{ "payment_details": { "payment_id": "string", "offer_reference_id": "string" }, "refund_amount": { "currency": "string", "value": 0 } }'
{ "loan_amount": { "currency": "string", "value": 0 }, "payment_amount": { "currency": "string", "value": 0 }, "payment_details": { "payment_id": "string", "offer_reference_id": "string", "offer_status": "string" }, "acquirer_details": { "mid": "string", "tid": "string", "name": "string", "acquirer_reference_id": "string", "rrn": "string", "approval_code": "string" } }
- Header Parameters
- Request Parameters
- Response Parameters
The table below lists the header parameters of our Refund API.
| Parameter | Type | Description |
|---|---|---|
| Merchant-ID REQUIRED | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
| Correlation-ID REQUIRED | string |
For request tracing. Note: This value must be generated by you. |
The table below lists the request parameters of our Refund API.
| Parameter | Type | Description |
|---|---|---|
| payment_details REQUIRED | object |
An object that contains the payment details. Learn more about the payment_details child object. |
| refund_amount REQUIREDREQUIRED | object |
An object that contains the refund amount details. Learn more about the refund_amount child object. |
Payment Details [Child Object]
The table below lists the various parameters in the payment_details child object. This is part of the settle payment request object.
| Parameter | Type | Description |
|---|---|---|
| payment_id REQUIRED | string |
Unique identifier of the payment in the Plural database.
v1-5206071124-aa-mpLhF3-cc-l |
| offer_reference_id REQUIRED | string |
Unique identifier of the offer in the Plural database.
13627 |
Refund Amount [Child Object]
The table below lists the various parameters in the refund_amount child object. This is part of the settle payment request object.
| Parameter | Type | Description |
|---|---|---|
| currency REQUIRED | string |
Type of currency. Example: INR |
| value REQUIRED | integer |
Transaction amount is Paisa.
1000 |
The table below lists the response parameters of our Refund API.
| Parameter | Type | Description |
|---|---|---|
| refund_result | object |
An object that contains the refund result details. Learn more about our refund_result child object. |
| status | string |
Refund status. Example: Processed
|
| message | string |
Corresponding message to the status. Example: Refund processed |
Refund Result [Child Object]
The table below lists the various parameters in the refund_result child object. This is part of the refund response object.
| Parameter | Type | Description |
|---|---|---|
| currency REQUIRED | string |
Type of currency. Example: INR |
| value REQUIRED | integer |
Transaction amount is Paisa.
1000 |
Error Codes
The table below lists the possible error codes returned by the Create Refund API.
| Error Code | Description | Details |
|---|---|---|
| 200 | OK | Response JSON returned successfully. |
| 400 | Bad Request | Invalid request. |
| 400 | Bad Request | Missing Merchant-ID. |
| 400 | Bad Request | Missing Authorization header. |
| 401 | Unauthorized | Token expired. |
| 401 | Unauthorized | Invalid Merchant. |
| 400 | Bad Request | Missing Authorization header. |
| 402 | Bad Request | UNPROCESSABLE_ENTITY. |
| 404 | Not Found | RESOURCE_NOT_FOUND. |
7 Get Transaction Details by ID
Use this API to fetch the transaction details.
| Endpoint | POST /api/affordability/v1/offer/get-txn-by-id |
|---|
Below are the sample requests and response for the Get Transaction Details by ID API.
- cURL
- Response
curl --location 'https://api-affordability.pinelabs.com/api/affordability/v1/offer/get-txn-by-id' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --header 'Authorization: Bearer {access_token}' \ --header 'Request-Timestamp: 2024-07-09T07:57:08.022Z' \ --header 'Request-ID: c17ce30f-f88e-4f81-ada1-c3b4909ed235' \ --header 'Merchant-ID: 123456' \ --data '{ "payment_details": { "payment_id": "string", "offer_reference_id": "string" } }'
{ "loan_amount": { "currency": "INR", "value": 1176000 }, "payment_amount": { "currency": "INR", "value": 1218042 }, "payment_details": { "payment_id": "xs0344679801", "offer_reference_id": "xs0344679801", "offer_status": "INITIATED" }, "acquirer_details": { "mid": "", "tid": "", "name": "" } }
- Header Parameters
- Request Parameters
- Response Parameters
The table below lists the header parameters of our Get Transaction Details by ID API.
| Parameter | Type | Description |
|---|---|---|
| Merchant-ID REQUIRED | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
| Correlation-ID REQUIRED | string |
For request tracing. Note: This value must be generated by you. |
The table below lists the request parameters of our Get Transaction Details by ID API.
| Parameter | Type | Description |
|---|---|---|
| merchant REQUIRED | object |
An object that contains the merchant details. Learn more about the merchant child object. |
| payment_details REQUIRED | object |
An object that contains the payment details. Learn more about the payment_details child object. |
| payment_method_details | object |
An object that contains the payment method details. Learn more about the payment_method_details child object. |
Merchant [Child Object]
The table below lists the various parameters in the merchant child object. This is part of the Get Transaction Details by ID request object.
| Parameter | Type | Description |
|---|---|---|
| id REQUIRED | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
Payment Details [Child Object]
The table below lists the various parameters in the payment_details child object. This is part of the Get Transaction Details by ID request object.
| Parameter | Type | Description |
|---|---|---|
| payment_id REQUIRED | string |
Unique identifier of the payment in the Plural database.
v1-5206071124-aa-mpLhF3-cc-l |
| offer_reference_id REQUIRED | string |
Unique identifier of the offer in the Plural database.
13627 |
Payment Method Details [Child Object]
The table below lists the various parameters in the payment_method_details child object. This is part of the Get Transaction Details by ID request object.
| Parameter | Type | Description |
|---|---|---|
| payment_mode | string |
Type of payment mode you wish to use for the transaction. Possible values:
|
The table below lists the response parameters of our Get Transaction Details by ID API.
| Parameter | Type | Description |
|---|---|---|
| merchant | object |
An object that contains the merchant details. Learn more about the merchant child object. |
| loan_amount | object |
An object that contains the loan amount details. Learn more about the loan_amount child object. |
| payment_amount | object |
An object that contains the payment amount details. Learn more about the payment_amount child object. |
| payment-method-details | object |
An object that contains the payment method details. Learn more about the payment_method_details child object. |
| payment_details | object |
An object that contains the payment details. Learn more about the payment_details child object. |
| acquirer_details | object |
An object that contains the acquirer details. Learn more about the acquirer_details child object. |
Merchant [Child Object]
The table below lists the various parameters in the merchant child object. This is part of the Get Transaction Details by ID response object.
| Parameter | Type | Description |
|---|---|---|
| id | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
Loan Amount [Child Object]
The table below lists the various parameters in the loan_amount child object. This is part of the Get Transaction Details by ID response object.
| Parameter | Type | Description |
|---|---|---|
| currency | string |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Payment Amount [Child Object]
The table below lists the various parameters in the payment_amount child object. This is part of the Get Transaction Details by ID response object.
| Parameter | Type | Description |
|---|---|---|
| currency | string |
Type of currency. Example: INR |
| value | integer |
Transaction amount is Paisa.
1000 |
Payment Method Details [Child Object]
The table below lists the various parameters in the payment_method_details child object. This is part of the Get Transaction Details by ID response object.
| Parameter | Type | Description |
|---|---|---|
| payment_mode | string |
Type of payment mode you wish to use for the transaction. Possible values:
|
Payment Details [Child Object]
The table below lists the various parameters in the payment_details child object. This is part of the Get Transaction Details by ID response object.
| Parameter | Type | Description |
|---|---|---|
| payment_id | string |
Unique identifier of the payment in the Plural database.
v1-5206071124-aa-mpLhF3-cc-l |
| offer_reference_id | string |
Unique identifier of the offer in the Plural database.
13627 |
| offer_status | string |
Status of the offer. Possible values:
|
Acquirer Details [Child Object]
The table below lists the various parameters in the acquirer_details child object. This is part of the Get Transaction Details by ID response object.
| Parameter | Type | Description |
|---|---|---|
| mid | string |
Unique identifier of the merchant in the Plural database. Example: 123456 |
| tid | string |
Unique identifier of the transaction in the Plural database. Example: 23024802480248 |
| name | string |
Bank's name.
HDFCDebitEMI |
| acquirer_reference_id | string |
Unique reference returned from acquirer for the payment. Example: 202455840588334 |
| rrn | string |
Retrieval reference number returned from acquirer for the payment. Example: 419335023601 |
| approval_code | string |
Authorization code returned from acquirer against the payment. Example: 030376 |
Error Codes
The table below lists the possible error codes returned by the Get Transaction Details by ID API.
| Error Code | Description | Details |
|---|---|---|
| 200 | OK | Response JSON returned successfully. |
| 400 | Bad Request | Invalid request. |
| 400 | Bad Request | Missing Merchant-ID. |
| 400 | Bad Request | Missing Authorization header. |
| 401 | Unauthorized | Token expired. |
| 401 | Unauthorized | Invalid Merchant. |
| 400 | Bad Request | Missing Authorization header. |
| 402 | Bad Request | UNPROCESSABLE_ENTITY. |
| 404 | Not Found | RESOURCE_NOT_FOUND. |
