استكشاف أخطاء الضرائب الأساسية وإصلاحها
يحتوي هذا المستند على اقتراحات لاستكشاف الأخطاء وإصلاح المشكلات المتعلقة بالضرائب في WooCommerce.
ما الذي يغطيه هذا الدليل
تتضمن إضافة WooCommerce دعمًا لـ معدلات الضرائب الأساسية. ويُشار إلى خيارات الضرائب المدمجة هذه باسم الضرائب الأساسية. باستخدام الضرائب الأساسية، يمكنك إعداد خيارات الضرائب الأساسية من خلال WooCommerce > الإعدادات في علامة تبويب "الضريبة"، كما يمكنك استخدام هذا القسم لإعداد جداول معدلات الضرائب يدويًا لمواقع وأنواع مختلفة من المنتجات.
الحساب التلقائي للضرائب
لتفعيل الحساب التلقائي للضرائب، ستحتاج إلى تثبيت إضافة إضافية. إضافة WooCommerce Tax مجانية وتوفر حسابًا تلقائيًا للضرائب للحالات البسيطة في العديد من الدول. كما تتوفر إضافات ضرائب أكثر تقدمًا للسيناريوهات والمنتجات الأكثر تعقيدًا أو المتخصصة.
نطاق هذا المستند
يركز هذا المستند بشكل أساسي على المشكلات المتعلقة بوظائف معدلات الضرائب الأساسية في WooCommerce، مع تقديم اقتراحات حول أماكن الحصول على المساعدة فيما يتعلق بالإضافات الأخرى والإعدادات الأكثر تعقيدًا.
المشكلات الشائعة في جداول الضرائب الأساسية
يغطي هذا القسم بعض المشكلات الشائعة التي قد تواجهها عند استخدام جداول الضرائب الأساسية في WooCommerce.
إعدادات حساب الضرائب غير الصحيحة
تحدث أخطاء حساب الضرائب غالبًا بسبب تكوين إعدادات الضرائب الأساسية بشكل غير صحيح.
تفعيل حساب الضرائب
تأكد من تحديد خيار "تفعيل معدلات الضرائب والحسابات" ضمن WooCommerce > الإعدادات > عام.
الموقع الافتراضي للعميل
إذا تم إعداده بشكل غير صحيح، فقد يرى الزوار لأول مرة حسابات ضرائب غير صحيحة قبل إدخال عنوانهم. تذكر أن استخدام "تحديد الموقع الجغرافي" كإعداد يتطلب منك تفعيل MaxMind.
حساب الضريبة بناءً على
يحدد هذا الإعداد ما إذا كان سيتم حساب الضرائب بناءً على عنوان شحن العميل أو عنوان الفوترة أو عنوان متجرك. إذا كان هذا الإعداد غير صحيح، فقد تعرض WooCommerce معدلات ضرائب بناءً على الموقع الجغرافي الخطأ.
لضمان صحة إعدادات الضرائب الأساسية:
- انتقل إلى WooCommerce > الإعدادات > الضريبة
- تحقق من أن "حساب الضريبة بناءً على" مضبوط على الخيار المناسب:
- عنوان شحن العميل – إذا كنت تريد احتساب الضريبة بناءً على المكان الذي يتم شحن المنتجات إليه
- عنوان فوترة العميل – للمنتجات الرقمية أو عندما لا يتم جمع عنوان الشحن
- العنوان الأساسي للمتجر – فقط إذا كنت تفرض معدل الضريبة نفسه على الجميع
يتم تطبيق معدل ضريبة خاطئ على بعض العناوين أو الدول
تتبع حسابات الضرائب في WooCommerce منطقًا محددًا يحدد المعدلات التي تنطبق على المعاملات. عند ظهور معدلات غير صحيحة، فإن فهم آلية الحساب الأساسية يمكن أن يساعد في تحديد مصدر المشكلة.
تعالج WooCommerce حسابات الضرائب بطريقة هرمية، مع مراعاة عدة عوامل بالتتابع.
للتحقق من معدلات الضرائب:
الخطوة 1: تحديد جدول الضرائب
حدد جدول الضرائب الذي سيتم استخدامه لكل منتج في سلة التسوق بناءً على فئة الضريبة المحددة له.
الخطوة 2: التحقق من مطابقة الموقع
تحقق من الجدول الخاص بكل منتج ومن وجود أي مواقع تطابق الموقع الخاضع للضريبة (عنوان المتجر أو عنوان فوترة العميل أو عنوان شحن العميل، بناءً على الإعدادات). تحقق مرة أخرى من عدم وجود أخطاء إملائية في:
رموز الدول والولايات:
- يجب أن تكون رموز الدول ورموز الولايات/المقاطعات رموزًا قياسية مكونة من حرفين
الرموز البريدية:
- يمكن أن تتضمن الرموز البريدية/ZIP أحرفًا بديلة (
90*) أو نطاقًا (90210-90215) - إذا كنت تشك في وجود مشكلة، حاول إدخال الرموز الفردية كقائمة مفصولة بفواصل منقوطة أو في صفوف منفصلة
أسماء المدن:
- تطابق WooCommerce المدن فقط بناءً على النص المطابق تمامًا لما تم إدخاله في صفحة إتمام الطلب
- تشمل حالات عدم التطابق الشائعة الاختصارات أو طرق الكتابة البديلة (على سبيل المثال: "ST CHARLES" مقابل "SAINT CHARLES"؛ و"New York" مقابل "NYC")
- ضع في اعتبارك إضافة صفوف متعددة إلى جدول الضرائب لأشكال أسماء المدن الشائعة المختلفة لضمان تطبيق معدل الضريبة الصحيح
الخطوة 3: معالجة تعارضات الأولوية
إذا كان الموقع الخاضع للضريبة يطابق أكثر من صف في جدول الضرائب، فسيتم اختيار معدل واحد لكل أولوية.
على سبيل المثال:
- إذا كانت هناك عدة صفوف في جدول الضرائب ذات الأولوية 1، فسيتم تطبيق الصف الأول فقط من الأعلى الذي يطابق الموقع الحالي الخاضع للضريبة
- إذا كانت هناك صفوف أخرى ذات الأولوية 2، فسيتم اختيار الصف الثاني فقط من الأعلى الذي يطابق الموقع الحالي لتطبيقه بشكل إضافي، وهكذا عبر جميع مستويات الأولوية
الخطوة 4: دمج الإعدادات مع إعدادات عرض الأسعار
ادمج هذه الحسابات مع إعدادات عرض الأسعار التي قمت بتكوينها.
مهم: عند استكشاف الأخطاء وإصلاحها، من الضروري إدراك أن WooCommerce تتوقف عند أول موقع ضريبي مطابق في جدول الضرائب المناسب لكل مستوى من مستويات الأولوية، مما يعني أن ترتيب قواعد الضرائب يمكن أن يؤثر بشكل كبير على معدلات الضرائب التي يتم تطبيقها.
يمكنك العثور على أمثلة إضافية متقدمة لجداول الضرائب الأساسية هنا.
لا يتم احتساب الضريبة على أسعار الشحن
إذا لم يتم تطبيق الضريبة على الشحن عند إتمام الطلب، فعادةً ما يكون السبب هو تكوين إعدادات بشكل غير صحيح. يتطلب نظام الضرائب الأساسي في WooCommerce توافق عدة إعدادات حتى تعمل ضريبة الشحن بشكل صحيح. إذا كنت لا تستخدم إضافة مثل Avalara أو TaxJar، فاتبع هذه الخطوات لاستكشاف المشكلة وإصلاحها.
الخطوة 1: التحقق من حالة الضريبة لطريقة الشحن
تأكد من أن كل طريقة شحن بسعر ثابت الأساسية ضمن WooCommerce > الإعدادات > الشحن > [منطقة الشحن الخاصة بك] تحتوي على حالة الضريبة مضبوطة صراحةً على خاضع للضريبة. إذا تم ضبطها على "لا شيء"، فلن تقوم WooCommerce بحساب الضريبة على الشحن بغض النظر عن الإعدادات الأخرى.
الخطوة 2: تكوين فئة ضريبة الشحن
تأكد من ضبط "فئة ضريبة الشحن" على القيمة المناسبة ضمن WooCommerce > الإعدادات > الضريبة في قسم خيارات الضرائب. يجب أن تكون هذه القيمة:
نفس فئة عناصر السلة – ستتبع ضريبة الشحن أعلى فئة ضريبية من حيث الأولوية والمطبقة على محتويات السلة. أي:
- إذا كانت جميع العناصر في السلة تنتمي إلى فئة الضرائب نفسها، فسيتم أخذ معدل ضريبة الشحن من جدول الضرائب الخاص بهذه الفئة
- إذا كانت السلة تحتوي على أكثر من فئة ضريبية واحدة، وكان أي من المنتجات ينتمي إلى فئة الضرائب القياسية، فسيتم استخدام المعدلات القياسية للشحن
- إذا كانت السلة تحتوي على أكثر من فئة ضريبية واحدة، ولم يكن أي منها ضمن فئة الضرائب القياسية، فسيتم استخدام أعلى فئة ضريبية في قائمة معدلات الضرائب الإضافية التي تطابق منتجًا واحدًا على الأقل في السلة لحساب معدلات الشحن – مثال هنا
فئة ضريبية محددة (على سبيل المثال: قياسي، معدل مخفض) – سيتم فرض الضريبة على الشحن باستخدام هذه الفئة بغض النظر عن محتويات السلة.
الخطوة 3: التحقق من تكوين جدول الضرائب
تحقق من أن جميع جداول الضرائب التي قد يتم استخدامها لمعدلات الشحن تتضمن صفًا مع تحديد مربع "الشحن". يمكن العثور على جداول الضرائب في علامة تبويب WooCommerce > الإعدادات > الضريبة؛ تحقق من جداول المعدلات المختلفة (مثل "المعدلات القياسية") باعتبارها روابط صغيرة في أعلى علامة التبويب.
تأكد مما يلي:
- معدل الضريبة يطابق موقع العميل
- تم تحديد عمود "الشحن"
- لم يتم تجاوز المعدل بواسطة معدل مطابق آخر لم يتم تحديد مربع الشحن فيه
مهم: إذا لم يسمح أي معدل قابل للتطبيق بفرض الضريبة على الشحن، فلن يتم فرض الضريبة على الشحن، حتى إذا تم تكوين طريقة الشحن والفئة بشكل صحيح.
الخطوة 4: مراجعة إعدادات الضرائب على مستوى المنتج
راجع إعدادات الضرائب على مستوى المنتج ضمن المنتجات > تعديل المنتج > بيانات المنتج > عام.
لن تطبق WooCommerce ضريبة على الشحن إذا كانت السلة تحتوي فقط على عناصر غير خاضعة للضريبة، وكنت تستخدم فئة ضريبة الشحن "نفس فئة عناصر السلة".
تأكد من التالي لمنتج واحد على الأقل في الطلب:
- تم ضبط حالة الضريبة على خاضع للضريبة
- تم تعيين فئة الضريبة بشكل صحيح (على سبيل المثال: قياسي)
لقد فعّلت تحديد الموقع الجغرافي، لكن العملاء لا يرون الضرائب حتى يدخلوا عنوانهم، أو يرون أسعارًا غير صحيحة. ماذا أفعل؟
إذا قمت بتفعيل تحديد الموقع الجغرافي ضمن WooCommerce > الإعدادات > عام > الموقع الافتراضي للعميل، تحاول WooCommerce تحديد موقع الزائر تلقائيًا لعرض معدلات الضرائب وخيارات الشحن الخاصة بالموقع.
ومع ذلك، إذا لم يرَ العملاء الضرائب حتى يقوموا بإدخال عنوانهم، أو ظهرت الأسعار بشكل غير صحيح، فغالبًا ما يرجع ذلك إلى أحد الأسباب التالية:
لم يتم إعداد MaxMind Geolocation بشكل صحيح
يعتمد تحديد الموقع الجغرافي في WooCommerce على قاعدة بيانات MaxMind GeoIP لتحديد مواقع العملاء. ولكي تعمل بشكل صحيح، يجب تنزيل قاعدة البيانات وربطها باستخدام مفتاح ترخيص MaxMind.
بعد ذلك ستقوم WooCommerce تلقائيًا بتنزيل ملف قاعدة البيانات المطلوب وتحديثه. بمجرد تكوين هذا الإعداد، سيقوم متجرك بتحديد مواقع العملاء باستخدام MaxMind.
تعقيدات الأسعار شاملة الضريبة
إذا تم تكوين متجرك لعرض الأسعار شاملة الضريبة، وكنت تبيع إلى عدة دول، فقد يؤدي ذلك إلى ظهور الأسعار بشكل مختلف بناءً على:
- الدولة التي تم تحديد موقع العميل فيها جغرافيًا
- ما إذا كان تحديد الموقع الجغرافي قد حدد موقعه بدقة أم لا
- ما إذا كان قد أدخل عنوانه الكامل بالفعل عند إتمام الطلب
حتى يؤكد العميل موقعه (على سبيل المثال: بإدخال عنوان الشحن أو الفوترة)، قد تعتمد الأسعار الشاملة للضريبة على معدلات الضرائب الخاصة بالموقع الأساسي لمتجرك، أو قد لا تعرض الضريبة على الإطلاق إذا كان تحديد الموقع الجغرافي لا يعمل بشكل صحيح.
أفضل الممارسات لتحديد الموقع الجغرافي
- تأكد دائمًا من إعداد MaxMind Geolocation وتفعيله
- ضع في اعتبارك تفعيل تحديد الموقع الجغرافي (مع دعم التخزين المؤقت للصفحات) إذا كنت تستخدم التخزين المؤقت الكامل للصفحات أو التخزين المؤقت على مستوى CDN
- كن حذرًا عند استخدام الأسعار الشاملة للضريبة في البيع دوليًا، حيث يمكن أن يختلف مبلغ الضريبة المعروض بناءً على الموقع المكتشف أو المؤكد
المشكلات الشائعة مع الضرائب التلقائية في WooCommerce Tax
إذا كنت تستخدم إضافة WooCommerce Tax لحساب الضرائب تلقائيًا، فقد تشمل المشكلات الشائعة ما يلي:
- عدم احتساب الضرائب لبعض الولايات في الولايات المتحدة (عادةً ما تكون المشكلة متعلقة بالمكان الذي يوجد فيه الارتباط الضريبي الخاص بك)
- تعطيل إعداد عرض الأسعار شاملة الضريبة
- عدم احتساب الضرائب للأقاليم الأمريكية
يمكنك العثور على معلومات حول كيفية تصحيح هذه المشكلات في دليل استكشاف أخطاء WooCommerce Tax وإصلاحها.
تقنيات متقدمة لاستكشاف أخطاء الضرائب وإصلاحها
استكشاف مشكلات الضرائب وإصلاحها باستخدام موقع تجريبي
الموقع التجريبي هو نسخة من متجر WooCommerce المباشر تُستخدم للاختبار وتصحيح الأخطاء بأمان. ويتيح لك إعادة إنتاج المشكلات – مثل الحسابات الضريبية غير الصحيحة أو التعارضات المحتملة – دون التأثير على عملائك أو المخاطرة بالبيانات الحية.
فوائد الاختبار على موقع تجريبي:
- إذا تمكنت من عزل المشكلة في بيئة تجريبية، فيمكن لمهندسي الدعم لدينا إعادة إنتاج المشكلة والإبلاغ عنها بسرعة أكبر لمعالجتها
- إذا لم تحدث المشكلة على الموقع التجريبي، فقد يشير ذلك إلى وجود تعارض في موقعك المباشر بدلًا من وجود مشكلة في إعدادات WooCommerce
كيفية إنشاء موقع تجريبي: يوفر معظم موفري الاستضافة بيئات تجريبية بنقرة واحدة، أو يمكنك إنشاء واحدة باستخدام إضافات مثل WP Staging. للحصول على تعليمات تفصيلية، راجع المقالات التالية:
استخدام Blueprints للاختبار
بدءًا من WooCommerce 9.9: تُعد Blueprints أداة لاستيراد إعدادات المتجر وتصديرها، ويمكنها أيضًا المساعدة في إعداد موقع اختباري بسرعة. يمكنك العثور على Blueprints ضمن WooCommerce > الإعدادات > متقدم > Blueprint.
باستخدام Blueprints، يمكنك تصدير إعدادات متجرك – بما في ذلك إعدادات الضرائب – لاستكشاف الأخطاء وإصلاحها، ثم استيرادها إلى موقع WordPress/WooCommerce تم إنشاؤه حديثًا للاختبار؛ وبعد ذلك إجراء اختبار تعارض مماثل للتحقق من صحة إعدادات الضرائب الأساسية.
مشكلات التخزين المؤقت التي تؤدي إلى عرض الضرائب بشكل غير صحيح
يمكن أن يؤدي التخزين المؤقت إلى عرض محتوى قديم، مما يؤثر على حسابات الضرائب. لمعالجة ذلك:
- مسح جميع ذاكرات التخزين المؤقت – بما في ذلك ذاكرة التخزين المؤقت للمتصفح والإضافة والخادم
- استبعاد الصفحات الديناميكية – استبعد سلة التسوق وإتمام الطلب وحسابي من التخزين المؤقت
- تأكد من عدم تخزين جلسات WooCommerce وملفات تعريف الارتباط مؤقتًا
يمكنك معرفة المزيد حول تكوين إضافات التخزين المؤقت لـ WooCommerce من خلال وثائق المطور الخاصة بكيفية تكوين إضافات التخزين المؤقت لـ WooCommerce.
حدود الضرائب الأساسية وWooCommerce Tax
السيناريوهات الضريبية المتقدمة
يمكن أن يصبح فرض الضرائب معقدًا بسرعة عندما:
- تحتاج إلى فرض الضرائب في أكثر من منطقة جغرافية أو دولة واحدة
- تحتاج إلى فرض ضرائب تعتمد بشكل كبير على العنوان، مثل ضرائب المقاطعة والمدينة
- تحتاج إلى فرض الضرائب بمعدلات مختلفة على فئات خاصة من المنتجات
- تحتاج إلى منح إعفاءات ضريبية لعملاء محددين، مثل المؤسسات غير الربحية
- تحتاج إلى تقارير متقدمة يمكنها تجميع البيانات من منصات وتكاملات مختلفة
قد تكون إدارة جداول الضرائب يدويًا في هذه الحالات مهمة تستغرق وقتًا وجهدًا كبيرين. إذا كان لدى متجرك متطلبات ضريبية معقدة، فقد تحتاج إلى إضافة ضرائب أكثر تقدمًا.
إخلاء مسؤولية مهم: نحن لسنا متخصصين في الضرائب؛ وتنطبق نصائحنا فقط على كيفية استخدام برامجنا. للحصول على المشورة بشأن ماذا أو متى يجب فرض الضرائب/ضريبة القيمة المضافة/VAT/GST وما إلى ذلك، نوصي باستشارة متخصص في الضرائب أو محاسب. كل نشاط تجاري يختلف عن الآخر، ولا يمكننا تغطية جميع الاحتمالات هنا.
خيارات متقدمة لحساب الضرائب
تتطلب جميع هذه الخيارات الثلاثة حسابًا خارجيًا يفرض رسومًا مقابل خدماته. تعتمد الرسوم على عدد استدعاءات API شهريًا وعدد الإقرارات السنوية المطلوبة. قد تختلف إمكانية الوصول والدعم في هذه الخدمات الخارجية؛ تحقق من وثائقها أو تواصل مع فرق الدعم الخاصة بها للتأكد.
مقارنة إضافات حساب الضرائب التلقائي المتقدمة
الإعفاءات الضريبية التلقائية
قد تحتاج أيضًا إلى توفير إعفاءات ضريبية لبعض المتسوقين بناءً على دورهم أو دولتهم أو كمية مشترياتهم.
إعفاءات ضريبة القيمة المضافة في الاتحاد الأوروبي
من الحالات الشائعة إعفاء الشركات في الاتحاد الأوروبي من ضريبة القيمة المضافة (Value-added tax) عندما تقدم رقم VAT صالحًا وتكون موجودة خارج الدولة التي يقع فيها المقر الرئيسي لمتجرك.
الإضافات المتاحة:
- EU VAT Number – لاحظ أن هذه الإضافة لا تدعم التحقق من رقم VAT للاتحاد الأوروبي للشركات الموجودة في المملكة المتحدة
- EU/UK VAT Validation Manager – لاحظ أن هذه إضافة تابعة لجهة خارجية وليست مطورة أو مدعومة من WooCommerce؛ يرجى استخدام المنتدى العام الخاص بالإضافة لطرح الأسئلة والحصول على الدعم
سيناريوهات الإعفاء الضريبي الشائعة الأخرى
- Tax Exempt for WooCommerce – تحديد أدوار مستخدمين معينة أو عملاء محددين كمعفيين من الضرائب
- Role Based Tax – عرض الضرائب شاملة أو غير شاملة بناءً على دور المستخدم
- Disability VAT Exemption – إعداد إعفاءات ضريبة القيمة المضافة للجمعيات الخيرية أو العملاء ذوي الإعاقة
- Ultimate Tax Exemption – إعفاء العملاء من الضرائب بناءً على الدولة، والسماح للعملاء الآخرين بالتقدم للحصول على حالة الإعفاء الضريبي عبر نموذج
يمكن العثور على المزيد من إضافات الضرائب المتعلقة بالسيناريوهات المعقدة للإعفاء في سوقنا.
مزامنة الضرائب مع نظام خارجي محدد
إذا كنت تحاول مزامنة ضرائب WooCommerce مع نظام خارجي (مثل أداة محاسبة أو إعداد تقارير)، فإن الإعداد والتوافق يعتمدان على عملية التكامل المحددة.
تكامل Xero
لمزيد من المعلومات حول مزامنة معلومات الضرائب مع Xero:
- تأكد من تكوين الإعدادات بشكل صحيح هنا
- فعّل تصحيح الأخطاء وتحقق من السجلات
- تحقق من حلول المشكلات الشائعة هنا
- تحقق من رسائل أخطاء سجلات Xero الشائعة هنا
تكاملات QuickBooks
QuickBooks Integration for WooCommerce بواسطة WPSwings:
- تواصل مع دعم WPSwings
QuickBooks Sync for WooCommerce بواسطة MyWorks Software:
- تواصل مع دعم MyWorks
إذا كنت تحاول مزامنة ضرائب WooCommerce مع نظام خارجي (مثل أداة محاسبة أو إعداد تقارير)، فإن الإعداد والتوافق يعتمدان على عملية التكامل المحددة.
لمزيد من المعلومات حول مزامنة معلومات الضرائب مع:
حلول قائمة على الأكواد للمشكلات التقنية
إخلاء مسؤولية مهم: هذا القسم مخصص لحالات الاستخدام المتقدمة وقد لا يكون مناسبًا لجميع المتاجر. قد يؤثر الكود المخصص على إمكانية الوصول أو الامتثال للمعايير. اختبره باستخدام تقنيات المساعدة قبل استخدامه على موقع مباشر.
العمل باستخدام الأكواد المخصصة
إرشادات الأمان:
- لا تضف كودًا مخصصًا مباشرةً إلى ملف
functions.phpالخاص بالقالب الأساسي، لأنه سيتم استبداله عند تحديث القالب - بدلًا من ذلك، أضف الكود إلى ملف
functions.phpالخاص بالقالب الفرعي، أو استخدم إضافة تدعم الأكواد المخصصة—مثل إضافة Code Snippets - اختبر دائمًا أي كود مخصص على موقع تجريبي قبل تطبيقه على متجرك المباشر
ملاحظة: يهدف هذا المستند إلى أن يكون دليلًا مفيدًا لاستكشاف الأخطاء المتقدمة وإصلاحها؛ ومع ذلك، فإن الإجراءات الموضحة تتجاوز نطاق سياسة الدعم الخاصة بنا، ولا يمكننا تقديم مساعدة مباشرة في تنفيذها.
إذا كنت ترغب في الحصول على مساعدة من مطور WordPress/WooCommerce مؤهل، فنحن نوصي بشدة بـ Codeable أو شريك وكالة WooCommerce.
فرض السعر نفسه بغض النظر عن الموقع والضرائب
إذا كان المتجر يُدخل أسعار المنتجات شاملة الضرائب، ولكنه يفرض معدلات ضرائب مختلفة حسب الموقع، فستظهر الأسعار وكأنها تتغير بناءً على معدل الضريبة المطبق. في الواقع، يظل السعر الأساسي كما هو، لكن الضرائب تؤثر على الإجمالي. اتبع هذا الرابط للحصول على شرح مفصل.
يفضل بعض التجار تغيير أسعار المنتجات الأساسية بشكل ديناميكي لمراعاة التغييرات في الضرائب والحفاظ على ثبات السعر الإجمالي بغض النظر عن معدل الضريبة. سيؤدي هذا الكود إلى تفعيل هذه الوظيفة:
add_filter( 'woocommerce_adjust_non_base_location_prices', '__return_false' );
فرض الضريبة بناءً على مبلغ المجموع الفرعي
يكون الكود التالي مفيدًا في الحالات التي يضيف فيها المتجر الضرائب فقط عندما يصل المجموع الفرعي إلى حد أدنى محدد. في الكود أدناه، الحد الأدنى هو 110 من عملة المتجر. عدّل الكود وفقًا لمتطلباتك:
add_filter( 'woocommerce_product_get_tax_class', 'big_apple_get_tax_class', 1, 2 );
function big_apple_get_tax_class( $tax_class, $product ) {
if ( WC()->cart->subtotal <= 110 ) {
$tax_class = 'Zero Rate';
}
```
return $tax_class;
```
}
تطبيق معدلات ضرائب مختلفة بناءً على دور العميل
قد يحتاج بعض التجار إلى تطبيق معدلات ضرائب مختلفة بناءً على دور العميل لتلبية حالة البيع بالجملة أو الإعفاء الضريبي.
في هذا الكود، سيتم تعيين فئة الضريبة ذات المعدل الصفري للمستخدمين الذين لديهم صلاحيات "administrator". عدّلها وفقًا لمتطلباتك:
/**
* Apply a different tax rate based on the user role.
*/
function wc_diff_rate_for_user( $tax_class, $product ) {
if ( is_user_logged_in() && current_user_can( 'administrator' ) ) {
$tax_class = 'Zero Rate';
}
```
return $tax_class;
```
}
add_filter( 'woocommerce_product_get_tax_class', 'wc_diff_rate_for_user', 1, 2 );
add_filter( 'woocommerce_product_variation_get_tax_class', 'wc_diff_rate_for_user', 1, 2 );
عرض الضرائب بقيمة صفر
يتم إخفاء الضرائب التي تبلغ قيمتها 0 افتراضيًا. ستؤدي إضافة الكود التالي إلى إظهارها في جميع الحالات:
add_filter( 'woocommerce_order_hide_zero_taxes', '__return_false' );
اللواحق على المنتج المتغير الرئيسي
يتيح أحد إعدادات الضرائب في WooCommerce استخدام اللواحق لإضافة معلومات إضافية إلى أسعار المنتجات. وهي متاحة للاستخدام مع متغيرات المنتج المتغير، ولكنها معطلة على مستوى المتغير الرئيسي لأنها قد تؤثر على أداء الموقع عندما يكون هناك عدد كبير من المتغيرات.
يمكن تخصيص الطريقة المسؤولة عن عرض السعر المرتبط باستخدام مرشحات الفلاتر عند الحاجة للمنتجات المتغيرة. ويتطلب ذلك تخصيصًا يمكن تنفيذه من خلال هذا الفلتر:
add_filter( 'woocommerce_show_variation_price', '__return_true' );
عرض ضرائب الشحن والمنتجات بشكل منفصل
استخدم هذا الكود لعرض صفوف ضرائب مخصصة دون التأثير على الإجماليات في صفحات سلة التسوق وإتمام الطلب:
// Show shipping and product taxes separately
function custom_display_tax_rows() {
// Get the cart instance
$cart = WC()->cart;
```
// Get the shipping tax total
$shipping_tax_total = $cart->get_shipping_tax();
// Get the product tax total
$product_tax_total = $cart->get_cart_contents_tax();
// Calculate the total tax (excluding shipping tax)
$total_tax = $product_tax_total;
// Display custom rows for Shipping Tax, Product Tax, and Total Tax
if ( $shipping_tax_total > 0 ) {
echo '<tr class="shipping-tax-row">';
echo '<th>' . __( 'Shipping Tax', 'your-text-domain' ) . '</th>';
echo '<td>' . wc_price( $shipping_tax_total ) . '</td>';
echo '</tr>';
}
if ( $product_tax_total > 0 ) {
echo '<tr class="product-tax-row">';
echo '<th>' . __( 'Product Tax', 'your-text-domain' ) . '</th>';
echo '<td>' . wc_price( $product_tax_total ) . '</td>';
echo '</tr>';
}
// Display the total tax only if it's greater than zero
if ( $total_tax > 0 ) {
echo '<tr class="order-tax-row">';
// You might want to show something here; this row is currently empty.
echo '</tr>';
}
```
}
// Hook the function to run when the cart is displayed
add_action( 'woocommerce_cart_totals_after_shipping', 'custom_display_tax_rows', 5 );
// Hook the function to run when the checkout is displayed
add_action( 'woocommerce_review_order_before_order_total', 'custom_display_tax_rows', 5 );
مشكلات التقريب
تحسب WooCommerce الضرائب بناءً على إعدادات المتجر وفئات الضرائب وإعدادات التقريب. في بعض الحالات، خاصة عند استخدام الأسعار شاملة الضريبة، قد تحدث فروق بسيطة في التقريب، خصوصًا عند إضافة كميات متعددة إلى سلة التسوق. وتكون هذه الفروق عادةً نتيجة لطريقة حساب الضريبة وتقريبها، وهي شائعة عبر منصات التجارة الإلكترونية.
تكوين التقريب
يمكنك التحكم في كيفية تقريب الضريبة من خلال WooCommerce > الإعدادات > الضريبة ضمن خيار "التقريب":
التقريب لكل سطر (افتراضي): يتم حساب الضريبة وتقريبها لكل عنصر في السلة قبل جمع الإجماليات.
التقريب على مستوى المجموع الفرعي: يتم حساب الضريبة من المجموع الفرعي لجميع العناصر وتقريبها مرة واحدة.
يعتمد اختيار الخيار المناسب على الولاية القضائية الضريبية الخاصة بك وعلى طريقة تحديد أسعار منتجاتك. يمكن أن يقلل التقريب على مستوى المجموع الفرعي من الفروق البسيطة في إجمالي مبالغ الضرائب، ولكنه قد يؤدي إلى اختلافات عند مقارنة تفاصيل الضريبة لكل عنصر.
التقريب بفارق واحد
قد تحدث أخطاء التقريب (على سبيل المثال: اختلاف الإجماليات بمقدار 0.01) عندما تتضمن الأسعار الضريبة ويشتري العملاء كميات متعددة. يحدث ذلك عندما يتم حساب الضريبة لكل وحدة ويتم تطبيق التقريب على كل عنصر بشكل منفصل.
عدم تطابق إعدادات العرض
تعتمد WooCommerce على تكوين متسق بين هذه الإعدادات:
- الأسعار المُدخلة مع الضريبة
- عرض الأسعار في المتجر
- عرض الأسعار أثناء سلة التسوق وإتمام الطلب
إذا كانت هذه الإعدادات غير متوافقة (على سبيل المثال: الأسعار مُدخلة شاملة الضريبة، ولكن يتم عرضها غير شاملة الضريبة)، فستقوم WooCommerce بإعادة حساب الأسعار باستخدام دقة موسعة، مما قد يؤدي إلى فروق في التقريب. يظهر تحذير في لوحة الإدارة عند عدم تطابق الإعدادات. ويمكنك حل ذلك باستخدام مطالبة "استخدام الإعدادات الموصى بها".
تخصيص سلوك التقريب
بالنسبة للمتاجر التي لديها متطلبات صارمة للتقريب، توفر WooCommerce فلاتر تسمح للمطورين بتجاوز سلوك الأسعار والضرائب. وبما أن كل موقع يختلف عن الآخر، فإن هذا الكود سيختلف بناءً على المنتجات والأسعار وقواعد الضرائب الخاصة بمتجرك. وستكون هناك حاجة إلى التجربة للوصول إلى طريقة التقريب المطلوبة بدقة.
على سبيل المثال، يجبر هذا الكود على التقريب لكل وحدة قبل الضرب في الكمية، وقد نجح مع متجر محدد ومنتجاته:
add_filter( 'woocommerce_get_price_excluding_tax', 'custom_rounding_per_unit', 10, 3 );
function custom_rounding_per_unit( $price, $qty, $product ) {
return round( $price / $qty, 2 ) * $qty;
}
الحصول على المساعدة والدعم
التواصل مع دعم WooCommerce
إذا جربت سيناريوهات استكشاف أخطاء الضرائب الشائعة وإصلاحها دون نجاح، فتواصل مع دعم WooCommerce مع تقديم المعلومات التالية:
المعلومات المطلوبة لطلبات الدعم:
- ملخص لهدفك، مع مقارنة النتائج المتوقعة بالسلوك الفعلي الذي تواجهه
- قائمة بالخطوات التي تساعدنا على إعادة إنتاج المشكلة
- رابط موقعك التجريبي ورابط المنتج المتأثر بالمشكلة (وبدلاً من ذلك، يمكنك إرسال Blueprint الخاص بموقعك حتى نتمكن من إعادة إنشاء إعداداتك للاختبار)
- نسخة من تقرير حالة النظام الخاص بك، والذي يمكن الوصول إليه من خلال الانتقال إلى WooCommerce > الحالة > حالة النظام > الحصول على تقرير النظام
- أحدث سجل للأخطاء لديك: بالنسبة للمشكلات المتعلقة بـ WooCommerce Tax، تأكد من تفعيل التسجيل وإرفاق أحدث سجل للأخطاء من WooCommerce > الحالة > WooCommerce Shipping & Tax
إلى أين تتوجه إذا كنت تستخدم إضافة ضرائب تابعة لجهة خارجية
إضافات WooCommerce Marketplace
إذا كنت تستخدم إضافة ضرائب مدرجة في WooCommerce Marketplace – مثل WooCommerce Tax أو TaxJar أو Avalara for WooCommerce أو Stripe Tax – فيمكنك التواصل مع دعم WooCommerce للحصول على المساعدة. يتم دعم هذه الإضافات وصيانتها بشكل نشط بالتعاون مع مطوريها.
إضافات الجهات الخارجية
إذا كنت تستخدم إضافة ضرائب غير متاحة على WooCommerce Marketplace، مثل إضافة تم تنزيلها من مصدر آخر أو تم تطويرها بشكل مخصص، فيجب الحصول على الدعم مباشرةً من مطور الإضافة. وبما أن هذه الإضافات تتم صيانتها بشكل مستقل، فإن مطوريها هم الأكثر تأهيلًا للمساعدة في التثبيت والتكوين واستكشاف الأخطاء وإصلاحها.
الأسئلة والدعم
هل لا تزال لديك أسئلة وتحتاج إلى المساعدة؟
تتعلق هذه الوثائق بإضافة WooCommerce الأساسية المجانية، والتي يتم تقديم الدعم لها من خلال منتديات المجتمع على WordPress.org. من خلال البحث في هذا المنتدى، ستجد غالبًا أن سؤالك قد تم طرحه والإجابة عنه من قبل.
إذا لم تكن قد أنشأت حسابًا على WordPress.org لاستخدام المنتديات، فإليك طريقة إنشائه.
- إذا كنت تبحث عن توسيع الوظائف الأساسية الموضحة هنا، فنوصي بمراجعة الإضافات المتاحة في WooCommerce Marketplace.
- هل تحتاج إلى دعم متقدم مستمر أو تخصيص مصمم لـ WooCommerce؟ استعِن بـ شريك وكالة WooCommerce.
- هل أنت مطور تقوم بإنشاء تكامل أو إضافة خاصة بك لـ WooCommerce؟ راجع موارد المطورين.