Odoo + Shopify Sync: المنتجات والطلبات والمخزون
تتمتع Shopify بأكثر من 10% من إجمالي إيرادات التجارة الإلكترونية في الولايات المتحدة. بالنسبة للشركات التي تستخدم Odoo 19 Enterprise باعتباره العمود الفقري التشغيلي لها وShopify كواجهة متجر تواجه العملاء، فإن الحفاظ على مزامنة كلا النظامين أمر غير قابل للتفاوض - فالأنظمة المنفصلة تعني أخطاء في المخزون، وتأخير في معالجة الطلبات، ومشاكل محاسبية.
يغطي هذا الدليل التكامل الكامل بين Odoo-Shopify: قرارات التصميم، ومزامنة كتالوج المنتجات، واستيراد الطلبات في الوقت الفعلي، وإدارة المخزون ثنائي الاتجاه، وتسوية مدفوعات Shopify، وإدارة المتاجر المتعددة.
الوجبات الرئيسية
- دعم كل من واجهات برمجة تطبيقات REST وGraphQL الخاصة بـ Shopify؛ يُفضل GraphQL لـ Shopify Plus
- مزامنة المنتج ثنائية الاتجاه: قم بالإنشاء في Odoo → النشر على Shopify، أو الاستيراد من Shopify
- تعتمد مزامنة المخزون على الأحداث: يتم تشغيلها عند كل حركة للمخزون في Odoo
- يؤدي الرد التلقائي على الويب للطلبات من Shopify إلى Odoo إلى استيراد الطلب بشكل شبه فوري (< 30 ثانية)
- تتعامل تسوية Shopify Payments مع الدفعات والرسوم والمبالغ المستردة تلقائيًا
- تتم مزامنة المخزون متعدد المواقع مع ميزة المواقع المتعددة في Shopify
- ترتبط كتالوجات Shopify Plus B2B (الجملة) بقوائم أسعار Odoo
- تدفق المرتجعات من Shopify إلى Odoo RMA مع التعديل الآلي للمخزون
هندسة التكامل
** نهج واجهة برمجة التطبيقات: **
يستخدم التكامل واجهة برمجة تطبيقات REST Admin الخاصة بـ Shopify لمعظم العمليات وخطافات الويب للتحديثات المستندة إلى الأحداث:
- REST API: المنتج الخام، وقراءة الطلب، وإدارة المخزون
- GraphQL API: العمليات المجمعة (تصدير الكتالوج الكبير)، وتسعير B2B (Shopify Plus)
- الخطافات عبر الويب: إنشاء الطلب في الوقت الفعلي، وتحديث الطلب، وإنشاء المبالغ المستردة، وتحديث مستوى المخزون
** طوبولوجيا الاتصال: **
Odoo 19 (ERP Backend)
↕ Product, Inventory, Price
Shopify Admin API / Webhooks
↕ Real-time events
Shopify Storefront (Customer-facing)
المصادقة:
يستخدم Shopify مفاتيح API الخاصة بالتطبيق أو OAuth للتطبيق المخصص:
- التطبيق الخاص: أبسط، ويوصى به لعمليات التكامل في متجر واحد
- التطبيق المخصص (OAuth): مطلوب لتوزيع متجر التطبيقات Shopify أو إدارة المتاجر المتعددة
بالنسبة لموصل ECOSIRE، قم بتكوين تطبيق مخصص في Shopify's Partner Dashboard.
تكوين تطبيق Shopify
الخطوة 1: إنشاء تطبيق مخصص في Shopify
- انتقل إلى مسؤول Shopify → الإعدادات → التطبيقات وقنوات المبيعات
- انقر تطوير التطبيقات → إنشاء تطبيق
- قم بتعيين اسم التطبيق (على سبيل المثال، "تكامل Odoo")
- تكوين نطاقات واجهة برمجة التطبيقات:
read_products, write_products read_orders, write_orders read_inventory, write_inventory read_shipping, write_shipping read_customers, write_customers read_fulfillments, write_fulfillments read_locations read_price_rules, write_price_rules - قم بتعيين عنوان URL للخطاف على الويب:
https://your-odoo.com/shopify/webhook - قم بتثبيت التطبيق → انسخ رمز وصول Admin API
الخطوة 2: التهيئة في Odoo
انتقل إلى المبيعات → Shopify أو المخزون → متاجر Shopify:
| المجال | القيمة |
|---|---|
| اسم المتجر | اسم متجرك |
| مجال شوبيفاي | yourstore.myshopify.com |
| رمز واجهة برمجة تطبيقات المشرف | من التطبيق المخصص |
| نسخة API | 2024-10 (أحدث مستقر) |
| ويب هوك السري | تم إنشاؤها تلقائيًا، وتستخدم للتحقق من خطافات الويب |
| المستودع الافتراضي | المستودع الأساسي لطلبات Shopify |
| العملة | تخزين العملة |
| شركة | شركة اودو لهذا المتجر |
| مجلة الدفع | Shopify مجلة المدفوعات |
| مجلة الاسترداد | Shopify مجلة المبالغ المستردة |
| بادئة الطلب | على سبيل المثال، "SHO-" |
الخطوة 3: تسجيل خطافات الويب
بعد حفظ التكوين، انقر فوق تسجيل Webhooks. يشترك الموصل في:
- الكود0
- الكود0
- الكود0
- الكود0
- الكود0
- الكود0
- الكود0
- الكود0
- الكود0
مزامنة كتالوج المنتجات
خيارات اتجاه المزامنة:
| الوضع | الوصف | حالة الاستخدام |
|---|---|---|
| أودو → شوبيفاي | Odoo هو السيد، Shopify هو العرض | المنتجات الجديدة التي تم إنشاؤها في Odoo ERP أولاً |
| شوبيفاي → أودو | Shopify هو السيد، وOdoo هو العبد | متجر Shopify الحالي، إضافة Odoo |
| ثنائي الاتجاه | تتم مزامنة التغييرات في أي من النظامين في كلا الاتجاهين | نادر؛ خطر الصراعات |
موصى به: Odoo → Shopify لعمليات النشر الجديدة. يوفر مدير منتج Odoo بيانات أكثر ثراءً (معلومات الشراء، والتكلفة، وقائمة مكونات الصنف) التي لا يحتاجها Shopify.
** رسم خرائط مجال المنتج: **
| حقل اودو | مجال شوبيفاي |
|---|---|
| اسم المنتج | العنوان |
| وصف المبيعات | نص HTML |
| فئة المنتج | نوع المنتج |
| العلامات | العلامات |
| قائمة الأسعار | السعر |
| قارن بالسعر | قارن بالسعر |
| الباركود (EAN) | باركود |
| الوزن | الوزن |
| صور المنتج | صور |
| مبيعات موافق | منشور (صحيح/خطأ) |
| نوع المنتج (خدمة/قابل للتخزين) | يتطلب الشحن |
** التزامن البديل: **
يدعم Shopify ما يصل إلى 3 خيارات للمنتج (اللون والحجم والمواد) بحد أقصى 100 متغير لكل منتج. يقوم الموصل بتعيين سمات منتج Odoo:
- Odoo
product.template→ منتج Shopify - Odoo
product.product(المتغيرات) → Shopify المتغيرات - قيم سمات Odoo → قيم خيار Shopify
مزامنة الكتالوج المجمع:
للإعداد الأولي باستخدام كتالوجات كبيرة (أكثر من 1000 منتج):
- انتقل إلى Shopify → الكتالوج → المزامنة المجمعة
- حدد فئات المنتجات لمزامنتها
- قم بتشغيل مهمة المزامنة المجمعة (عملية الخلفية)
- مراقبة التقدم في سجل المزامنة
- قم بمراجعة أي أخطاء في التعيين وحلها
إدارة الطلبات
استيراد الطلب في الوقت الفعلي عبر خطافات الويب:
عندما يقدم العميل طلبًا على Shopify، يتم تنشيط خطاف الويب orders/create في غضون ثوانٍ. الموصل:
- يتلقى حمولة webhook من Shopify
- التحقق من توقيع خطاف الويب (HMAC-SHA256)
- إنشاء أمر بيع في Odoo على الفور
- إرجاع 200 OK إلى Shopify (يمنع إعادة المحاولة)
الوقت الشامل من إتمام عملية الدفع في Shopify إلى طلب بيع Odoo: عادةً من 3 إلى 15 ثانية.
** تعيين بيانات الطلب: **
| مجال شوبيفاي | حقل اودو |
|---|---|
| معرف الطلب | المرجع (بالبادئة) |
| اسم العميل | اسم الشريك |
| البريد الإلكتروني للعميل | البريد الإلكتروني للشريك |
| عنوان الفواتير | عنوان الفاتورة |
| عنوان الشحن | عنوان التسليم |
| البنود | خطوط أمر البيع |
| اكواد الخصم | خطوط الخصم |
| طريقة الشحن | ناقل التسليم |
| تكلفة الشحن | خط رسوم التوصيل |
| إجمالي الضريبة | خطوط الضرائب |
| الوضع المالي | حالة الدفع |
| حالة الاستيفاء | حالة التسليم |
| ملاحظات | ملاحظات العملاء |
| العلامات | العلامات الداخلية |
حقول الطلب المخصصة:
بالنسبة لتجار Shopify Plus الذين يتمتعون بسمات الدفع المخصصة:
- خريطة سمات مذكرة الطلب Shopify لحقول Odoo المخصصة
- مثال: سمة "رقم طلب الشراء" →
x_purchase_order_numberفي أمر البيع - مثال: "رسالة هدية" →
noteفي أمر البيع
سير عمل تجهيز الطلب:
بعد الاستيراد، يقوم الموصل بإدارة الطلب من خلال سير العمل القياسي في Odoo:
- تأكيد أمر البيع
- تم إنشاء أمر التسليم في Odoo WMS
- يختار المستودعات والحزم والسفن
- تم التحقق من صحة التسليم في Odoo (تم إدخال التتبع)
- يرسل الرابط الاستيفاء إلى Shopify مع رقم التتبع
- Shopify يضع علامة على الطلب على أنه "مكتمل" ويرسل بريدًا إلكترونيًا إلى العميل
الإنجاز الجزئي:
يدعم Shopify الطلبات ذات عمليات التنفيذ المتعددة (اشحن ما هو متاح الآن، والباقي لاحقًا). يعالج الموصل:
- التسليم الجزئي في Odoo → يتم إرسال التسليم الجزئي إلى Shopify
- يعرض Shopify حالة الاستيفاء الجزئي للعميل
- يتم إنشاء تسليم منفصل للعناصر المتبقية عند توفر المخزون
مزامنة المخزون
مزامنة المخزون ثنائي الاتجاه:
يتدفق المخزون في كلا الاتجاهين للحفاظ على الدقة:
Odoo → Shopify (الاتجاه الأساسي):
- تؤدي كل حركة للمخزون في Odoo إلى تحديث مستوى المخزون في Shopify
- الكمية المتوفرة = متاحة - محجوزة - مخزون أمان
- التحديثات عبر Shopify's Inventory Level API
Shopify → Odoo (احتياطي):
- إذا تم ضبط مخزون Shopify يدويًا (المسؤول أو التطبيق)، فسيتم تشغيل خطاف الويب
- يقوم الرابط بإنشاء تعديل مخزون Odoo مع ملاحظة التدقيق
** Shopify متعدد المواقع: **
تقوم ميزة Shopify متعددة المواقع بتتبع المخزون لكل موقع فعلي. قم بتعيين مستودعات Odoo لمواقع Shopify:
| مستودع اودو | موقع شوبيفاي |
|---|---|
| المستودع الرئيسي | الموقع الرئيسي |
| الساحل الشرقي العاصمة | موقع الساحل الشرقي |
| الساحل الغربي العاصمة | موقع الساحل الغربي |
| إسقاط الشاحن | موقع المورد |
يدفع الموصل الكميات لكل موقع إلى Shopify بناءً على تعيين موقع المستودع.
** ضمانات دقة المخزون: **
- يمنع المخزن المؤقت للأمان Shopify من عرض جميع المخزون المتاح
- التعامل مع نفاد المخزون: عندما تصل الكمية إلى 0، مخزون Shopify = 0 (ليس سلبيًا)
- مواصلة البيع عند نفاد المخزون: قابل للتهيئة لكل منتج (بعض البائعين يسمحون بالطلبات المتأخرة)
Shopify تسوية المدفوعات
هيكل رسوم مدفوعات Shopify:
| خطة | السعر على الإنترنت | السعر الشخصي |
|---|---|---|
| الأساسية | 2.9% + 30¢ | 2.7% |
| شوبيفاي | 2.6% + 30¢ | 2.5% |
| متقدم | 2.4% + 30¢ | 2.4% |
| زائد | 0.2% (مدفوعات شوبيفاي) | 0.2% |
تسوية الدفع:
تقوم Shopify بتحويل المدفوعات إلى حسابك المصرفي كل 2-3 أيام عمل. يستورد الموصل بيانات الدفع:
- تنزيل تقرير دفع تعويضات Shopify Payments (أو عبر واجهة برمجة التطبيقات)
- الاستيراد عبر **Shopify → الشؤون المالية → دفع تعويضات الاستيراد **
- يقوم الرابط بإنشاء إدخالات دفتر اليومية:
- الإيرادات (صافي مبالغ البيع لكل طلب)
- Shopify مصاريف الرسوم (معالجة الدفع)
- تسويات المبالغ المستردة
- صافي الدفع المستحق
- عند وصول التحويل البنكي: قم بالتسوية مع مجلة Shopify Payments
التعامل مع المبالغ المستردة في Shopify:
عند معالجة استرداد الأموال في Shopify:
- يتم تشغيل خطاف الويب
refunds/create - يقوم الموصل بإنشاء إشعار دائن في Odoo مقابل الفاتورة الأصلية
- إذا تم إرجاع المخزون (إعادة تخزينه): يتم إنشاء تحويل إرجاع
- نشر إشعار الدائن → تمت تسوية الرصيد مقابل حساب العميل
Shopify Plus التكامل B2B
يتضمن Shopify Plus ميزات B2B (كتالوجات الجملة، وشروط الدفع، وصافي الدفع). يدمج الموصل هذه العناصر مع تسعير Odoo B2B:
** تعيين الشركة والكتالوج: **
| شوبيفاي B2B | يعادل أودو |
|---|---|
| شركة | res.company (أو شريحة العملاء) |
| كتالوج | قائمة الأسعار |
| شروط الدفع | شروط الدفع عند أمر البيع |
| مسودة الأوامر | عروض الأسعار (بيع.أمر في مسودة) |
تسعير مزامنة B2B:
- قم بإنشاء كتالوج Shopify B2B في الموصل
- اربط بقائمة أسعار Odoo
- تعيين لشركات Shopify B2B
- تغيرات الأسعار في قائمة أسعار Odoo → يتم دفعها تلقائيًا إلى كتالوج Shopify B2B
إدارة المتاجر المتعددة
بالنسبة للعلامات التجارية التي تدير متاجر Shopify متعددة (المناطق، العلامات التجارية، البيع بالجملة مقابل البيع بالتجزئة):
** تكوينات متجر متعددة: **
قم بإنشاء تكوينات موصل منفصلة لكل متجر Shopify:
- بيانات اعتماد API مختلفة لكل متجر
- رؤية المنتج الخاص بالمتجر (بعض المنتجات في جميع المتاجر، وبعضها في متجر محدد)
- التسعير الخاص بالمتجر (التسعير الإقليمي، البيع بالجملة مقابل التجزئة)
- تخصيص المخزون الخاص بالمتجر
تخصيص المخزون عبر المتاجر:
Available for Store A = On-Hand - Reserve for Store B - Reserve for Store C - Safety Stock
قم بتكوين قواعد التخصيص لمنع البيع الزائد عند سحب متاجر متعددة من نفس المخزون.
الأسئلة المتداولة
كيف يتعامل الموصل مع حقول التعريف الخاصة بمنتج Shopify للبيانات المخصصة؟
تقوم حقول التعريف الخاصة بـ Shopify بتخزين بيانات مخصصة عن المنتجات والطلبات والعملاء. يقوم الموصل بتعيين حقول Odoo محددة إلى حقول تعريف Shopify. على سبيل المثال، قم بتعيين حقل x_care_instructions الخاص بـ Odoo إلى حقل تعريف product.care_instructions. قم بتكوين تعيينات حقول التعريف في الإعدادات المتقدمة للموصل لكل نوع مورد.
هل يستطيع الموصل التعامل مع منتجات اشتراك Shopify (اشتراكات Shopify أو إعادة الشحن)؟
يتم استيراد طلبات الاشتراك القياسية في Shopify كطلبات عادية في Odoo. بالنسبة لاشتراكات ReCharge، يتم تنشيط الطلبات المتكررة كخطافات ويب فردية orders/create ويتم استيرادها بشكل طبيعي. لا يدير الموصل دورة حياة الاشتراك في Shopify — فهو يعالج كل طلب بغض النظر عما إذا كان قد تم إنشاؤه عن طريق الاشتراك أو لمرة واحدة.
ماذا يحدث إذا كان خادم Odoo معطلاً عند تنشيط خطاف الويب الخاص بـ Shopify؟
يقوم Shopify بإعادة محاولة استخدام خطافات الويب الفاشلة حتى 19 مرة خلال 48 ساعة. يقوم الموصل بمعالجة خطاف الويب عندما يتعافى Odoo، ويتم استيراد الطلب. للحصول على موثوقية المهام الحرجة، قم بتكوين Odoo باستخدام بنية تحتية متكررة (موازن التحميل + عمال متعددين) ومراقبة التنبيهات لوقت التوقف عن العمل. توفر نافذة إعادة المحاولة لمدة 48 ساعة مخزنًا مؤقتًا للصيانة المخططة.
هل يدعم الموصل Shopify Markets (البيع الدولي متعدد العملات)؟
نعم. تسمح Shopify Markets بالبيع بعملات متعددة من متجر واحد. يقوم الموصل باستيراد الطلبات بعملة الدفع الخاصة بالمشتري وإنشاء أوامر بيع بتلك العملة في Odoo. يستخدم تحويل العملة سعر الصرف في وقت استيراد الطلب. قم بتكوين قوائم أسعار منفصلة لكل سوق Shopify في Odoo للحصول على أسعار محلية دقيقة.
كيف أتعامل مع بطاقات هدايا Shopify في Odoo؟
تظهر بطاقات هدايا Shopify كطريقة دفع عند الطلب. يقوم الموصل بإنشاء خط دفع منفصل لجزء بطاقة الهدايا من كل طلب. قم بتكوين حساب مسؤولية "Shopify Gift Cards" في Odoo. عند بيع بطاقة الهدايا (عبر منتج بطاقة الهدايا)، يتم تأجيل الإيرادات. عند الاسترداد بناءً على أمر، تتم تصفية الالتزامات والاعتراف بالإيرادات.
الخطوات التالية
يصبح تكامل Odoo-Shopify الذي تم تنفيذه بشكل جيد غير مرئي - فهو يعمل فقط، مما يحافظ على مزامنة كلا النظامين دون تدخل يدوي. قام فريق ECOSIRE ببناء تكاملات Shopify-Odoo لكل شيء بدءًا من العلامات التجارية D2C التي تعالج 50 طلبًا في اليوم إلى تجار التجزئة المؤسسيين الذين يتعاملون مع 10000 طلب في اليوم.
اتصل بـ ECOSIRE حول تكامل Shopify-Odoo →
استكشف خدمات Shopify الخاصة بـ ECOSIRE →
شارك تفاصيل متجرك ونقاط الضعف الحالية وسيعمل فريقنا على توسيع نطاق التكامل بين Shopify-Odoo الذي يزيل الفجوات بين نظام تخطيط موارد المؤسسات (ERP) وواجهة متجرك.
بقلم
ECOSIRE Research and Development Team
بناء منتجات رقمية بمستوى المؤسسات في ECOSIRE. مشاركة رؤى حول تكاملات Odoo وأتمتة التجارة الإلكترونية وحلول الأعمال المدعومة بالذكاء الاصطناعي.
مقالات ذات صلة
Australian GST Guide for eCommerce Businesses
Complete Australian GST guide for eCommerce businesses covering ATO registration, the $75,000 threshold, low value imports, BAS lodgement, and GST for digital services.
eCommerce Bookkeeping: Revenue Recognition and Sales Tax
Master eCommerce bookkeeping with correct revenue recognition timing, sales tax collection across marketplaces, and reconciliation for Shopify, Amazon, and more.
Odoo Accounting vs QuickBooks: Detailed Comparison 2026
In-depth 2026 comparison of Odoo Accounting vs QuickBooks covering features, pricing, integrations, scalability, and which platform fits your business needs.