> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# v1.75.0 (23 जनवरी, 2026)

> उत्पाद संग्रह, RevolutPay और Billie भुगतान विधियाँ GBP एक-बारगी भुगतानों के लिए, चेकआउट सत्र पूर्वावलोकन, योजना परिवर्तन अनुरोधों में मेटाडेटा, invoice_url फील्ड, छूट सत्यापन एंडपॉइंट, और उन्नत डैशबोर्ड फ़िल्टरिंग

## नई विशेषताएं

### 1. **Product Collections**

Customer Portal में एकीकृत चेकआउट अनुभवों, योजना चयन, और निर्बाध अपग्रेड/डाउनग्रेड पथों के लिए संबंधित उत्पादों को एक साथ समूहित करें।

<Frame>
  <img src="https://mintcdn.com/dodopayments/2YrxTqbaYgAm54C_/images/product-collection/checkout-page.png?fit=max&auto=format&n=2YrxTqbaYgAm54C_&q=85&s=1890932384bc32c8126c7993f3581855" alt="प्रोडक्ट कलेक्शन चेकआउट पेज जो कई प्लान विकल्प दिखा रहा है" style={{ maxHeight: '500px', width: 'auto' }} width="1440" height="960" data-path="images/product-collection/checkout-page.png" />
</Frame>

**मुख्य लाभ**

* **संग्रह-आधारित चेकआउट**: एक ही चेकआउट दृश्य में संग्रह के सभी उत्पाद दिखाएं, जिससे ग्राहक अपनी पसंदीदा योजना की तुलना और चयन कर सकें
* **संगठित उत्पाद प्रबंधन**: संबंधित उत्पादों (जैसे Starter, Pro, Enterprise) को एक ही संग्रह के तहत समूहित करें
* **Customer Portal एकीकरण**: ग्राहकों को एक ही संग्रह के भीतर उत्पादों के बीच अपग्रेड या डाउनग्रेड करने की सुविधा दें
* **व्यापारी नियंत्रण**: प्रत्येक संग्रह के भीतर उत्पादों को सक्षम, अक्षम और पुनर्व्यवस्थित करें

**यह कैसे काम करता है**

संग्रह के लिए एक चेकआउट सत्र बनाएं:

```typescript theme={null}
const session = await client.checkoutSessions.create({
  product_collection_id: 'pdc_abc123',
  product_cart: [], // Required: pass an empty array for collection checkout
  return_url: 'https://yoursite.com/return'
});

// Redirect customer to the checkout
window.location.href = session.checkout_url;
```

<Check>
  परिणाम: एक एकीकृत चेकआउट अनुभव जहां ग्राहक आपके संग्रह में उपलब्ध सभी उत्पादों को देख और चुन सकते हैं।
</Check>

<Info>
  संग्रह चेकआउट उन सदस्यता व्यवसायों के लिए आदर्श है जहां आप चाहते हैं कि ग्राहक खरीदारी से पहले योजनाओं की तुलना एक साथ करें।
</Info>

Learn more: [Product Collections Guide](/features/product-collections)

### 2. **RevolutPay & Billie Payment Methods for GBP Currency**

GBP एक-बारगी भुगतान लेनदेन के लिए RevolutPay और Billie के साथ विस्तारित भुगतान विकल्प अब ग्लोबली उपलब्ध हैं, जिससे आपके ग्राहकों को भुगतान करने में अधिक लचीलापन मिलता है।

**नए भुगतान तरीके**

| भुगतान विधि    | समर्थित देश | मुद्रा | सदस्यता समर्थन     |
| -------------- | ----------- | ------ | ------------------ |
| **RevolutPay** | ग्लोबल      | GBP    | नहीं (केवल एक बार) |
| **Billie**     | ग्लोबल      | GBP    | नहीं (केवल एक बार) |

* **RevolutPay** – Revolut उपयोगकर्ताओं के लिए तेज़ और सहज भुगतान
* **Billie** – B2B Buy Now Pay Later समाधान जो व्यवसायों को अपने ग्राहकों को लचीले भुगतान विकल्प प्रदान करने में सक्षम बनाता है

<Info>
  ये भुगतान विधियाँ GBP लेनदेन के लिए स्वचालित रूप से उपलब्ध हैं। किसी अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता नहीं है।
</Info>

Learn more: [Payment Methods](/features/payment-methods)

### 3. **Checkout Session Preview**

उन्हें बनाने से पहले चेकआउट सत्रों का पूर्वावलोकन करें ताकि सटीक मूल्य निर्धारण, कर, छूट और कुल राशि की गणना हो सके। चेकआउट पर जाने से पहले ग्राहकों को वास्तविक मूल्य दिखाएं।

**यह कैसे काम करता है**

```typescript theme={null}
const preview = await client.checkoutSessions.preview({
  product_cart: [
    { product_id: 'prod_123', quantity: 1 }
  ],
  billing_address: {
    country: 'US',
    state: 'CA',
    zipcode: '94102'
  },
  discount_code: 'SAVE20'
});

console.log('Subtotal:', preview.subtotal);
console.log('Tax:', preview.tax);
console.log('Discount:', preview.discount);
console.log('Total:', preview.total);
```

**उपयोग के मामले**

* **कस्टम मूल्य प्रदर्शन**: चेकआउट से पहले कर सहित सटीक कुल दिखाएं
* **छूट सत्यापन**: छूट कोडों को सत्यापित करें और ग्राहकों को बचत दिखाएं
* **बहु-मुद्रा समर्थन**: अलग-अलग मुद्राओं में मूल्य पूर्वावलोकन करें
* **कार्ट सारांश**: वास्तविक समय मूल्य निर्धारण के साथ कस्टम कार्ट UI बनाएं

<Card title="Preview API Reference" icon="code" href="/api-reference/checkout-sessions/preview">
  पूर्ण पूर्वावलोकन एंडपॉइंट दस्तावेज़ देखें।
</Card>

### 4. **Metadata Support in Change Plan Requests**

सब्सक्रिप्शन योजनाओं को बदलते समय कस्टम मेटाडेटा पास करें, जिससे योजना बदलावों के दौरान आपके आंतरिक सिस्टम के साथ बेहतर ट्रैकिंग और एकीकरण संभव हो।

```javascript theme={null}
// Adding metadata when changing a subscription plan
await client.subscriptions.changePlan('sub_123', {
  product_id: 'prod_premium',
  proration_billing_mode: 'prorated_immediately',
  quantity: 1,
  metadata: {
    upgrade_reason: 'feature_request',
    previous_plan: 'basic',
    sales_rep: 'john@company.com'
  }
});
```

**उपयोग के मामले**

* **अपग्रेड/डाउनग्रेड कारण ट्रैक करें**: ग्राहकों ने योजनाएं क्यों बदलीं इसे संग्रहित करें
* **CRM रिकॉर्ड्स से लिंक करें**: बिक्री गतिविधियों के साथ योजना बदलाव जोड़ें
* **आंतरिक वर्गीकरण**: रिपोर्टिंग और विश्लेषण के लिए योजना बदलावों को टैग करें
* **ऑडिट ट्रेल्स**: यह रिकॉर्ड रखें कि योजना बदलाव किसने शुरू किया

<Info>
  मेटाडेटा वेबहुक इवेंट्स में शामिल होता है, जिससे आपके कस्टम डेटा के साथ योजना बदलावों को प्रोसेस करना आसान होता है।
</Info>

Learn more: [Metadata Guide](/api-reference/metadata) | [Change Plan API](/api-reference/subscriptions/change-plan)

### 5. **`invoice_url` Field in Payment Response and Payment Link Response**

भुगतान उत्तर और भुगतान लिंक उत्तर अब `invoice_url` फील्ड शामिल करते हैं, जिससे प्रत्येक भुगतान से जुड़ी इनवॉइस तक सीधे पहुंच मिलती है।

```json theme={null}
{
  "payment_id": "pay_2IjeQm4hqU6RA4Z4kwDee",
  "status": "succeeded",
  "invoice_url": "https://dodopayments.com/invoices/inv_2IsUnWGtRKFLxk7xAQeyt",
  "amount": 9900,
  "currency": "USD",
  // ... other fields
}
```

**उपयोग के मामले**

* **ग्राहक संवाद**: इनवॉइस लिंक सीधे ग्राहकों को भेजें
* **एकाउंटिंग एकीकरण**: अपने एकाउंटिंग सॉफ़्टवेयर में भुगतानों को इनवॉइस से जोड़ें
* **सेल्फ-सर्विस पोर्टल**: ग्राहकों को उनके इनवॉइस आसानी से एक्सेस करने दें
* **रिकॉर्ड कीपिंग**: इनवॉइस दस्तावेज़ों के प्रत्यक्ष संदर्भ बनाए रखें

<Card title="Get Payment API" icon="code" href="/api-reference/payments/get-payments-1">
  भुगतान उत्तर स्कीमा देखें।
</Card>

### 6. **Validate Discount by Code Name Endpoint**

नया API एंडपॉइंट जो कोड नाम (जैसे "SAVE20") द्वारा छूट कोड को मान्य और पुनः प्राप्त करता है, बजाय इसके कि आंतरिक डिस्काउंट ID का उपयोग करें। चेकआउट पर लागू करने से पहले छूट पात्रता सत्यापित करें।

```javascript theme={null}
// Validate a discount code before checkout
const discount = await client.discounts.retrieveByCode('SAVE20');

console.log('Discount type:', discount.type);
console.log('Discount value:', discount.amount);
console.log('Valid until:', discount.expires_at);
```

**लाभ**

* **पूर्व-चेकआउट सत्यापन**: चेकआउट सत्र बनाने से पहले छूट कोडों को सत्यापित करें
* **रीयल-टाइम फीडबैक**: ग्राहकों को दिखाएं कि उनका कोड मान्य है या नहीं
* **त्रुटि प्रबंधन**: अवैध या समाप्त कोड को शीघ्र पकड़ें
* **कस्टम डिस्काउंट UI**: तात्कालिक सत्यापन के साथ छूट कोड इनपुट फ़ील्ड बनाएं
* **लाभ**

<Card title="Get Discount by Code API" icon="code" href="/api-reference/discounts/get-discount-by-code">
  पूर्ण एंडपॉइंट दस्तावेज़ देखें।
</Card>

### 7. **Enhanced Filtering Capabilities for Customers, Discounts, and License Keys**

कस्टमर्स, डिस्काउंट्स और लाइसेंस कीज़ को सूचीबद्ध करने के लिए नए API फ़िल्टर, जिससे अपने डेटा को प्रोग्रामेटिक रूप से ढूंढना और प्रबंधित करना आसान हो जाता है।

**कस्टमर API फ़िल्टर**

| फ़िल्टर          | विवरण                                                           |
| ---------------- | --------------------------------------------------------------- |
| `email`          | ग्राहक ईमेल द्वारा फ़िल्टर करें                                 |
| `name`           | ग्राहक नाम द्वारा फ़िल्टर करें (आंशिक मिलान, केस-इंसेंसिटिव)    |
| `created_at_gte` | इस टाइमस्टैम्प पर या उसके बाद बनाए गए ग्राहकों को फ़िल्टर करें  |
| `created_at_lte` | इस टाइमस्टैम्प पर या उससे पहले बनाए गए ग्राहकों को फ़िल्टर करें |

```javascript theme={null}
// Find customers by name created in the last 30 days
const customers = await client.customers.list({
  name: 'John',
  created_at_gte: '2026-01-01T00:00:00Z'
});
```

**डिस्काउंट API फ़िल्टर**

| फ़िल्टर         | विवरण                                                                                 |
| --------------- | ------------------------------------------------------------------------------------- |
| `code`          | डिस्काउंट कोड द्वारा फ़िल्टर करें (आंशिक मिलान, केस-इंसेंसिटिव)                       |
| `discount_type` | डिस्काउंट प्रकार (प्रतिशत) द्वारा फ़िल्टर करें                                        |
| `active`        | सक्रिय स्थिति द्वारा फ़िल्टर करें (true = समाप्त नहीं, false = समाप्त)                |
| `product_id`    | उत्पाद प्रतिबंध द्वारा फ़िल्टर करें (केवल वे डिस्काउंट जो इस उत्पाद पर लागू होते हैं) |

```javascript theme={null}
// Find active percentage discounts for a specific product
const discounts = await client.discounts.list({
  active: true,
  discount_type: 'percentage',
  product_id: 'prod_123'
});
```

**लाइसेंस कीज़ API फ़िल्टर**

| फ़िल्टर          | विवरण                                                                   |
| ---------------- | ----------------------------------------------------------------------- |
| `customer_id`    | ग्राहक ID द्वारा फ़िल्टर करें                                           |
| `status`         | लाइसेंस की स्थिति (`active`, `expired`, `disabled`) द्वारा फ़िल्टर करें |
| `product_id`     | उत्पाद ID द्वारा फ़िल्टर करें                                           |
| `created_at_gte` | इस टाइमस्टैम्प पर या उसके बाद बनाए गए लाइसेंस कीज़ को फ़िल्टर करें      |
| `created_at_lte` | इस टाइमस्टैम्प पर या उससे पहले बनाए गए लाइसेंस कीज़ को फ़िल्टर करें     |

```javascript theme={null}
// Find active license keys for a specific product
const licenseKeys = await client.licenseKeys.list({
  status: 'active',
  product_id: 'prod_123'
});
```

<CardGroup cols={3}>
  <Card title="List Customers API" icon="users" href="/api-reference/customers/get-customers">
    पूर्ण कस्टमर API दस्तावेज़ देखें।
  </Card>

  <Card title="List Discounts API" icon="percent" href="/api-reference/discounts/list-discounts">
    पूर्ण डिस्काउंट API दस्तावेज़ देखें।
  </Card>

  <Card title="List License Keys API" icon="key" href="/api-reference/licenses/list-license-keys">
    पूर्ण लाइसेंस कीज़ API दस्तावेज़ देखें।
  </Card>
</CardGroup>

### 8. **UI/UX Improvements in Dashboard**

यह रिलीज़ डैशबोर्ड में एक अधिक सहज और परिष्कृत अनुभव के लिए कई UI/UX सुधार शामिल करती है।

**मुख्य बिंदु**

* बेहतर नेविगेशन और लेआउट की अनुरूपता
* उन्नत डेटा तालिका इंटरैक्शन
* बेहतर लोडिंग स्टेट्स और फीडबैक
* परिष्कृत दृश्य डिज़ाइन तत्व
* बेहतर मोबाइल प्रतिक्रिया क्षमता
