---
title: "WooCommerce انٹیگریشن گائیڈ | Tajo"
description: "اپنے WooCommerce اسٹور کو Tajo for WooCommerce پلگ ان کے ساتھ Tajo سے جوڑیں: انگیجمنٹ ایونٹس، پائیدار ترسیل اور پرائیویسی کے لیے کم سے کم رکھا گیا گاہک ڈیٹا۔ زیرِ تیاری، ابھی شروع سے آخر تک تصدیق نہیں ہوئی۔"
url: https://tajo.io/ur/docs/ecommerce-platforms/woocommerce/
markdown: https://tajo.io/ur/docs/ecommerce-platforms/woocommerce.md
lang: ur-PK
author: "Set Noa"
author_url: https://tajo.io/ur/set-noa/
robots: noindex
---

ابتدائی رسائی کی درخواست کریں

اپنا پہلا نام اور دفتری ای میل پتہ درج کریں۔ ہم Tajo تک رسائی کی درخواست کی تصدیق کے لیے ایک لنک ای میل کریں گے۔

# WooCommerce انٹیگریشن گائیڈ

[Set Noa](https://tajo.io/ur/set-noa/)

یہ گائیڈ ایک WooCommerce اسٹور کو Tajo سے جوڑتی ہے۔ انٹیگریشن کے دو حصے ہیں جو مل کر کام کرتے ہیں:

- **Tajo for WooCommerce پلگ ان**: WordPress کے اندر انگیجمنٹ ایونٹس (آرڈرز، کارٹس، ریفنڈز، ریویوز، فارم سبمیشنز) ان کے ہوتے ہی پکڑتا ہے اور انہیں ایک پائیدار، دستخط شدہ آؤٹ باکس کے ذریعے Tajo تک پہنچاتا ہے۔ 14 اکتوبر 2026 کو پلگ ان ایک مقامی سائٹ پر ٹیسٹ کیا گیا؛ Tajo تک ترسیل کی ابھی تصدیق نہیں ہوئی۔
- **WooCommerce REST کنکشن**: Tajo تاریخی امپورٹ اور مسلسل سنک کے لیے آپ کے اسٹور کے گاہک، آرڈرز، پروڈکٹس، کوپنز، ریفنڈز اور ریویوز پڑھتا ہے۔ صرف REST والے سیٹ اپ کے لیے [WooCommerce کنیکٹر ریفرنس](https://tajo.io/ur/docs/connectors/ecommerce/woocommerce/) دیکھیں۔

مارکیٹنگ آٹومیشن خود (Brevo اور دیگر فراہم کنندگان کے ذریعے ای میل، SMS، واٹس ایپ) پلگ ان میں نہیں بلکہ Tajo میں کنفیگر ہوتی ہے۔ پلگ ان کا کام WordPress سے قابلِ اعتماد ایونٹس باہر نکالنا ہے۔

## پیشگی شرائط

- ایڈمن رسائی کے ساتھ **WordPress 6.3+**
- **PHP 7.4+**
- **WooCommerce 7.0+** (پلگ ان WooCommerce کے بغیر WordPress سائٹس پر بھی چلتا ہے، کامرس اڈاپٹرز صرف غیر فعال رہتے ہیں)
- WordPress کنکشن بنا ہوا **Tajo اکاؤنٹ**
- Tajo اینڈ پوائنٹ پر HTTPS (ہوسٹ شدہ Tajo پر ہمیشہ موجود)

## مرحلہ 1: Tajo for WooCommerce پلگ ان انسٹال کریں

### دستی انسٹالیشن

```bash
# Download the plugin
cd wp-content/plugins
wget https://tajo.io/downloads/woocommerce/tajo-woocommerce-latest.zip

# Verify and unzip
unzip tajo-woocommerce-latest.zip
```

پھر WordPress ایڈمن سے فعال کریں:

1. **Plugins → Installed Plugins** پر جائیں
2. “Tajo for WooCommerce” تلاش کریں
3. **Activate** پر کلک کریں

آپ zip فائل براہ راست **Plugins → Add New → Upload Plugin** کے ذریعے بھی اپ لوڈ کر سکتے ہیں۔ ہر ریلیز کے ساتھ [tajo.io/downloads/woocommerce/](https://tajo.io/downloads/woocommerce/tajo-woocommerce-1.0.0.zip.sha256) پر ایک SHA-256 چیک سم شائع کیا جاتا ہے۔ پلگ ان ابھی WordPress.org ڈائریکٹری میں درج نہیں ہے؛ آج معاون راستہ دستی انسٹالیشن ہے۔

## مرحلہ 2: کنکشن کنفیگر کریں

**WooCommerce → Tajo** پر جائیں (WooCommerce کے بغیر سائٹس پر: **Settings → Tajo**) اور اپنے Tajo WordPress کنکشن سے تین ویلیوز درج کریں:

| فیلڈ | ویلیو |
| --- | --- |
| **Tajo اینڈ پوائنٹ** | Tajo میں دکھایا گیا HTTPS webhook URL، مثلاً `https://alto.tajo.io/api/connectors/wordpress/webhooks/engagement` |
| **Binding ID** | Tajo میں موجود کنکشن کا binding ID |
| **سائننگ سیکرٹ** | مشترکہ سیکرٹ (32–256 حروف)۔ پلگ ان فعال ہوتے وقت ایک مضبوط مقامی سیکرٹ بناتا ہے؛ اسے Tajo میں پیسٹ کریں، یا Tajo کا سیکرٹ یہاں پیسٹ کریں |

`wp-config.php` میں شامل کرنے کے لیے کوئی API کلید کا constant نہیں ہے۔ جب تک تینوں ویلیوز محفوظ نہ ہو جائیں، ایونٹس مقامی آؤٹ باکس میں محفوظ طریقے سے قطار میں رہتے ہیں۔

پھر پائپ کو سرے سے سرے تک جانچیں:

1. **Queue test event** پر کلک کریں، پھر **Process now** پر۔
2. ڈیلیوری آؤٹ باکس ٹیبل میں ایونٹ ڈیلیور شدہ نظر آنا چاہیے۔
3. Tajo میں تصدیق کریں کہ `connection.test` ایونٹ WordPress کنکشن پر پہنچ گیا ہے۔

## پلگ ان کیا بھیجتا ہے

ہر ایونٹ ایک مختصر، پرائیویسی کے لحاظ سے کم سے کم رکھا گیا لفافہ ہے جس پر HMAC-SHA256 سے دستخط ہوتے ہیں۔ WordPress سے صرف انگیجمنٹ کی شناختی فیلڈز (ای میل، فون، مقامی IDs) اور محدود ایونٹ میٹا ڈیٹا باہر جاتا ہے؛ نام، ڈاک کے پتے، IP ایڈریسز، یوزر ایجنٹس، کمنٹ کے متن، من مانی فارم فیلڈز، آرڈر نوٹس یا ادائیگی کی تفصیلات کبھی باہر نہیں جاتیں۔

### WooCommerce ایونٹس

| Hook | ایونٹ |
| --- | --- |
| `woocommerce_created_customer` / `woocommerce_update_customer` | `customer.created` / `customer.updated` |
| `woocommerce_new_product` / `woocommerce_update_product` | `product.created` / `product.updated` |
| `woocommerce_add_to_cart`، آئٹم ہٹانا، کوپن لگانا/ہٹانا | `cart.updated` (چھوڑی گئی کارٹ کے فلو کے لیے کارٹ کے خلاصے کے ساتھ) |
| `woocommerce_cart_emptied` | `cart.emptied` |
| `woocommerce_new_order` / `woocommerce_update_order` | `order.placed` / `order.updated` |
| `woocommerce_order_status_changed` | `order.status_changed` (مکمل ہونے پر مزید `order.fulfilled`) |
| `woocommerce_payment_complete` | `order.paid` |
| `woocommerce_order_refunded` | `refund.created` |
| WooCommerce Subscriptions کے اسٹیٹس اپ ڈیٹس | `subscription.status_changed` |

آرڈر ایونٹس آرڈر نمبر، اسٹیٹس، کرنسی، کل رقوم، لائن آئٹمز اور استعمال کے لیے تیار ریویو/دوبارہ آرڈر URLs ساتھ لاتے ہیں، جو خریداری کے بعد اور واپس لانے والی آٹومیشنز کے لیے کسی اضافی API کال کے بغیر کافی ہیں۔

### WordPress ایونٹس

- یوزر اکاؤنٹس کے لیے `contact.created` / `contact.updated` / `contact.deleted`
- عوامی مواد کے لیے `content.published` / `content.updated` / `content.unpublished`
- وزیٹر کمنٹس اور پروڈکٹ ریویوز کے لیے `comment.created` / `comment.status_changed` (WooCommerce کے اندرونی آرڈر نوٹس، pingbacks اور trackbacks کبھی نہیں بھیجے جاتے)
- کامیاب **Contact Form 7**، **WPForms**، **Gravity Forms** اور **Fluent Forms** سبمیشنز کے لیے `form.submitted`؛ صرف ٹائپ شدہ ای میل/فون کی شناختی فیلڈز اور فارم میٹا ڈیٹا نکالا جاتا ہے، من مانی بھیجی گئی فیلڈز رد کر دی جاتی ہیں

## قابلِ اعتماد ہونا: ڈیلیوری آؤٹ باکس

پلگ ان کبھی بھی صفحہ لوڈ ہوتے وقت ایونٹس براہ راست Tajo کو نہیں بھیجتا۔ ہر ایونٹ پہلے مقامی آؤٹ باکس ٹیبل میں لکھا جاتا ہے، پھر WP-Cron اسے ان خصوصیات کے ساتھ ڈیلیور کرتا ہے:

- محدود ایکسپونینشل بیک آف (`Retry-After` کا لحاظ رکھتے ہوئے زیادہ سے زیادہ 8 کوششیں)
- ڈیڈ لیٹرز، ایڈمن میں ایک کلک والے **Replay dead letters** کے ساتھ
- ریٹینشن کی حدیں تاکہ ناقابلِ رسائی اینڈ پوائنٹ کبھی ذاتی ڈیٹا جمع نہ کر سکے (ڈیلیور شدہ: 7 دن؛ قطار میں: 30 دن؛ ڈیڈ لیٹرز: آخری اپ ڈیٹ کے 30 دن بعد)
- Idempotent ایونٹ IDs، تاکہ دوبارہ کوششیں اور ری پلے آگے کبھی نقل نہ بنائیں

اگر آپ کا ہوسٹ WP-Cron بند کر دیتا ہے (`DISABLE_WP_CRON`)، تو `wp-cron.php` کو کسی حقیقی شیڈیولر سے کم از کم ہر منٹ میں ایک بار چلائیں۔

## رضامندی کبھی فرض نہیں کی جاتی

اکاؤنٹ بنانا، چیک آؤٹ، خریداری اور عام فارم سبمیشنز کو مارکیٹنگ کی رضامندی **نہیں** سمجھا جاتا۔ بلٹ ان ایونٹس خالی رضامندی کی فہرست ساتھ لاتے ہیں۔ واضح رضامندی (مثلاً نیوز لیٹر کے ٹک شدہ باکس سے) ریکارڈ کرنے کے لیے اسے ایکسٹینشن hook کے ذریعے بھیجیں:

```php
do_action(
    'tajo_engagement_emit',
    'consent.updated',
    array( 'email' => $email ),
    array( 'policyVersion' => '2026-07' ),
    array(
        array(
            'channel'  => 'email',
            'status'   => 'opt_in',        // or 'opt_out'
            'purpose'  => 'marketing',
            'source'   => 'newsletter_checkbox',
            'evidence' => array( 'formId' => 'newsletter-footer', 'field' => 'marketing_email' ),
        ),
    ),
    gmdate( 'c' )
);
```

یہی hook کسی بھی پلگ ان یا تھیم کو اپنی مرضی کے ایونٹس بھیجنے دیتا ہے؛ ہر چیز اسی سینیٹائزر، آؤٹ باکس اور دستخط سے گزرتی ہے۔

## مرحلہ 3: تاریخی امپورٹ

پلگ ان کے ایونٹس انسٹالیشن کے بعد کی ہر چیز کا احاطہ کرتے ہیں۔ پلگ ان سے پہلے کی تاریخ کے لیے Tajo کا WooCommerce REST کنکشن موجودہ گاہک، آرڈرز، پروڈکٹس، کوپنز، ریفنڈز اور ریویوز امپورٹ کرتا ہے، جو مکمل طور پر Tajo کی طرف ایک WooCommerce REST API کلید سے کنفیگر ہوتا ہے (**WooCommerce → Settings → Advanced → REST API**، پڑھنے کی اجازت)۔ تفصیلات کے لیے [WooCommerce کنیکٹر ریفرنس](https://tajo.io/ur/docs/connectors/ecommerce/woocommerce/) دیکھیں۔

## پرائیویسی اور GDPR

- پلگ ان WordPress کے **Tools → Export Personal Data** اور **Tools → Erase Personal Data** کے ساتھ رجسٹر ہوتا ہے؛ کسی مماثل ای میل کے محفوظ آؤٹ باکس ایونٹس مقامی طور پر ایکسپورٹ یا مٹا دیے جاتے ہیں۔
- مٹانے اور ڈیلیوری کے درمیان ایک fail-closed میوٹیکس مشترک ہے، اس لیے کوئی مٹانے کا عمل اُس وقت مکمل ہونے کی اطلاع نہیں دے سکتا جب کوئی پے لوڈ بھیجا جا رہا ہو۔
- مقامی مٹانا صرف WordPress آؤٹ باکس کا احاطہ کرتا ہے۔ آگے کے ڈیٹا کے لیے متعلقہ درخواست Tajo میں جمع کرائیں۔
- غیر فعال کرنے سے ڈیلیوری رک جاتی ہے مگر کنفیگریشن اور قطار میں موجود ایونٹس محفوظ رہتے ہیں؛ پلگ ان کو **ڈیلیٹ** کرنے سے آؤٹ باکس، سیٹنگز، سیکرٹ اور شیڈولز مستقل طور پر ختم ہو جاتے ہیں۔

## مطابقت

- **HPOS**: پلگ ان WooCommerce High-Performance Order Storage سے مطابقت کا اعلان کرتا ہے اور صرف CRUD آبجیکٹس اور عوامی hooks استعمال کرتا ہے۔
- **WooCommerce Subscriptions**: ایکسٹینشن فعال ہونے پر سبسکرپشن کے اسٹیٹس کی تبدیلیاں پکڑی جاتی ہیں۔
- **ملٹی سائٹ**: ان انسٹال نیٹ ورک کی ہر سائٹ کو صاف کرتا ہے۔

## آپریشنز ریفرنس

سرور ٹو سرور دریافت اور آؤٹ باکس کنٹرول ایڈمنسٹریٹرز کو Application Password کی توثیق کے ذریعے دستیاب ہیں:

| طریقہ | روٹ | مقصد |
| --- | --- | --- |
| `GET` | `/wp-json/tajo/v1/capabilities` | پلگ ان کا ورژن، شناخت شدہ اڈاپٹرز، ایونٹ کی فہرست، آؤٹ باکس کی صحت |
| `GET` | `/wp-json/tajo/v1/outbox` | آؤٹ باکس کی گنتی (پے لوڈز کبھی ظاہر نہیں کیے جاتے) |
| `POST` | `/wp-json/tajo/v1/outbox/process` | ایک بیچ فوراً پروسیس کریں |
| `POST` | `/wp-json/tajo/v1/outbox/replay` | ڈیڈ لیٹرز دوبارہ چلائیں |

## مسائل کا حل

| علامت | وجہ اور حل |
| --- | --- |
| ایونٹس “Queued” پر رکے رہتے ہیں | اینڈ پوائنٹ، binding ID یا سیکرٹ ابھی محفوظ نہیں ہوا۔ جب تک تینوں کنفیگر نہ ہوں ڈیلیوری روکی رہتی ہے |
| ایونٹس “Retrying” پر رکے رہتے ہیں | Tajo اینڈ پوائنٹ آپ کے ہوسٹ سے قابلِ رسائی نہیں، یا WP-Cron نہیں چل رہا۔ آؤٹ باکس ٹیبل کا error کالم اور اپنا cron سیٹ اپ دیکھیں |
| ڈیڈ لیٹرز جمع ہو رہے ہیں | ایسی خرابی جس پر دوبارہ کوشش نہیں ہو سکتی (عام طور پر غلط binding ID یا سیکرٹ)۔ کنفیگریشن درست کریں، پھر **Replay dead letters** چلائیں |
| ”Enter a valid HTTPS Tajo webhook endpoint” | اینڈ پوائنٹ HTTPS ہونا چاہیے اور اس میں کوئی امبیڈڈ کریڈنشلز نہ ہوں |
| ٹیسٹ ایونٹ ڈیلیور ہوا مگر Tajo میں کچھ نہیں | جانچیں کہ آپ نے binding ID اسی Tajo ورک اسپیس/کنکشن سے پیسٹ کیا ہے جس سے اینڈ پوائنٹ تعلق رکھتا ہے |

## اگلے اقدامات

- [WooCommerce کنیکٹر ریفرنس](https://tajo.io/ur/docs/connectors/ecommerce/woocommerce/): REST سنک، webhook دستخط کی تفصیلات، کنفیگ کیز
- [گاہک کی سنک](https://tajo.io/ur/docs/skills/data-sync/customer-sync/): WooCommerce گاہکوں کو آپ کے سسٹم آف ریکارڈ میں میپ کرنا
- Tajo میں `cart.updated`، `order.placed` اور `order.fulfilled` ایونٹس کی مدد سے چھوڑی گئی کارٹ، خریداری کے بعد اور واپس لانے والی آٹومیشنز کنفیگر کریں
