> ## Documentation Index
> Fetch the complete documentation index at: https://razorpay-60c89f9a-mintlify-audit-missing-sections-1778528421.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Fetch a Product Configuration

> **GET** `/v2/accounts/:account_id/products/:product_id`

Use this endpoint to fetch a product configuration.

### Request

````curl: Curl theme={null}
curl -X GET 'https://api.razorpay.com/v2/accounts/acc_HQVlm3bnPmccC0/products/acc_prd_HEgNpywUFctQ9e/' \
     -u [YOUR_KEY_ID]:[YOUR_SECRET] \

```java: Java

RazorpayClient razorpay = new RazorpayClient("[YOUR_KEY_ID]", "[YOUR_KEY_SECRET]");

String accountId = "acc_HQVlm3bnPmccC0";

String productId = "acc_prd_HEgNpywUFctQ9e";

Account product = instance.product.fetch(accountId, productId);

```python: Python

import razorpay
client = razorpay.Client(auth=("YOUR_ID", "YOUR_SECRET"))

accountId = "acc_HQVlm3bnPmccC0"

productId = "acc_prd_HEgNpywUFctQ9e"

client.product.fetch(accountId, productId)

```php: PHP

$api = new Api($key_id, $secret);

$accountId = "acc_HQVlm3bnPmccC0";

$productId = "acc_prd_HEgNpywUFctQ9e";

$api->account->fetch($accountId)->products()->fetch($productId);

```csharp: .NET

RazorpayClient client = new RazorpayClient(your_key_id, your_secret);

string accountId = "acc_HQVlm3bnPmccC0";

string productId = "acc_prd_HEgNpywUFctQ9e";

Product product = client.Product.Fetch(accountId, productId)

```ruby: Ruby

require "razorpay"
Razorpay.setup('YOUR_KEY_ID', 'YOUR_SECRET')

accountId = "acc_HQVlm3bnPmccC0"

productId = "acc_prd_HEgNpywUFctQ9e"

Razorpay::Product.fetch(accountId, productId)

```javascript: Node.js

var instance = new Razorpay({ key_id: 'YOUR_KEY_ID', key_secret: 'YOUR_SECRET' })

var accountId = "acc_HQVlm3bnPmccC0";

var productId = "acc_prd_HEgNpywUFctQ9e";

instance.products.fetch(accountId, productId);

```go: Go

import ( razorpay "github.com/razorpay/razorpay-go" )
client := razorpay.NewClient("YOUR_KEY_ID", "YOUR_SECRET")

accountId := "acc_HQVlm3bnPmccC0"

productId := "acc_prd_HEgNpywUFctQ9e"

body, err := client.Product.Fetch(accountId, productId, nil, nil)
````

### Response

````json: Success theme={null}
{
   "requested_configuration":[
      
   ],
   "active_configuration":{
      "settlements":{
         "account_number":null,
         "ifsc_code":null,
         "beneficiary_name":null
      }
   },
   "requirements":[
      {
         "field_reference":"settlements.beneficiary_name",
         "resolution_url":"/accounts/acc_HQVlm3bnPmccC0/products/acc_prd_HEgNpywUFctQ9e",
         "reason_code":"field_missing",
         "status":"required"
      },
      {
         "field_reference":"settlements.account_number",
         "resolution_url":"/accounts/acc_HQVlm3bnPmccC0/products/acc_prd_HEgNpywUFctQ9e",
         "reason_code":"field_missing",
         "status":"required"
      },
      {
         "field_reference":"settlements.ifsc_code",
         "resolution_url":"/accounts/acc_HQVlm3bnPmccC0/products/acc_prd_HEgNpywUFctQ9e",
         "reason_code":"field_missing",
         "status":"required"
      }
   ],
   "tnc":{
      "id":"tnc_K1eopApuHyBE7D",
      "accepted":true,
      "accepted_at":1659638222
   },
   "id":"acc_prd_HEgNpywUFctQ9e",
   "product_name":"route",
   "activation_status":"needs_clarification",
   "account_id":"acc_HQVlm3bnPmccC0",
   "requested_at":1659638222
}

```json: Failure
{
   "error":{
      "code":"BAD_REQUEST_ERROR",
      "description":"The provided product config id doesn't exist for the merchant",
      "source":"NA",
      "step":"NA",
      "reason":"NA",
      "metadata":{
         
      }
   }
}
````

### Parameters

`account_id` *mandatory*
: `string` The unique identifier of an account generated by Razorpay. For example, `acc_HQVlm3bnPmccC0`.

`product_id` *mandatory*
: `string` The unique identifier of a product generated by Razorpay. For example, `acc_prd_HEgNpywUFctQ9e`.

### Parameters

`requested_configuration`
: `object` The configuration of the product requested by the user that is yet to be set as active.

`active_configuration`
: `object` The configuration of the product that has been set as active.

`settlements`
: `object` The Settlement settings object.

`account_number`
: `string` The bank account number to which settlements are made. Account details can be found on the Dashboard. For example, 7878780080316316

`ifsc_code`
: `string` The IFSC associated with the bank account. For example, `RATN0VAAPIS`.

`beneficiary_name`
: `string` The name of the beneficiary associated with the bank account. This API parameter is needed to complete the KYC process. However, it is optional for this API.

`requirements`
: `object` The list of requirements to be enabled for this product or some of the configurations under this product.

### Errors

The provided product config id doesn't exist for the merchant.

* code: 400
* description: This error occurs when the provided product configuration does not belong to the Linked Account.
* solution: Ensure you provide the correct `product_id` associated with the Linked Account.
