> ## 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.

# Charm Pricing

> हर currency में, हर बार manually market के लिए price तय किए बिना, converted prices को 49.99 जैसे साफ़ और मनोवैज्ञानिक रूप से अनुकूल endings पर अपने-आप round करें।

<Info>
  Charm Pricing हर checkout पर converted price को **49.99** जैसे साफ़ ending पर round करता है। आप rule एक बार सेट करते हैं। Dodo Payments इसे हर customer की currency में लागू करता है।
</Info>

## Charm Pricing क्या है?

[Adaptive Currency](/features/adaptive-currency) live exchange rates पर आपके base price को convert करता है। परिणाम सटीक संख्या होती है, लेकिन शायद ही कभी आकर्षक: \$47.00 का product आज **€43.12** और कल **€43.47** दिख सकता है।

Charm Pricing उस converted amount को लेकर उसे निकटतम साफ़ ending पर ले जाता है। Customer को 43.12 के बजाय **49.99** दिखाई देता है। Exchange rates बदलने पर भी ending स्थिर रहती है।

आपको हर market के लिए अलग price सेट करने की ज़रूरत नहीं है। आप एक rounding rule चुनते हैं और यह हर currency पर लागू होता है।

<Note>
  Charm Pricing के लिए [Adaptive Currency](/features/adaptive-currency) आवश्यक है। पहले Adaptive Currency चालू करें।
</Note>

## मुख्य लाभ

* **हर currency में साफ़ prices**: एक rule सभी markets को कवर करता है। आपको price list बनाए रखने की ज़रूरत नहीं है।
* **स्थिर endings**: Exchange rate में कुछ प्रतिशत बदलाव होने पर ending नहीं बदलती।
* **Conversion artifacts नहीं**: Customers को कभी 43.12 या 1043.87 दिखाई नहीं देता।
* **नए markets के लिए automatic**: जिस currency की आपने कभी pricing नहीं की, उसमें भी साफ़ number मिलता है।

<Info>
  किसी एक market के लिए exact price manually सेट करने के लिए इसके बजाय [Localized Pricing](/features/localized-pricing) का उपयोग करें। उस product पर localized price हमेशा Charm Pricing पर प्राथमिकता पाती है।
</Info>

## Charm Pricing चालू करें

<Steps>
  <Step title="Enable Adaptive Currency">
    **Settings → Business** पर जाएँ। **Business Settings** में **Adaptive Currency** चालू करें। इसके बिना Charm Pricing कुछ नहीं करता।

    <Frame>
      <img src="https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/adaptive-currency-toggle.png?fit=max&auto=format&n=Ovz6j1aDoP1Nl_kB&q=85&s=a9d847b5ee912ddf416bba76f7f75994" alt="Business Settings में Adaptive Currency toggle" style={{ maxHeight: '360px', width: 'auto' }} width="927" height="581" data-path="images/charm-pricing/adaptive-currency-toggle.png" />
    </Frame>
  </Step>

  <Step title="Turn on Charm Pricing">
    उसी **Business Settings** section में **Charm Pricing** चालू करें — *Prices को अधिक साफ़ और आकर्षक numbers पर round करें*। Current rounding type toggle के नीचे दिखाई देता है।

    <Frame>
      <img src="https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/charm-toggle.png?fit=max&auto=format&n=Ovz6j1aDoP1Nl_kB&q=85&s=e8038d1b4c0df6a0ed246af73e83011c" alt="Business Settings में Charm Pricing enabled" style={{ maxHeight: '400px', width: 'auto' }} width="895" height="392" data-path="images/charm-pricing/charm-toggle.png" />
    </Frame>

    <Warning>
      Changes केवल future transactions पर लागू होते हैं। Existing subscriptions उसी rounding rule को बनाए रखते हैं जिससे वे शुरू हुए थे। [Subscriptions](#subscriptions) देखें।
    </Warning>
  </Step>

  <Step title="Set the rounding type and steps">
    **Edit** पर click करके **Set up Charm Pricing** खोलें। **Rounding type** चुनें, फिर किसी भी price range के लिए **Rounding step** समायोजित करें। **Save Changes** पर click करें।

    <Frame>
      <img src="https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/rounding-type.png?fit=max&auto=format&n=Ovz6j1aDoP1Nl_kB&q=85&s=52b3cac8b3644aa2e129019cc989b617" alt="Rounding type selector और Try it preview वाला Set up Charm Pricing dialog" style={{ maxHeight: '620px', width: 'auto' }} width="1122" height="404" data-path="images/charm-pricing/rounding-type.png" />
    </Frame>

    Save करने से पहले value जाँचने के लिए **Try it** का उपयोग करें। कोई amount और currency दर्ज करें; dialog result और उपयोग किए गए step को दिखाएगा।

    Dodo Payments हर range के लिए एक default step देता है। [Rounding types](#rounding-types) और [Rounding steps](#rounding-steps) देखें।

    <Frame>
      <img src="https://mintcdn.com/dodopayments/Ovz6j1aDoP1Nl_kB/images/charm-pricing/bands.png?fit=max&auto=format&n=Ovz6j1aDoP1Nl_kB&q=85&s=49814c0af4e7d120d4ae64c868943a84" alt="Rounding step table, हर price range के लिए एक step" style={{ maxHeight: '440px', width: 'auto' }} width="527" height="485" data-path="images/charm-pricing/bands.png" />
    </Frame>
  </Step>

  <Step title="Confirm at checkout">
    <Check>
      किसी अन्य currency में billing country के साथ एक test checkout खोलें। Confirm करें कि price आपकी अपेक्षित ending दिखा रहा है।
    </Check>
  </Step>
</Steps>

## Price की गणना कैसे होती है

Dodo Payments currency conversion और किसी भी discount के बाद, तथा tax से पहले **per-unit** price पर charm लागू करता है।

1. **Step खोजें।** Amount rounding-step table से एक step चुनता है। \$47 price 10–99 range में आती है, इसलिए step **10** है।
2. **Target चुनें।** Step दो candidates, **40** और **50**, देता है। Rounding type इनमें से एक चुनता है। **Nearest** के साथ 47, 50 के अधिक निकट है।
3. **Ending घटाएँ।** Dodo Payments step के एक हज़ारवें हिस्से को घटाता है, इसलिए 50, **49.99** बन जाता है। यह कमी कभी one minor unit से कम नहीं होती। **Whole** इस step को छोड़ देता है।

### Rounding types

| Type        | यह क्या चुनता है                                                  | \$47 बनता है |
| :---------- | :---------------------------------------------------------------- | :----------- |
| **Nearest** | दो candidates में से जो अधिक निकट हो। बराबरी होने पर ऊपर जाता है। | \$49.99      |
| **Floor**   | हमेशा price से नीचे वाला candidate।                               | \$39.99      |
| **Ceiling** | हमेशा price से ऊपर वाला candidate।                                | \$49.99      |
| **Whole**   | निकटतम candidate, बिना कमी के।                                    | \$50.00      |

<Warning>
  **Floor** price को लगभग पूरे step तक कम कर सकता है। $47 price, $39.99 बन जाती है—15% की कमी। इसे चुनने से पहले अपनी price ranges पर इसका प्रभाव जाँचें।
</Warning>

### Rounding steps

Step, currency की main unit में price के size पर निर्भर करता है। ये defaults हैं। आप किसी भी range के लिए **Rounding step** बदल सकते हैं। Ranges को नहीं बदला जा सकता।

| Price range           | Step   |
| :-------------------- | :----- |
| 1 – 9                 | 1      |
| 10 – 99               | 10     |
| 100 – 999             | 100    |
| 1,000 – 9,999         | 1,000  |
| 10,000 – 99,999       | 10,000 |
| 100,000 – 999,999     | 10,000 |
| 1,000,000 – 9,999,999 | 10,000 |
| 10,000,000 and above  | 10,000 |

Step 10,000 पर बढ़ना बंद कर देता है। इससे बड़ी amounts में change छोटा रहता है, और यह उन currencies के लिए महत्वपूर्ण है जिनमें एक dollar के बदले कई units होते हैं, जैसे IDR और VND।

<Note>
  बड़ा step price को काफी दूर तक ले जाता है। 1,000 के default step के साथ **$1,234** की converted price **$999.00** बन जाती है। अगर change आपके catalogue के लिए बहुत बड़ा है, तो उस range का step कम करें।
</Note>

### Worked examples

| Converted price | Currency | Step  | Rounding type | Customer pays |
| :-------------- | :------- | :---- | :------------ | :------------ |
| \$47.00         | USD      | 10    | Nearest       | **\$49.99**   |
| \$47.00         | USD      | 10    | Whole         | **\$50.00**   |
| \$47.00         | USD      | 10    | Floor         | **\$39.99**   |
| \$5.00          | USD      | 1     | Nearest       | **\$4.99**    |
| ¥4,700          | JPY      | 1,000 | Nearest       | **¥4,999**    |
| ¥5              | JPY      | 1     | Nearest       | **¥4**        |

<Info>
  JPY जैसी बिना decimal places वाली currencies में one whole unit की कमी होती है। Ending ¥4,999 होती है, ¥4,999.99 नहीं।
</Info>

### Charm कब लागू नहीं होता

इन cases में Dodo Payments converted price को unchanged रखता है:

* Step price से wider है। Price एक पूरे step से कम move नहीं कर सकती।
* Result zero या उससे कम होगा।
* Amount से कोई step match नहीं करता।

## Checkout पर यह कैसे लागू होता है

Charm Pricing price calculation का last step है। बिना localized price वाले product के लिए order यह है:

1. **Base price** — product पर आपके द्वारा सेट की गई price।
2. **[Purchasing Power Parity](/features/purchasing-power-parity)** — यदि product ने opt in किया है, तो country percentage लागू होता है।
3. **Discounts** — कोई भी product discount और [discount code](/features/discount-codes) लागू होते हैं।
4. **[Currency conversion](/features/adaptive-currency)** — discounted amount live rate पर customer की currency में convert होता है।
5. **Charm rounding** — result साफ़ ending पर चला जाता है।
6. **Tax** — charmed amount से calculate होता है। [Tax-Inclusive Pricing](/features/tax-inclusive-pricing) देखें।

हर cart line की गणना अलग से होती है। Strikethrough "before discount" price में charged price वाला ही rounding step उपयोग होता है, इसलिए charm कभी ऐसा discount नहीं दिखाता जो आपने दिया ही नहीं।

<Warning>
  **Charmed line पूरे transaction को fees-inclusive बना देती है।** Customer ठीक वही ending pay करता है जो उसने देखी थी, इसलिए Adaptive Currency conversion fee ऊपर से नहीं जोड़ी जा सकती। यह fee आप वहन करते हैं। [Choose who bears the fee](/features/adaptive-currency#choose-who-bears-the-fee) देखें।
</Warning>

## Subscriptions

जब customer subscribe करता है, तब subscription अपना rounding step और rounding type record करता है। Dodo Payments हर renewal पर उसी decision को दोहराता है।

**क्या frozen रहता है:** rounding step और rounding type। यदि आप step edit करते हैं या rounding type बदलते हैं, तो existing subscription की repricing नहीं होती। Customer वही rule रखता है जिससे वह सहमत हुआ था।

**क्या बदल सकता है:** amount। प्रत्येक renewal में price current exchange rate पर convert होती है, फिर frozen rule लागू होता है। Rate में बड़ा बदलाव renewal amount को बदल सकता है, भले ही rule न बदला हो।

<Warning>
  **Plan change उस subscription से charm हटा देता है।** जब कोई subscriber [changes plan](/features/subscription#subscription-plan-changes) करता है, तो नया plan plan-change quote में दिखाया गया amount bill करता है। Dodo Payments उस amount पर charm लागू नहीं करता और उस subscription के बाद के renewals पर भी charm लागू नहीं करता।
</Warning>

## महत्वपूर्ण व्यवहार

| Behavior                            | Detail                                                                                                                                                       |
| :---------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Needs Adaptive Currency**         | Adaptive Currency बंद रहने पर Charm Pricing कुछ नहीं करता।                                                                                                   |
| **Localized prices win**            | Matching [Localized Pricing](/features/localized-pricing) rule वाले product पर कभी charm लागू नहीं होता। आपके द्वारा सेट किया गया exact amount लागू होता है। |
| **Applied per unit**                | Unit price पर charm लागू होता है, फिर उसे quantity से multiply किया जाता है।                                                                                 |
| **After discounts**                 | Discount पहले आपकी base currency में लागू होता है। Charm converted result को round करता है।                                                                  |
| **Before tax**                      | Tax charmed amount से calculate होता है, इसलिए totals आपस में मिलते हैं।                                                                                     |
| **Forces fees-inclusive**           | Charmed transaction पर currency conversion fee आप वहन करते हैं।                                                                                              |
| **Not for Pay What You Want**       | Customer amount चुनता है, इसलिए उस पर कभी charm लागू नहीं होता। [Pay What You Want](/features/pay-what-you-want) देखें।                                      |
| **Fixed fees only for usage-based** | Metered usage charges पर कभी charm लागू नहीं होता।                                                                                                           |
| **No webhook of its own**           | Charmed amount payment या subscription पर किसी अन्य price की तरह दिखाई देता है।                                                                              |

## Best Practices

* **Nearest से शुरू करें।** इससे price सबसे कम बदलती है। Floor का उपयोग तभी करें जब उससे बनने वाला discount आपको स्वीकार्य हो।
* **अपने सबसे बड़े और छोटे products जाँचें।** Step price range के साथ बदलता है, इसलिए $5 product और $1,200 product का व्यवहार अलग होता है।
* **High-unit currencies के लिए step की समीक्षा करें।** IDR, VND और KRW prices top ranges में पहुँचती हैं, जहाँ step 10,000 पर fixed है।
* **Launch से पहले अपनी subscriptions की pricing करें।** बाद में step edit करने से existing subscribers की repricing नहीं होती।
* **Conversion fee का हिसाब रखें।** Charmed line fees-inclusive होती है, इसलिए fee आपके revenue से आती है।

## Related

<CardGroup cols={2}>
  <Card title="Adaptive Currency" icon="money-bill-transfer" href="/features/adaptive-currency">
    वह conversion जिस पर Charm Pricing round करता है। Charm Pricing के लिए आवश्यक।
  </Card>

  <Card title="Purchasing Power Parity" icon="money-bill-trend-up" href="/features/purchasing-power-parity">
    Price-sensitive countries में कम charge करें। Charm rounding से पहले चलता है।
  </Card>

  <Card title="Localized Pricing" icon="earth-americas" href="/features/localized-pricing">
    हर country या currency के लिए exact price सेट करें। Charm Pricing को override करता है।
  </Card>

  <Card title="Tax-Inclusive Pricing" icon="receipt" href="/features/tax-inclusive-pricing">
    नियंत्रित करें कि आपकी prices में tax शामिल है या नहीं।
  </Card>
</CardGroup>
