Odoo + Shopify Sync: Products, Orders, and Inventory

Complete guide to syncing Odoo 19 with Shopify. Covers product sync, real-time order import, bidirectional inventory, financial reconciliation, and multi-store management.

E
ECOSIRE Research and Development Team
|19 مارس 202610 دقائق قراءة2.2k كلمات|

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

  1. انتقل إلى مسؤول Shopify → الإعدادات → التطبيقات وقنوات المبيعات
  2. انقر تطوير التطبيقات → إنشاء تطبيق
  3. قم بتعيين اسم التطبيق (على سبيل المثال، "تكامل Odoo")
  4. تكوين نطاقات واجهة برمجة التطبيقات:
    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
    
  5. قم بتعيين عنوان URL للخطاف على الويب: https://your-odoo.com/shopify/webhook
  6. قم بتثبيت التطبيق → انسخ رمز وصول Admin API

الخطوة 2: التهيئة في Odoo

انتقل إلى المبيعات → Shopify أو المخزون → متاجر Shopify:

المجالالقيمة
اسم المتجراسم متجرك
مجال شوبيفايyourstore.myshopify.com
رمز واجهة برمجة تطبيقات المشرفمن التطبيق المخصص
نسخة API2024-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:

  1. Odoo product.template → منتج Shopify
  2. Odoo product.product (المتغيرات) → Shopify المتغيرات
  3. قيم سمات Odoo → قيم خيار Shopify

مزامنة الكتالوج المجمع:

للإعداد الأولي باستخدام كتالوجات كبيرة (أكثر من 1000 منتج):

  1. انتقل إلى Shopify → الكتالوج → المزامنة المجمعة
  2. حدد فئات المنتجات لمزامنتها
  3. قم بتشغيل مهمة المزامنة المجمعة (عملية الخلفية)
  4. مراقبة التقدم في سجل المزامنة
  5. قم بمراجعة أي أخطاء في التعيين وحلها

إدارة الطلبات

استيراد الطلب في الوقت الفعلي عبر خطافات الويب:

عندما يقدم العميل طلبًا على Shopify، يتم تنشيط خطاف الويب orders/create في غضون ثوانٍ. الموصل:

  1. يتلقى حمولة webhook من Shopify
  2. التحقق من توقيع خطاف الويب (HMAC-SHA256)
  3. إنشاء أمر بيع في Odoo على الفور
  4. إرجاع 200 OK إلى Shopify (يمنع إعادة المحاولة)

الوقت الشامل من إتمام عملية الدفع في Shopify إلى طلب بيع Odoo: عادةً من 3 إلى 15 ثانية.

** تعيين بيانات الطلب: **

مجال شوبيفايحقل اودو
معرف الطلبالمرجع (بالبادئة)
اسم العميلاسم الشريك
البريد الإلكتروني للعميلالبريد الإلكتروني للشريك
عنوان الفواتيرعنوان الفاتورة
عنوان الشحنعنوان التسليم
البنودخطوط أمر البيع
اكواد الخصمخطوط الخصم
طريقة الشحنناقل التسليم
تكلفة الشحنخط رسوم التوصيل
إجمالي الضريبةخطوط الضرائب
الوضع الماليحالة الدفع
حالة الاستيفاءحالة التسليم
ملاحظاتملاحظات العملاء
العلاماتالعلامات الداخلية

حقول الطلب المخصصة:

بالنسبة لتجار Shopify Plus الذين يتمتعون بسمات الدفع المخصصة:

  • خريطة سمات مذكرة الطلب Shopify لحقول Odoo المخصصة
  • مثال: سمة "رقم طلب الشراء" → x_purchase_order_number في أمر البيع
  • مثال: "رسالة هدية" → note في أمر البيع

سير عمل تجهيز الطلب:

بعد الاستيراد، يقوم الموصل بإدارة الطلب من خلال سير العمل القياسي في Odoo:

  1. تأكيد أمر البيع
  2. تم إنشاء أمر التسليم في Odoo WMS
  3. يختار المستودعات والحزم والسفن
  4. تم التحقق من صحة التسليم في Odoo (تم إدخال التتبع)
  5. يرسل الرابط الاستيفاء إلى Shopify مع رقم التتبع
  6. 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 أيام عمل. يستورد الموصل بيانات الدفع:

  1. تنزيل تقرير دفع تعويضات Shopify Payments (أو عبر واجهة برمجة التطبيقات)
  2. الاستيراد عبر **Shopify → الشؤون المالية → دفع تعويضات الاستيراد **
  3. يقوم الرابط بإنشاء إدخالات دفتر اليومية:
  • الإيرادات (صافي مبالغ البيع لكل طلب)
  • Shopify مصاريف الرسوم (معالجة الدفع)
  • تسويات المبالغ المستردة
  • صافي الدفع المستحق
  1. عند وصول التحويل البنكي: قم بالتسوية مع مجلة Shopify Payments

التعامل مع المبالغ المستردة في Shopify:

عند معالجة استرداد الأموال في Shopify:

  1. يتم تشغيل خطاف الويب refunds/create
  2. يقوم الموصل بإنشاء إشعار دائن في Odoo مقابل الفاتورة الأصلية
  3. إذا تم إرجاع المخزون (إعادة تخزينه): يتم إنشاء تحويل إرجاع
  4. نشر إشعار الدائن → تمت تسوية الرصيد مقابل حساب العميل

Shopify Plus التكامل B2B

يتضمن Shopify Plus ميزات B2B (كتالوجات الجملة، وشروط الدفع، وصافي الدفع). يدمج الموصل هذه العناصر مع تسعير Odoo B2B:

** تعيين الشركة والكتالوج: **

شوبيفاي B2Bيعادل أودو
شركةres.company (أو شريحة العملاء)
كتالوجقائمة الأسعار
شروط الدفعشروط الدفع عند أمر البيع
مسودة الأوامرعروض الأسعار (بيع.أمر في مسودة)

تسعير مزامنة B2B:

  1. قم بإنشاء كتالوج Shopify B2B في الموصل
  2. اربط بقائمة أسعار Odoo
  3. تعيين لشركات Shopify B2B
  4. تغيرات الأسعار في قائمة أسعار 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) وواجهة متجرك.

مشاركة:
E

بقلم

ECOSIRE Research and Development Team

بناء منتجات رقمية بمستوى المؤسسات في ECOSIRE. مشاركة رؤى حول تكاملات Odoo وأتمتة التجارة الإلكترونية وحلول الأعمال المدعومة بالذكاء الاصطناعي.

الدردشة على الواتساب