# परित्यक्त कार्ट अभियान कैसे सेट अप करें

वे खरीदार जो कार्ट में आइटम जोड़ते हैं और बिना खरीदे चले जाते हैं, उन्हें पुनर्प्राप्त करना सबसे आसान रूपांतरणों में से एक है। वे पहले ही इरादा दिखा चुके हैं।

यह गाइड दिखाता है कि उन्हें Pushwoosh में एक परित्यक्त कार्ट ईमेल कैसे भेजें: अपने स्टोर से `PW_AbandonedCart` इवेंट को फायर करें, [Products](/hi/product/content/email-content/drag-and-drop-email-editor/blocks/#products) ब्लॉक के साथ ईमेल में छोड़ी गई वस्तुओं को दिखाएं, और Customer Journey से भेजने को ट्रिगर करें।

## PW_AbandonedCart क्या है

`PW_AbandonedCart` यह चिह्नित करता है कि एक उपयोगकर्ता ने बिना खरीदे अपनी कार्ट में आइटम छोड़ दिए हैं। यह एक अंतर्निहित [डिफ़ॉल्ट इवेंट](/hi/product/audience-data-and-segmentation/events/default-events/) नहीं है। यह Pushwoosh ई-कॉमर्स इंटीग्रेशन में उपयोग किया जाने वाला एक साझा इवेंट नाम है ताकि journeys, Products ब्लॉक, और सेगमेंट सभी एक ही तरह से काम करें।

*   **[Magento इंटीग्रेशन](/hi/product/integrations/magento-integration/):** आपके लिए स्वचालित रूप से `PW_AbandonedCart` और `PW_OrderCreated` भेजता है।
*   **[Shopify इंटीग्रेशन](/hi/product/integrations/shopify-integration/):** आपके लिए स्वचालित रूप से `PW_AbandonedCart`, `PW_OrderCreated`, और `PW_AbandonedCartUpdate` (जब खरीदार उसी चेकआउट को संपादित करता रहता है तो फिर से फायर होता है) भेजता है, आपके प्रोडक्ट कैटलॉग से समृद्ध कार्ट आइटम के साथ।
*   **कोई अन्य स्टोर या कस्टम बैकएंड:** आपकी टीम [postEvent](/hi/developer/api-reference/user-centric-api/#postevent) के माध्यम से दोनों इवेंट भेजती है, जिसमें [परित्यक्त कार्ट रिमाइंडर कैसे भेजें](#how-to-send-abandoned-cart-reminders) में नाम और एट्रिब्यूट होते हैं।

### जब आप PW_AbandonedCart भेजते हैं तो क्या होता है

Pushwoosh की ओर से `PW_AbandonedCart` भेजने से दो चीजें होती हैं:

1.  यह किसी भी अन्य कस्टम इवेंट की तरह रिकॉर्ड किया जाता है, इसलिए आप इसे [इवेंट आँकड़ों](/hi/product/audience-data-and-segmentation/events/) में देख सकते हैं और [सेगमेंट्स](/hi/product/audience-data-and-segmentation/segmentation/create-segments/by-events/) में इसका उपयोग कर सकते हैं।
2.  Pushwoosh कार्ट की सामग्री को संग्रहीत करता है और उपयोगकर्ता को इसके साथ टैग करता है:
    *   **PW_AbandonedCartID:** वर्तमान कार्ट के लिए एक पहचानकर्ता, जिसका उपयोग भेजने के समय इसकी सामग्री को प्राप्त करने के लिए किया जाता है।
    *   **PW_AbandonedCartDate:** इवेंट पेलोड से `abandonedDate` मान।

### जब आप PW_OrderCreated भेजते हैं तो क्या होता है

जब खरीदार एक ऑर्डर देता है, तो `PW_OrderCreated` (या `PW_OrderUpdated`) भेजें। Pushwoosh उस उपयोगकर्ता के लिए तुरंत `PW_AbandonedCartID` और `PW_AbandonedCartDate` को साफ़ कर देता है। यह `orderId` मानों से मेल नहीं खाता है: उपयोगकर्ता से कोई भी ऑर्डर दोनों टैग हटा देता है, भले ही खरीद एक अलग कार्ट के लिए हो।

**उदाहरण:** एक खरीदार कार्ट `ORDER-100` को छोड़ देता है, फिर रिमाइंडर जाने से पहले `ORDER-200` खरीदता है। Pushwoosh टैग साफ़ कर देता है, इसलिए उन्हें `ORDER-100` के बारे में कोई रिमाइंडर नहीं मिलेगा।

<Aside type="note" title="रिमाइंडर ईमेल में क्या दिखाई देता है">
Products ब्लॉक भेजने के समय उपयोगकर्ता प्रोफ़ाइल पर संग्रहीत कार्ट को पढ़ता है। यह उस `PW_AbandonedCart` इवेंट से आइटम सूची का उपयोग नहीं करता है जिसने journey शुरू की थी।

*   **समान `orderId`:** प्रत्येक नया `PW_AbandonedCart` संग्रहीत कार्ट को अधिलेखित कर देता है। रिमाइंडर नवीनतम आइटम दिखाता है।
*   **भिन्न `orderId`:** Pushwoosh एक अलग कार्ट संग्रहीत करता है। आइटम मर्ज नहीं किए जाते हैं।
</Aside>

## परित्यक्त कार्ट रिमाइंडर कैसे भेजें

इवेंट बनाने, उन्हें अपने स्टोर से भेजने, ईमेल बनाने और Customer Journey लॉन्च करने के लिए इन चरणों का पालन करें।

### अपने Control Panel में इवेंट बनाएं

[Pushwoosh स्वचालित रूप से बनाता है](/hi/product/audience-data-and-segmentation/events/#1-create-events-in-pushwoosh-control-panel) एक इवेंट और उसके एट्रिब्यूट को पहले `postEvent` कॉल से एक ऐसे नाम के तहत जिसे वह नहीं पहचानता है, भेजे गए मान से प्रत्येक एट्रिब्यूट के प्रकार का अनुमान लगाता है। यह अनुमान `PW_AbandonedCart` में धन क्षेत्रों के लिए अविश्वसनीय है। दोनों इवेंट को स्पष्ट रूप से घोषित करें ताकि प्रकार सही ढंग से सेट हों:

1.  अपने Pushwoosh Control Panel में **Audience → Events** पर जाएं और **Create Event** पर क्लिक करें।
2.  इन एट्रिब्यूट के साथ `PW_AbandonedCart` नामक एक कस्टम इवेंट बनाएं:

| एट्रिब्यूट | प्रकार |
| :--- | :--- |
| `email` | string |
| `orderId` | string |
| `customerId` | string |
| `orderUrl` | string |
| `abandonedDate` | date |
| `createdDate` | date |
| `totalPrice` | decimal (price) |
| `shippingAmount` | decimal (price) |
| `taxAmount` | decimal (price) |
| `discountAmount` | decimal (price) |
| `currency` | string |

3.  `PW_OrderCreated` के लिए एक एकल `orderId` एट्रिब्यूट के साथ दोहराएं।

<Aside type="caution" title="सही एट्रिब्यूट प्रकारों का उपयोग करें">
Pushwoosh प्रत्येक एट्रिब्यूट मान को केवल उसके लिए निर्धारित प्रकार में संग्रहीत करता है, चाहे वह यहां घोषित किया गया हो या स्वचालित रूप से बनाए गए एट्रिब्यूट के लिए अनुमानित हो। एक मान जो प्रकार से मेल नहीं खाता है, उसे चुपचाप छोड़ दिया जाता है, और `postEvent` अभी भी सफलता लौटाता है, इसलिए आपको प्रतिक्रिया में यह नहीं दिखेगा कि डेटा खो गया है। आप बाद में Control Panel में इवेंट को संपादित करके एक गलत प्रकार को ठीक कर सकते हैं, लेकिन ठीक करने से पहले भेजा गया कोई भी डेटा पहले ही जा चुका है।

परित्यक्त कार्ट के काम करने के लिए, ऊपर दी गई तालिका में प्रकारों का मिलान करें:

*   **धन क्षेत्र** (`totalPrice`, `shippingAmount`, `taxAmount`, `discountAmount`): **decimal (price)** का उपयोग करें। अघोषित छोड़े जाने पर, `129` जैसा पूर्ण-संख्या मान **integer** के रूप में अनुमानित होता है। **string** के रूप में घोषित होने पर, कार्ट संग्रहीत नहीं होता है और कोई टैग सेट नहीं होता है। **integer** के रूप में घोषित होने पर, `129.90` `129` हो जाता है।
*   **तिथियां** (`abandonedDate`, `createdDate`): **date** का उपयोग करें।
*   **`items`:** इसे इवेंट परिभाषा में न जोड़ें। इसे JSON पेलोड में ऑब्जेक्ट्स की एक सरणी के रूप में भेजें। `price` और `quantity` के लिए वास्तविक JSON नंबरों का उपयोग करें, उद्धृत स्ट्रिंग्स का नहीं।
</Aside>

[कस्टम इवेंट बनाने के बारे में और जानें](/hi/product/audience-data-and-segmentation/events/custom-events/#creating-custom-events)।

### अपने बैकएंड से इवेंट भेजें

<Aside type="caution" icon="setting" title="डेवलपर सहायता की आवश्यकता है">
आपको अपने स्टोर या बैकएंड से इवेंट भेजने के लिए अपनी विकास टीम की मदद की आवश्यकता होगी। कृपया यह गाइड उनके साथ साझा करें।
</Aside>

अपनी विकास टीम से [postEvent](/hi/developer/api-reference/user-centric-api/#postevent) को कॉल करने के लिए कहें जब भी कोई कार्ट परित्यक्त हो, इस एट्रिब्यूट स्कीमा का उपयोग करके:

```json
{
  "request": {
    "hwid": "8f65b16df378e7a6bece9614e1530fb2",
    "application": "XXXXX-XXXXX",
    "event": "PW_AbandonedCart",
    "attributes": {
      "email": "shopper@example.com",
      "orderId": "ORDER-10293",
      "customerId": "CUST-4471",
      "orderUrl": "https://yourstore.com/cart/restore/ORDER-10293",
      "abandonedDate": "2026-07-28T10:15:00Z",
      "createdDate": "2026-07-28T09:40:00Z",
      "totalPrice": 129.90,
      "shippingAmount": 9.90,
      "taxAmount": 0,
      "discountAmount": 0,
      "currency": "USD",
      "items": [
        {
          "productId": "SKU-4821",
          "name": "Wireless headphones",
          "quantity": 1,
          "price": 119.90,
          "sku": "SKU-4821",
          "description": "Over-ear, noise-cancelling",
          "imageUrl": "https://yourstore.com/media/sku-4821.jpg",
          "productUrl": "https://yourstore.com/products/sku-4821",
          "category": "Audio"
        }
      ]
    },
    "userId": "shopper@example.com"
  }
}
```

जब कार्ट एक ऑर्डर में परिवर्तित हो जाती है, तो कार्ट टैग को साफ़ करने के लिए केवल `orderId` के साथ `PW_OrderCreated` भेजें:

```json
{
  "request": {
    "hwid": "8f65b16df378e7a6bece9614e1530fb2",
    "application": "XXXXX-XXXXX",
    "event": "PW_OrderCreated",
    "attributes": {
      "orderId": "ORDER-10293"
    },
    "userId": "shopper@example.com"
  }
}
```

<Aside type="tip">
यदि आप [Magento इंटीग्रेशन](/hi/product/integrations/magento-integration/#abandoned-cart-sync-configuration) या [Shopify इंटीग्रेशन](/hi/product/integrations/shopify-integration/#part-5-track-orders-carts-and-checkout-steps) का उपयोग करते हैं, तो आपको अपने बैकएंड से इन इवेंट को भेजने की आवश्यकता नहीं है। Magento आपके लिए एक शेड्यूल पर `PW_AbandonedCart` और `PW_OrderCreated` भेजता है; Shopify उन्हें (और प्रगति पर चेकआउट संपादन के लिए `PW_AbandonedCartUpdate`) वेबहुक से वास्तविक समय में भेजता है।
</Aside>

### अपने ईमेल में एक Products ब्लॉक जोड़ें

1.  [ईमेल सामग्री संपादक](/hi/product/content/email-content/drag-and-drop-email-editor/) खोलें और कैनवास पर एक [Products](/hi/product/content/email-content/drag-and-drop-email-editor/blocks/#products) ब्लॉक जोड़ें।
2.  सेटिंग्स पैनल में, **Source** को [Cart](/hi/product/content/email-content/drag-and-drop-email-editor/blocks/#show-items-from-the-cart) पर सेट करें।

<Aside type="note">
Products ब्लॉक **Cart** स्रोत को आपकी योजना पर **Content Templates** और एक [API एक्सेस टोकन](/hi/developer/api-reference/api-access-token/) की आवश्यकता है। [Products ब्लॉक](/hi/product/content/email-content/drag-and-drop-email-editor/blocks/#products) देखें।
</Aside>

3.  ईमेल में कितने कार्ट आइटम दिखाई देंगे, इसे सीमित करने के लिए **Max products shown** सेट करें।

<img src="/lifecycle-marketing-campaigns-how-to-set-up-an-abandoned-cart-campaign-1.webp" alt="Products ब्लॉक सेटिंग्स जिसमें Source को Cart और Max products shown पर सेट किया गया है"/>

4.  आवश्यकतानुसार ग्रिड और कार्ड टेम्पलेट को स्टाइल करें। [ग्रिड को स्टाइल करें](/hi/product/content/email-content/drag-and-drop-email-editor/blocks/#style-the-grid) देखें।

<img src="/lifecycle-marketing-campaigns-how-to-set-up-an-abandoned-cart-campaign-2.webp" alt="ईमेल कैनवास पर Products ब्लॉक कार्ड टेम्पलेट और ग्रिड स्टाइल सेटिंग्स के साथ" width="580"/>

जब ईमेल भेजा जाता है, तो Products ब्लॉक प्रत्येक प्राप्तकर्ता के संग्रहीत कार्ट को उनके `PW_AbandonedCartID` टैग का उपयोग करके देखता है। फिर यह ब्लॉक को वर्तमान कार्ट आइटम से भरता है: छवि, शीर्षक, मूल्य, और कार्ट पर वापस एक लिंक। लेआउट आपके द्वारा संपादक में सेट किए गए कार्ड टेम्पलेट से आता है। उस टैग के बिना प्राप्तकर्ता (कुछ भी परित्यक्त नहीं, या पहले से ही ऑर्डर किया गया) खाली सामग्री दिखाने के बजाय ब्लॉक को छोड़ देते हैं, इसलिए इसे एक व्यापक अभियान में भी उपयोग करना सुरक्षित है।

<Aside type="tip">
Cart स्रोत ईमेल सामग्री संपादक में उपलब्ध है। इसके बजाय खरीदारों को पुश के साथ याद दिलाने के लिए, [Push](/hi/product/customer-journey/journey-elements/channels/push/) चरण का उपयोग [personalization](/hi/product/personalization/dynamic-content/) के साथ करें जो इवेंट से कार्ट विवरणों का संदर्भ देता है।
</Aside>

### Customer Journey बनाएं

1.  `PW_AbandonedCart` इवेंट का उपयोग करके एक [Trigger-based Entry](/hi/product/customer-journey/journey-elements/entry-elements/trigger-based-entry/) जोड़ें।
2.  एक [Wait for Trigger](/hi/product/customer-journey/journey-elements/flow-controls/wait-for-trigger/) चरण जोड़ें। इसकी प्रतीक्षा अवधि एक या दो घंटे पर सेट करें। शाखा का नाम **Order placed** रखें और उसमें `PW_OrderCreated` इवेंट जोड़ें।

<Aside type="caution">
**Wait for Trigger** पर ही प्रतीक्षा अवधि सेट करें। इसके पहले एक अलग **Time Delay** चरण न जोड़ें।

**Wait for Trigger** केवल तब `PW_OrderCreated` के लिए सुनना शुरू करता है जब खरीदार उस चरण तक पहुंचता है। यदि **Time Delay** पहले आता है और खरीदार उस देरी के दौरान एक ऑर्डर देता है, तो ऑर्डर इवेंट का पता नहीं चलता है। खरीदार **Not triggered** शाखा में चला जाता है, लेकिन `PW_OrderCreated` ने पहले ही `PW_AbandonedCartID` को साफ़ कर दिया है। Products ब्लॉक को कोई कार्ट नहीं मिलता है और वह इसे छोड़ देता है। खरीदार को अभी भी बिना किसी उत्पाद के परित्यक्त कार्ट ईमेल प्राप्त होता है, भले ही उन्होंने अपनी खरीद पहले ही पूरी कर ली हो।
</Aside>

3.  **Order placed** शाखा को [Exit](/hi/product/customer-journey/journey-elements/flow-controls/exit/) पर रूट करें। उपयोगकर्ता पहले ही खरीद चुका है, इसलिए उन्हें याद न दिलाएं।
4.  **Not triggered** शाखा को [Email](/hi/product/customer-journey/journey-elements/channels/email/) चरण पर रूट करें। [अपने ईमेल में एक Products ब्लॉक जोड़ें](#add-a-products-block-to-your-email) में आपके द्वारा बनाए गए ईमेल को [ईमेल सामग्री](/hi/product/content/email-content/) के रूप में सहेजें, फिर इसे इस चरण की सामग्री के रूप में चुनें।

<img src="/lifecycle-marketing-campaigns-how-to-set-up-an-abandoned-cart-campaign-3.webp" alt="Customer Journey कैनवास जिसमें Trigger-based Entry, Wait for Trigger के साथ Order placed और Not triggered शाखाएं, Email और Exit चरण, और कोई Time Delay नहीं है"/>

### लॉन्च करने से पहले परीक्षण करें

1.  एक परीक्षण डिवाइस के लिए एक परीक्षण `PW_AbandonedCart` इवेंट भेजें। `PW_AbandonedCartID` टैग को मैन्युअल रूप से सेट न करें: Products ब्लॉक उस संग्रहीत कार्ट से कार्ट सामग्री लोड करता है जिसे इवेंट बनाता है, टैग मान से नहीं। एक वास्तविक इवेंट के बिना, ब्लॉक खाली प्रस्तुत होता है।
2.  वास्तविक खरीदारों को भेजने से पहले ईमेल का पूर्वावलोकन करें और लेआउट और उत्पाद सामग्री की पुष्टि करें।