# Magento ইন্টিগ্রেশন

<Aside type="caution" icon="setting" title="ডেভেলপারের সহায়তা প্রয়োজন">
 ইন্টিগ্রেশন সেট আপ করার জন্য আপনার ডেভেলপমেন্ট টিমের সাহায্যের প্রয়োজন হবে। অনুগ্রহ করে এই গাইডটি তাদের সাথে শেয়ার করুন।
</Aside>

## ইন্টিগ্রেশনের ওভারভিউ

[Magento](https://business.adobe.com/products/commerce.html) একটি শীর্ষস্থানীয় ই-কমার্স প্ল্যাটফর্ম যা ব্যবসাগুলিকে বড় আকারে পণ্য, গ্রাহক এবং অর্ডার পরিচালনা করতে সাহায্য করে। Magento-কে Pushwoosh-এর সাথে ইন্টিগ্রেট করে, আপনি রিয়েল-টাইম মেসেজিং, টার্গেটেড সেগমেন্টেশন এবং ক্রস-চ্যানেল মার্কেটিং অটোমেশন সক্ষম করতে গ্রাহক, অর্ডার এবং পরিত্যক্ত কার্টগুলি স্বয়ংক্রিয়ভাবে সিঙ্ক করতে পারেন, যা আপনাকে আপনার স্টোরের কার্যকলাপ থেকে সরাসরি ব্যবহারকারীদের সাথে যুক্ত হতে এবং কনভার্সন বাড়াতে সাহায্য করে।

### ইন্টিগ্রেশনের প্রকার

**Destination**: এই ইন্টিগ্রেশনটি আপনার Magento স্টোর থেকে Pushwoosh-এ ডেটা পুশ করে।

### পূর্বশর্ত

এগিয়ে যাওয়ার আগে, নিম্নলিখিতগুলি নিশ্চিত করুন:

* Magento অ্যাডমিন প্যানেলে অ্যাক্সেস
    
* একটি বৈধ Pushwoosh অ্যাকাউন্ট
    
* আপনার Pushwoosh [API অ্যাক্সেস টোকেন](/bn/developer/api-reference/api-access-token/) এবং [অ্যাপ কোড](/bn/developer/api-reference/api-identifiers/#application-code)
    
* আপনার Magento সার্ভারে [Composer](https://getcomposer.org/) ইনস্টল করা
    
* সিস্টেমের প্রয়োজনীয়তা পূরণ করা:
    
  * PHP 7.4 / 8.x
  * Magento 2.3 / 2.4
  * Elasticsearch 7
  * RabbitMQ

### গ্লসারি
এনটিটির নাম ভিন্ন হলে তার ম্যাপিং:

| Magento | Pushwoosh |
| :---- | :---- |
| গ্রাহক | ব্যবহারকারী |

### সিঙ্ক্রোনাইজ করা এনটিটির তালিকা:

* গ্রাহক
* অর্ডার
* পরিত্যক্ত কার্ট

### ব্যবহারের ক্ষেত্র

* অর্ডার তৈরি এবং কার্ট পরিত্যক্ত হওয়ার ইভেন্টের উপর ভিত্তি করে পুশ নোটিফিকেশন পাঠান।

* গ্রাহকদের বৈশিষ্ট্য (যেমন, অবস্থান, জন্মদিন) এর উপর ভিত্তি করে সেগমেন্ট করুন এবং টার্গেটেড ক্যাম্পেইন পাঠান।

* ব্রাউজার-ভিত্তিক প্রচারমূলক নোটিফিকেশন পাঠান।

## ইন্টিগ্রেশন সেট আপ করুন

### ইনস্টলেশন
<Aside>Pushwoosh ইন্টিগ্রেশন ইনস্টল করতে, নিশ্চিত করুন যে আপনার [Composer](https://getcomposer.org/) ইনস্টল করা আছে।</Aside>

১. আপনার Magento প্রজেক্টের রুটে নিম্নলিখিত Composer কমান্ডটি চালান:

```shell
composer require pushwoosh/magento2-integration
```


২. প্যাকেজটি ইনস্টল হয়ে গেলে, মডিউলটি ইনস্টল করতে Magento সেটআপ চালান:

```shell
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento cache:clean
```

### ইনস্টলেশন-পরবর্তী কনফিগারেশন

ইনস্টলেশন সম্পন্ন করার পর:

১. Magento অ্যাডমিন প্যানেলে লগ ইন করুন।
     
২. **Stores > Configuration > Pushwoosh > Configuration**-এ নেভিগেট করুন।

![Magento অ্যাডমিন প্যানেলে Pushwoosh কনফিগারেশন](/integrations-magento-integration-1.webp)

#### সাধারণ সেটিংস

**General** বিভাগে, নিম্নলিখিত ফিল্ডগুলি কনফিগার করুন:

* **Status**: ইন্টিগ্রেশন সক্রিয় করতে এটিকে `Enable`-এ সেট করুন।
* **API URL**: Pushwoosh API এন্ডপয়েন্ট লিখুন: `https://api.pushwoosh.com/`
* **API Key**: অনুরোধ প্রমাণীকরণের জন্য প্রয়োজনীয় আপনার Pushwoosh API কী পেস্ট করুন। [Pushwoosh API অ্যাক্সেস কী সম্পর্কে আরও জানুন](/bn/developer/api-reference/api-access-token/)
* **App Code**: আপনার মোবাইল বা ওয়েব অ্যাপ্লিকেশনের সাথে সম্পর্কিত [Pushwoosh অ্যাপ কোড](/bn/developer/api-reference/api-identifiers/#application-code) লিখুন।

গ্রাহক, অর্ডার এবং পরিত্যক্ত কার্ট সিঙ্ক করার জন্য উপলব্ধ কনফিগারেশন বিকল্পগুলি নিচে দেওয়া হল।

#### অর্ডার সিঙ্ক কনফিগারেশন

আপনার Magento স্টোর এবং Pushwoosh-এর মধ্যে অর্ডার ডেটা কীভাবে সিঙ্ক্রোনাইজ করা হবে তা নির্ধারণ করুন।


নিম্নলিখিত ফিল্ডগুলি পূরণ করুন:

| | |
|-------------|-----------------|
| **Order Sync Enable** | স্বয়ংক্রিয় অর্ডার সিঙ্ক্রোনাইজেশন সক্ষম করতে **Yes**-এ সেট করুন। যদি সক্ষম করা হয়, প্রক্রিয়াটি নির্ধারিত ক্রন সময়সূচী অনুসরণ করবে। স্বয়ংক্রিয় সিঙ্ক্রোনাইজেশন নিষ্ক্রিয় করতে **No**-এ সেট করুন। |
| **Cron Settings** | শুধুমাত্র অর্ডার সিঙ্ক সক্ষম থাকলেই উপলব্ধ। নিম্নলিখিত ফিল্ডগুলি ব্যবহার করে ক্রন জব কখন চালানো উচিত তা নির্ধারণ করুন: `Minute`, `Hour`, `Day`, `Month`, `Weekday`। **Cron** একটি সময়-ভিত্তিক শিডিউলার যা নির্দিষ্ট বিরতিতে স্বয়ংক্রিয়ভাবে কাজ চালানোর জন্য ব্যবহৃত হয়। |
| **Order Sync Numbers** | প্রতিটি সিঙ্ক এক্সিকিউশনের সময় কতগুলি অর্ডার প্রসেস করা হবে তা নির্দিষ্ট করুন। |
| **Order Sync in Real Time** | অর্ডার প্লেস করার সাথে সাথে সিঙ্ক করতে **Yes**-এ সেট করুন। |

![অর্ডার সিঙ্ক কনফিগারেশন সেটিংস](/integrations-magento-integration-3.webp)

এখানে আপনি অর্ডার সিঙ্ক্রোনাইজেশনের স্ট্যাটাসও দেখতে পারেন:

* **Total Orders**: সিঙ্ক্রোনাইজেশনের জন্য মূল্যায়ন করা মোট অর্ডারের সংখ্যা প্রদর্শন করে।
* **Synced Orders**: Pushwoosh-এর সাথে সফলভাবে সিঙ্ক্রোনাইজ করা অর্ডারের সংখ্যা।
* **Not Synced Orders**: যে অর্ডারগুলি এখনও সিঙ্ক্রোনাইজ করা হয়নি।
* **Fail Synced Orders**: যে অর্ডারগুলির জন্য সিঙ্ক্রোনাইজেশন প্রচেষ্টা ব্যর্থ হয়েছে।



#### পরিত্যক্ত কার্ট সিঙ্ক কনফিগারেশন

আপনার Magento স্টোর এবং Pushwoosh-এর মধ্যে পরিত্যক্ত শপিং কার্ট ডেটার সিঙ্ক্রোনাইজেশন কনফিগার করুন।

নিম্নলিখিত ফিল্ডগুলি পূরণ করুন:

| | |
|-------------|-----------------|
| **Abandoned Cart Syncing** | পরিত্যক্ত কার্ট ডেটার স্বয়ংক্রিয় সিঙ্ক্রোনাইজেশন সক্ষম করতে **Yes**-এ সেট করুন। যদি সক্ষম করা হয়, সিঙ্ক্রোনাইজেশন নির্ধারিত ক্রন সময়সূচী অনুযায়ী চলবে। |
| **Cron Schedule Configuration** | সিঙ্ক কখন চালানো উচিত তা নিম্নলিখিত ফিল্ডগুলি ব্যবহার করে নির্ধারণ করুন: `Minute`, `Hour`, `Day`, `Month`, `Weekday`। **Cron** একটি সময়-ভিত্তিক জব শিডিউলার যা নির্দিষ্ট বিরতিতে স্বয়ংক্রিয়ভাবে কাজ চালায়। |
| **Number of Abandoned Cart** | প্রতিটি সিঙ্ক্রোনাইজেশন রানের সময় কতগুলি পরিত্যক্ত কার্ট প্রসেস করা হবে তা নির্দিষ্ট করুন। |
| **Minimum Inactivity Time** | একটি কার্টকে পরিত্যক্ত হিসাবে বিবেচনা করার জন্য ন্যূনতম নিষ্ক্রিয়তার সময় (মিনিটে) সেট করুন। উদাহরণস্বরূপ, `60` মানে কমপক্ষে 60 মিনিটের জন্য নিষ্ক্রিয় কার্টগুলি সিঙ্ক করার জন্য যোগ্য হবে। |

![পরিত্যক্ত কার্ট সিঙ্ক কনফিগারেশন সেটিংস](/integrations-magento-integration-4.webp)

এখানে আপনি সিঙ্ক্রোনাইজেশন কার্যকলাপের রিয়েল-টাইম মেট্রিক্সও দেখতে পারেন:

* **Total Abandoned Carts**: পরিত্যক্ত হিসাবে চিহ্নিত কার্টের মোট সংখ্যা।
* **Synced Abandoned Carts**: Pushwoosh-এর সাথে সফলভাবে সিঙ্ক্রোনাইজ করা কার্টের সংখ্যা।
* **Not Synced Abandoned Carts**: যে কার্টগুলি এখনও সিঙ্ক্রোনাইজ করা হয়নি।
* **Fail Synced Abandoned Carts**: যে কার্টগুলির জন্য সিঙ্ক্রোনাইজেশন ব্যর্থ হয়েছে।

#### গ্রাহক সিঙ্ক কনফিগারেশন

গ্রাহকের বৈশিষ্ট্যের উপর ভিত্তি করে অডিয়েন্স সেগমেন্টেশন এবং ব্যক্তিগতকৃত মেসেজিং সক্ষম করতে আপনার Magento স্টোর থেকে Pushwoosh-এ গ্রাহক ডেটার সিঙ্ক্রোনাইজেশন কনফিগার করুন।

নিম্নলিখিত ফিল্ডগুলি পূরণ করুন:


| | |
|-------------|-----------------|
| **Customer Syncing** | সমস্ত বিদ্যমান এবং নতুন গ্রাহক রেকর্ডগুলির সিঙ্ক্রোনাইজেশন সক্ষম করতে **Yes**-এ সেট করুন। সিঙ্কিং নির্ধারিত ক্রন সময়সূচী অনুসরণ করবে এবং নির্দিষ্ট অ্যাট্রিবিউট ম্যাপিং ব্যবহার করবে। |
| **Cron Schedule Configuration** | সিঙ্ক কখন চালানো উচিত তা নিম্নলিখিত ফিল্ডগুলি ব্যবহার করে নির্ধারণ করুন: `Minute`, `Hour`, `Day`, `Month`, `Weekday`। **Cron** একটি সময়-ভিত্তিক জব শিডিউলার যা নির্দিষ্ট বিরতিতে স্বয়ংক্রিয়ভাবে কাজ চালায়। |
| **Mapping Customer Custom Fields** | সঠিক ডেটা স্থানান্তরের জন্য Magento গ্রাহক অ্যাট্রিবিউটগুলিকে Pushwoosh কাস্টম ফিল্ডে ম্যাপ করুন। উদাহরণ: `Date of Birth → Birthday`, `First Name → firstName` |
| **Number of Customers** | প্রতি ক্রন রানে সিঙ্ক করার জন্য গ্রাহকের সর্বোচ্চ সংখ্যা সেট করুন। |

![গ্রাহক সিঙ্ক কনফিগারেশন সেটিংস](/integrations-magento-integration-5.webp)

এখানে আপনি সিঙ্ক্রোনাইজেশন পরিসংখ্যানও দেখতে পারেন:

* **Total Customer**: সিঙ্ক করার জন্য চিহ্নিত গ্রাহক রেকর্ডের মোট সংখ্যা।
* **Synced Customer**: Pushwoosh-এর সাথে সফলভাবে সিঙ্ক্রোনাইজ করা গ্রাহকের সংখ্যা।
* **Not Synced Customer**: সিঙ্ক্রোনাইজেশনের জন্য অপেক্ষারত গ্রাহক।
* **Fail Synced Customer**: ত্রুটির কারণে সিঙ্ক করতে ব্যর্থ হওয়া গ্রাহক।

#### ওয়েব নোটিফিকেশন কনফিগারেশন

আপনার স্টোরের ভিজিটরদের জন্য ওয়েব পুশ নোটিফিকেশন সক্ষম করতে `Yes`-এ সেট করুন। এই কার্যকারিতা নিষ্ক্রিয় করতে `No`-এ সেট করুন।

সক্ষম করা হলে, আপনার Magento স্টোর ব্যবহারকারীদের তাদের ব্রাউজারের মাধ্যমে রিয়েল-টাইম মেসেজ পাঠাতে পারে। নোটিফিকেশনগুলি প্রচারমূলক অফার, অর্ডার স্ট্যাটাস আপডেট, পরিত্যক্ত কার্ট রিমাইন্ডার এবং অন্যান্য মার্কেটিং যোগাযোগের জন্য ব্যবহার করা যেতে পারে।

![Magento-তে ওয়েব নোটিফিকেশন কনফিগারেশন](/integrations-magento-integration-6.webp)

#### কনফিগারেশন সেভ করুন

সমস্ত প্রয়োজনীয় ফিল্ড পূরণ হয়ে গেলে, উপরের ডান কোণায় অবস্থিত **Save Config** বোতামে ক্লিক করুন। পরিবর্তনগুলি প্রয়োগ করার জন্য অনুরোধ করা হলে Magento ক্যাশে ক্লিয়ার করুন।

![Magento অ্যাডমিন প্যানেলে Save Config বোতাম](/integrations-magento-integration-7.webp)

## ম্যানুয়াল সিঙ্ক অপশন

#### নির্বাচিত গ্রাহকদের Pushwoosh-এ সিঙ্ক করুন

আপনি যদি সমস্ত গ্রাহককে স্বয়ংক্রিয়ভাবে সিঙ্ক্রোনাইজ করতে না চান, তাহলে আপনি ম্যানুয়ালি পৃথক বা নির্বাচিত গ্রাহকদের সিঙ্ক করতে পারেন।

১. Magento অ্যাডমিন প্যানেলে, **Customers > All Customers**-এ নেভিগেট করুন।
২. আপনি যে গ্রাহক(দের) সিঙ্ক করতে চান তাদের খুঁজুন এবং নির্বাচন করুন।
৩. গ্রাহক তালিকার উপরে থাকা **Actions** ড্রপডাউন থেকে, **Sync to Pushwoosh** বেছে নিন।

![গ্রাহকদের জন্য Pushwoosh-এ সিঙ্ক করার অ্যাকশন](/integrations-magento-integration-8.webp)

সিঙ্ক্রোনাইজেশন সম্পূর্ণ হলে, গ্রাহকের ডেটা আপনার Pushwoosh অ্যাকাউন্টের [User Explorer](/bn/product/audience-data-and-segmentation/user-explorer/) বিভাগে প্রদর্শিত হবে, যেখানে Magento থেকে স্থানান্তরিত সমস্ত প্রাসঙ্গিক তথ্য থাকবে।

#### নির্বাচিত অর্ডারগুলি Pushwoosh-এ সিঙ্ক করুন

আপনি যদি সমস্ত অর্ডার স্বয়ংক্রিয়ভাবে সিঙ্ক্রোনাইজ করতে না চান, তাহলে আপনি ম্যানুয়ালি নির্দিষ্ট অর্ডার সিঙ্ক করতে পারেন। এর জন্য:

১. Magento অ্যাডমিন প্যানেলে, **Sales > Orders**-এ নেভিগেট করুন।

২. তালিকা থেকে এক বা একাধিক অর্ডার নির্বাচন করুন।

৩. **Actions** ড্রপডাউন থেকে, **Sync to Pushwoosh** বেছে নিন।

![অর্ডারের জন্য Pushwoosh-এ সিঙ্ক করার অ্যাকশন](/integrations-magento-integration-9.webp)

সিঙ্ক্রোনাইজেশনের পরে, অর্ডারটি Pushwoosh [User Explorer](/bn/product/audience-data-and-segmentation/user-explorer/)-এ ব্যবহারকারীর প্রোফাইলের ইভেন্টস বিভাগে একটি `PW_OrderCreated` বা `PW_OrderUpdated` ইভেন্ট হিসাবে প্রদর্শিত হবে (যদি অর্ডারের স্ট্যাটাস পরিবর্তিত হয়), যার মধ্যে বিস্তারিত অর্ডারের তথ্য থাকবে।

#### নির্বাচিত পরিত্যক্ত কার্টগুলি সিঙ্ক করুন

ম্যানুয়ালি নির্বাচিত পরিত্যক্ত কার্ট সিঙ্ক করতে:

১. Magento অ্যাডমিন প্যানেলে, **Abandoned Carts** বিভাগে যান।
২. আপনি যে কার্টটি সিঙ্ক করতে চান তা নির্বাচন করুন।
৩. **Actions** ড্রপডাউন থেকে, **Sync to Pushwoosh** বেছে নিন।

**দ্রষ্টব্য:** একটি কার্ট কখন পরিত্যক্ত বলে বিবেচিত হবে তা নির্ধারণ করতে **Abandoned Cart Sync** সেটিংসে প্রয়োজনীয় নিষ্ক্রিয়তার সময়কাল কনফিগার করেছেন কিনা তা নিশ্চিত করুন।

![পরিত্যক্ত কার্টের জন্য Pushwoosh-এ সিঙ্ক করার অ্যাকশন](/integrations-magento-integration-10.webp)

সিঙ্ক্রোনাইজেশনের পরে, পরিত্যক্ত কার্টের ডেটা Pushwoosh [User Explorer](/bn/product/audience-data-and-segmentation/user-explorer/)-এ ব্যবহারকারীর প্রোফাইলের **Events** বিভাগে একটি `PW_AbandonedCart` ইভেন্ট হিসাবে বিস্তারিত তথ্য সহ প্রদর্শিত হবে।

এছাড়াও, ব্যবহারকারীর প্রোফাইলে দুটি ট্যাগ সেট করা হবে:

* **Abandoned Cart Date** → `PW_AbandonedCartDate`
* **Abandoned Cart ID** → `PW_AbandonedCartID`

এই ট্যাগগুলি আপনার ইমেল টেমপ্লেটে কানেক্টেড কন্টেন্ট ব্যবহার করে পরিত্যক্ত কার্ট রিমাইন্ডার পাঠাতে ব্যবহার করা যেতে পারে। [আরও জানুন](/bn/product/personalization/liquid-templates/#connected-content)

### ইন্টিগ্রেশন কাজ করছে কিনা তা যাচাই করুন

ইন্টিগ্রেশন সঠিকভাবে কাজ করছে কিনা তা নিশ্চিত করতে:

১. Magento-তে একটি টেস্ট গ্রাহক তৈরি করুন।
২. গ্রাহককে ম্যানুয়ালি Pushwoosh-এ সিঙ্ক করুন।
৩. আপনার Pushwoosh ড্যাশবোর্ডে [User Explorer](/bn/product/audience-data-and-segmentation/user-explorer/) খুলুন এবং গ্রাহককে খুঁজুন।

যদি গ্রাহক [User Explorer](/bn/product/audience-data-and-segmentation/user-explorer/)-এ প্রদর্শিত হয়, তবে এটি নির্দেশ করে যে সিঙ্ক্রোনাইজেশন সফল হয়েছে।