ERP Cloud Systems - ربط Shopify
ربط Shopify
يتيح موصل Shopify في ERPNext سحب الطلبات تلقائيًا من متجرك في Shopify وإنشاء طلبات بيع (Sales Orders) مقابلها داخل النظام.
أثناء إنشاء طلب البيع، إذا لم يكن العميل أو المنتج موجودًا مسبقًا في ERPNext، فسيقوم النظام بإنشائه تلقائيًا من خلال جلب بياناته مباشرة من Shopify.
كيفية إعداد الربط
تم نقل موصل Shopify من ERPNext وأصبح متاحًا كتطبيق مستقل يمكن تثبيته من خلال Frappe Cloud Marketplace.
ملاحظة لمستخدمي الموصل القديم
- إذا لم تكن قد أعددت تكامل Shopify مسبقًا في موقعك، يمكنك الانتقال مباشرة إلى خطوة التثبيت الجديدة.
 - أما إذا كنت تستخدم الربط القديم المدمج في ERPNext، فعليك تعطيله أولًاقبل المتابعة.
 - بعد تثبيت التطبيق الجديد، سيقوم النظام بترحيل البيانات الحالية(مثل product_id الفريد) إلى doctype مستقل.
 - بعد الانتهاء من إعداد الربط الجديد، يمكنك التأكد من حالة الترحيل من خلال الذهاب إلى Ecommerce Integration Log.
 
تثبيت التطبيق
- إذا كنت تستضيف موقعك على Frappe Cloud:يمكنك تثبيت التطبيق مباشرة من لوحة التحكم الخاصة بموقعك، حيث يتوفر التطبيق ضمن Frappe Cloud Marketplace.
 - إذا كان موقعك مستضافًا من قبل Frappe:يمكنك رفع تذكرة دعم (Support Ticket) ليتم تثبيت التطبيق لك.
 - إذا كنت تستضيف النظام ذاتيًا (Self-Hosted):يمكنك تثبيت التطبيق باستخدام أوامر Frappe Bench التالية:
 
bench get-app ecommerce_integrations --branch main
مستودع التطبيق على GitHub:
https://github.com/frappe/ecommerce_integrations/
إنشاء تطبيق مخصص في Shopify
لإعداد الربط بين ERPNext وShopify، يجب أولاً إنشاء تطبيق مخصص (Custom App) داخل متجر Shopify الخاص بك. اتبع الخطوات التالية:
- من لوحة التحكم في Shopify، اضغط على Appsمن شريط القائمة.
 - اضغط على Develop apps for your storeلإنشاء تطبيق مخصص جديد.
 - اضغط على Create new app.
 - سيقوم Shopify بإنشاء API KeyوPassword وShared Secret خاصة بكل تطبيق.
احتفظ بهذه البيانات لاستخدامها لاحقًا في إعداد الربط داخل - قم بمنح التطبيق الأذونات التالية لضمان عمل الربط بشكل صحيح:
 
- Draft Orders– Read and Write
 - Orders– Read and Write
 - Location– Read
 - Customers– Read
 - Assigned Fulfillment Orders– Read and Write
 - Products– Read and Write
 - Product Listings– Read and Write
 - Inventory– Read and Write
 
.webp
)
في النهاية، يجب أن تكون admin scopes الخاصة بالتطبيق مماثلة لما هو موضح أدناه:
- بعد ضبط جميع الأذونات، اضغط على Install appلتثبيت التطبيق في موقع Shopify الخاص بك.
 
.webp
)
إعداد بيانات تطبيق Shopify في ERPNext
بعد إنشاء تطبيقك المخصص في Shopify، انتقل إلى إعدادات Shopify داخل ERPNext لإكمال عملية الربط.
شريط البحث> Shopify اعدادات
- قم بملء الحقول التالية باستخدام البيانات التي حصلت عليها من تطبيقك في Shopify:
 
- Shopify Site URL
 - Access Token
 - API Secret
 
8fcd03.webp)
- قم بإعداد الإعدادات الخاصة بـ:
 
- Customer
 - Company
 - Inventory
 
.webp
)
- يقوم النظام بسحب الطلبات من Shopify وإنشاء Sales Ordersفي ERPNext بشكل تلقائي.
يمكنك كذلك ضبط النظام ليقوم بـ: 
- تسجيل المدفوعات تلقائيًا.
 - معالجة الشحن (Fulfilments) مباشرة من
 
.webp
)
- قم بإعداد Tax Mapperلتحديد طريقة مطابقة الضرائب وتكاليف الشحن بين Shopify و
يمكنك العثور على أسماء الضرائب المستخدمة من خلال لوحة إدارة Shopify الخاصة بك. 
dbbfc7.webp
)
بعد الانتهاء من جميع الإعدادات:
- فعّل خيار Enable Shopify Sync.
 - اضغط على Save.
 - سيقوم النظام بتسجيل الـ API في Shopify،وتبدأ عملية مزامنة الطلبات تلقائيًابين Shopify و
 
مزامنة الطلبات القديمة من Shopify
بعد الانتهاء من إعداد ربط Shopify وتفعيل خاصية Shopify Syncing، يمكنك أيضًا مزامنة الطلبات القديمة من متجر Shopify إلى نظام ERPNext.
تتم هذه العملية في الخلفية وقد تستغرق عدة ساعات حسب عدد الطلبات في متجرك.
- فعِّل خيار Sync Old Shopify Orders.
 - أدخل فترة التاريخ(من – إلى) التي ترغب في مزامنة الطلبات خلالها.
 
511235.webp
)
مزامنة المخزون
يمكنك مزامنة مستويات المخزون بين ERPNext و Shopify للعناصر المرتبطة بين النظامين.
تتم مزامنة المخزون تلقائيًا كل ساعة عبر مهمة مجدولة وسيتم إرسال كميات المخزون التي تغيرت منذ آخر مزامنة إلى Shopify.
- فعِّل خيار Enable Inventory Sync.
 - ستظهر لك جدول ربط المستودعاتلمطابقة مستودعات ERPNext مع مواقع
 - اضبط تكرار المزامنة— يوصى باختيار فترة بين 30 إلى 60 دقيقة.
 - اضغط على Fetch Shopify Locationsلعرض مواقع متجرك في الجدول.
 - اربط كل موقع في Shopify بالمستودع المقابل له في
 - اضغط على Saveلحفظ الإعدادات.
 

ملاحظة : يفترض هذا الربط أن ERPNext هو المصدر الرئيسي لمستويات المخزون.
أي تغييرات تُجرى على كميات المخزون داخل Shopify سيتم استبدالها تلقائيًا بالقيم القادمة من ERPNext عند أي تحديث للمخزون هناك.
ملاحظة: نظام Shopify لا يدعم الكميات العشرية.
في حال وجود كمية عشرية في ERPNext، سيتم تقريبها تلقائيًا للأسفل إلى أقرب عدد صحيح عند مزامنتها إلى Shopify.
مزامنة الأصناف
يمكنك تفعيل مزامنة الأصناف الجديدة من ERPNext إلى Shopify عبر تفعيل خيار:
Upload new ERPNext items to Shopify
كما يمكنك تحديث بيانات الصنف على Shopify تلقائيًا عند تعديل الصنف في ERPNext.
الحقول التي يتم رفعها أو تحديثها:
| الحقل المقابل في Shopify | حقل ERPNext | 
| العنوان (Title) | اسم الصنف (Item Name) | 
| رمز التخزين (SKU) | كود الصنف (Item Code) | 
| الوصف (Description) | وصف الصنف (Description body) | 
| نوع المنتج (Product Type) | مجموعة الأصناف (Item Group) | 
| الوزن (Weight) | الوزن لكل وحدة (Weight per Unit) | 
| وحدة الوزن (Weight UOM) | وحدة قياس الوزن (Weight UOM) | 
جميع الأصناف المرفوعة إلى Shopify يتم تعيينها افتراضيًا كـ Draft (غير منشورة في المتجر).
الغرض من هذه الميزة هو مزامنة الأصناف بين النظامين، وليس إنشاء تطابق شامل بين كل الحقول وبمجرد إنشاء الصنف في Shopify عبر ERPNext، يتم ربطه تلقائيًا لتجنب التكرار. ويمكنك لاحقًا تعديل تفاصيل المنتج يدويًا في Shopify لإضافة بيانات إضافية.
ملاحظة: هذه الميزة غير مدعومة في استيراد البيانات (Data Import) أو للأصناف ذات الأنماط / القوالب (Variants/Templates).
إلغاء الطلبات
يتعامل الربط بين ERPNext و Shopify مع سيناريوهات إلغاء الطلبات بالطريقة التالية:
- إذا تم إلغاء الطلب في Shopifyولم يكن مرتبطًا بأي فاتورة (Invoice) أو إشعار تسليم (Delivery Note)، فسيتم إلغاء أمر البيع (Sales Order) المقابل في ERPNext تلقائيًا.
 - أما إذا كان أمر البيع في ERPNext يحتوي على مستندات مرتبطة به، فسيتم فقط تحديث حالة الطلب في Shopifyداخل هذه المستندات وعندها يكون على المستخدم اتخاذ القرار المناسب من حيث الإلغاء أو تعديل المستندات يدويًا بناءً على هذه المعلومات.
 
