سجل تغييرات حزمة القواعد

  • 110 قواعد
  • 97 قاعدة تقابل فحصاً في ملفات قواعد التحقق التي تنشرها الهيئة، وتغطي هذه القواعد 96 من أصل 242 من رموز القواعد في تلك الملفات
  • 151 حالة اختبار مقيسة
  • حزمة القواعد2.2.0

إصدارات حزمة القواعد وما أضافه كل إصدار، مجموعةً مجموعة، من ملفات قواعد التحقق التي تنشرها هيئة الزكاة والضريبة والجمارك. ورقم الإصدار وأرقام التغطية أعلاه تُقرأ من الحزمة المبنية، ولا يُكتب شيء في هذه الصفحة يدوياً.

ما أضافه كل إصدار

نص مؤرَّخ، مدخل لكل يوم تغيّرت فيه الحزمة، مع روابط إلى صفحات قواعد تمثّل كل مجموعة. والقائمة الكاملة للقواعد في فهرس القواعد.

وحين تنشر هيئة الزكاة والضريبة والجمارك إصداراً جديداً من حزمة أدوات التطوير SDK، يعيد مطابق تشغيل مجموعة ملفات الاختبار وعدّ التغطية على الملفات التي يتضمنها ذلك الإصدار، ويسجّل النتيجة في سجل التغييرات خلال أربعة عشر يوماً.

الإصدار 2.2.0

حزمة القواعد 2.2.0 بتاريخ 2026-10-15 هي الحزمة التي يعمل بها هذا الموقع. وما زالت تقرأ الإصدار 3.4.8 من حزمة أدوات التطوير SDK التي تنشرها هيئة الزكاة والضريبة والجمارك، أي ملفَي قواعد التحقق نفسيهما اللذين قرأتهما الحزمتان 2.1.0 و2.0.0، وتضم 110 قواعد: فالقواعد التي أضافتها تقابل فحوصاً يحملها الإصدار 3.4.8 ولم تقابلها حزمة سابقة. وقد تحرّك الرقم الأوسط من الإصدار لأن قواعد أُضيفت، كما توجب سياسة ترقيم الحزمة. ولم تتغير نتيجة أي حالة اختبار كانت موجودة قبل هذا الإصدار: فكل فحص أُضيف مصنَّف تحذيراً في الإصدار 3.4.8، والتحذير وحده لا يقلب النتيجة إلى «لم يجتز»، ما عدا القاعدة MTB-BR-45، وهي خطأ ترفض أداة الهيئة المستند بموجبه، وقد أُضيفت لحالات الاختبار التي بُنيت لقياس ذلك.

المضاف: MTB-BR-S-08 وMTB-BR-Z-08 وMTB-BR-E-08 وMTB-BR-KSA-83 وMTB-BR-KSA-25 وMTB-BR-45. فالقواعد MTB-BR-S-08 وMTB-BR-Z-08 وMTB-BR-E-08 تربط المبلغ الخاضع في التفصيل الضريبي الخاضع للنسبة الأساسية أو الخاضع بنسبة الصفر أو المعفى من الضريبة بمجموع مبالغ بنوده مطروحاً منه الخصومات على مستوى المستند ومضافاً إليه الرسوم، مقارنة صارمة، وهو الفحص الذي كانت القاعدة BR-O-08 تجريه للفئة الخارجة عن نطاق الضريبة وحدها، ومدّه الإصدار 3.4.8 إلى الفئات الأخرى (ولم يحمل الإصدار السابق قاعدة كهذه لها). وقاعدة الفئة الخاضعة للنسبة الأساسية تجمع كل تفاصيلها تحت كتلة المجموع الضريبي نفسها قبل المقارنة، فالفاتورة التي تحمل مجموعة بالنسبة الأساسية وأخرى بالنسبة المخفَّضة تُحكم على مجموعهما؛ وقد قيست أداة الهيئة نفسها على مستند كهذا فقبلته. وتذكر MTB-BR-KSA-83 رمز سبب إعفاء على تفصيل خاضع بنسبة الصفر أو معفى أو خارج عن النطاق لا نص سبب إلى جانبه أو نصه فارغ؛ والجزء من قاعدة الهيئة الذي يفحص النص على القائمة المنشورة معطَّل في الملفات التي تنشرها الهيئة، فلا تُفحص أي قائمة. وتذكر MTB-BR-KSA-25 الفاتورة المبسطة لتعليم أهلي أو صحة أهلية، أي التي كل رموز الأسباب فيها VATEX-SA-EDU أو VATEX-SA-HEA، إذا لم تذكر اسم المشتري؛ وقد قيست أداة الهيئة فلم تطبّقها على فاتورة مبسطة بلا رمز سبب أصلاً، والقاعدة تتبع الأداة. وتذكر MTB-BR-45 بند تفصيل ضريبي لا يحمل عنصر المبلغ الخاضع أصلاً: فمخطط XML يجيز إسقاطه، وملفات قواعد التحقق التي تنشرها الهيئة تصنّفه خطأً، وقد قيست أداة الهيئة فرفضت مستنداً كهذا، فهذه القاعدة هي الخطأ الوحيد في هذا الإصدار.

المتغيّر: شرح القاعدة MTB-BR-KSA-49 يقول الآن صراحةً إن هذين الرمزين موضوعان لتوريد إلى المواطن، وإن ما إذا كانت الفاتورة الموجّهة إلى شركة تأمين أو صاحب عمل أو جهة دافعة أخرى تستحقهما سؤالٌ لمستشارك الضريبي، ويحيل إلى MTB-BR-KSA-25 لاسم المشتري في الفاتورة المبسطة؛ ولم يعد شرح القاعدة MTB-BR-O-08 يقول إن الفئة الخارجة عن النطاق هي الفئة الوحيدة المفحوصة على هذا النحو.

الإصدار 2.1.0

حزمة القواعد 2.1.0 بتاريخ 2026-09-29 كانت الحزمة التي يعمل بها هذا الموقع حتى حلّت محلها الحزمة 2.2.0 في 2026-10-15. وما زالت تقرأ الإصدار 3.4.8 من حزمة أدوات التطوير SDK التي تنشرها هيئة الزكاة والضريبة والجمارك، أي ملفَي قواعد التحقق نفسيهما اللذين قرأتهما الحزمة 2.0.0، وتضم القواعد نفسها التي ضمّتها الحزمة 2.0.0: فما أضافته يقع في قارئ الأرشيف، إلى جانب القاعدة MTB-BATCH-00، خارج العدد الذي تطبعه هذه الصفحة، لأن تلك القواعد تقرأ ملفات الأرشيف المرفوع معاً لا مستنداً واحداً، وهو ما لا يفعله شيء في قواعد الهيئة المنشورة. وقد تحرّك الرقم الأوسط من الإصدار لأن قواعد أُضيفت، كما توجب سياسة ترقيم الحزمة.

المضاف: القاعدتان MTB-BATCH-01 وMTB-BATCH-02، وهما سلسلة الفواتير عبر الملفات المرفوعة معاً في أرشيف ZIP. تقرأ كلتاهما ملفات الأرشيف التي تحمل رقم التسجيل في ضريبة القيمة المضافة نفسه للبائع، مرتّبةً بقيمة عدّاد الفواتير (KSA-16). فتذكر MTB-BATCH-01 الملف الذي ليست بصمة الفاتورة السابقة (KSA-13) فيه هي بصمة التجزئة التي يحملها الملف الذي يسبقه بحسب العدّاد في رمز الاستجابة السريعة الخاص به، وهي البصمة التي كتبها له الجهاز أو النظام المُصدِر؛ ولا يحسب مطابق أي بصمة، بل يقارن القيمتين اللتين يحملهما المستندان أصلاً. وتذكر MTB-BATCH-02 قيمة العدّاد التي يحملها أكثر من ملف للبائع نفسه. وكلتاهما تحذير، والتحذير وحده لا يقلب النتيجة إلى «لم يجتز»: فلا فحص منشور يقرأ مستندين معاً، وما تفعله منصة «فاتورة» عند انقطاع السلسلة ليس مما يستطيع مطابق قياسه. واختلاف البصمة أو تكرار العدّاد بين ملفات صادرة عن أجهزة مختلفة أمر متوقَّع: فالعدّاد والسلسلة يخصّان كل جهاز على حدة، فتتداخل ملفات أجهزة البائع الواحد إذا صُدِّرت معاً، ويقول شرح كل ملاحظة ذلك. وأوضح طريقة للقراءة أرشيف لكل جهاز. ولا تقابل أيٌّ من القاعدتين فحصاً منشوراً، فلا صفحة لهما في فهرس القواعد، شأنهما شأن MTB-PIH-01 ومجموعة رمز الاستجابة السريعة.

المتغيّر: القاعدة MTB-BR-DEC-23، وهي المنازل العشرية للمبلغ الصافي للبند، تبلّغ عن كل بند مخالف، كلٌّ في موضعه، بعد أن كانت تبلّغ عن الأول وتترك للقارئ البحث عن البقية، وهي الخطوة نفسها التي خطتها قواعد مستوى البند في الإصدار 1.1.0. أما جارتاها BR-DEC-24 وBR-DEC-25 فقد توقّف العمل بهما في الإصدار 2.0.0 وليس لهما ما تبلّغان عنه لكل بند. ولم تتغير نتيجة أي حالة اختبار.

الإصدار 2.0.0

حزمة القواعد 2.0.0 بتاريخ 2026-09-27 كانت الحزمة التي يعمل بها هذا الموقع حتى حلّت محلها الحزمة 2.1.0 في 2026-09-29. وهي تقرأ الإصدار 3.4.8 من حزمة أدوات التطوير SDK التي تنشرها هيئة الزكاة والضريبة والجمارك، أي ملفَي قواعد التحقق المؤرَّخين 2025-12-01 (ملف قواعد المملكة) و2025-09-02 (الملف الأوروبي)، بعد أن كانت الحزم السابقة كلها تقرأ الإصدار 3.0.8. وقد تحرّك الرقم الأول من الإصدار لأن المصدر الذي تحاكيه الحزمة تغيّر، لا لأن فحوص مطابق نفسها تغيّرت: فالمستند نفسه قد يجتاز الحزمة 1.1.0 ولا يجتاز الحزمة 2.0.0، أو العكس، من غير أن يتغيّر فيه شيء، لأن أداة الفحص لدى الهيئة غيّرت ما تطلبه. ويذكر التقرير الحزمة التي حكمت عليه، وإلى جانبها إصدار حزمة أدوات التطوير الذي تقرؤه.

تضم الحزمة 110 قواعد، وهي أقل مما كانت تضمه قبل هذا الإصدار: فقد توقّف العمل بـ18 قاعدة، لأن الإصدار 3.4.8 لم يعد يتضمن الفحص الذي كانت تقابله أو لم يعد يبلغه، وهي: MTB-BR-CL-KSA-13 وMTB-BR-DEC-24 وMTB-BR-DEC-25 وMTB-BR-E-10 وMTB-BR-KSA-41 وMTB-BR-KSA-45 وMTB-BR-KSA-46 وMTB-BR-KSA-50 وMTB-BR-KSA-CL-05 وMTB-BR-KSA-CL-70 وMTB-BR-KSA-DEC-05 وMTB-BR-KSA-F-02 وMTB-BR-O-02 وMTB-BR-O-05 وMTB-BR-O-10 وMTB-BR-O-11 وMTB-BR-O-12 وMTB-BR-O-13؛ وتبقى صفحاتها في عناوينها نفسها، موسومةً بتوقف العمل بها، من أجل التقارير التي ما زالت تسمّيها. وأما القواعد المضافة، وكلٌّ منها تقابل فحصاً في الإصدار 3.4.8 لم يكن في الإصدار 3.0.8 أو لم تكن تحاكيه قاعدة من قبل، فهي: MTB-BR-CL-01 وMTB-BR-CO-12 وMTB-BR-KSA-11 وMTB-BR-KSA-18 وMTB-BR-KSA-23 وMTB-BR-KSA-24 وMTB-BR-KSA-49 وMTB-BR-KSA-53 وMTB-BR-KSA-68 وMTB-BR-KSA-70 وMTB-BR-KSA-84 وMTB-BR-KSA-CL-02 وMTB-BR-KSA-EN16931-02.

ودرجات الخطورة تتبع تصنيفات الإصدار 3.4.8 نفسها، وهو يصنّف تحذيراً كثيراً مما كان الإصدار 3.0.8 يصنّفه خطأً، فصار جزء كبير من القواعد التي أبقتها الحزمة يرصد تحذيراً حيث كانت الحزم السابقة ترصد خطأً؛ وتقول ذلك شارة التقرير وشرح كل قاعدة، والتحذير وحده لا يقلب النتيجة إلى «لم يجتز». وتحرّك مع الملفات سقفان: فرمز الاستجابة السريعة صار مسموحاً له بضعف طوله السابق (MTB-BR-CL-KSA-14)، ورموز أسباب الإعفاء تُفحص لكل فئة ضريبية على حدة، مع الرموز التي أضافها الإصدار 3.4.8، ومنها VATEX-SA-DUTYFREE وVATEX-SA-ROYALDECREE، مقبولةً حيث كان الإصدار 3.0.8 يرفضها (MTB-BR-KSA-CL-04). ويثبّت الإصدار 3.4.8 النسبة الأساسية لضريبة القيمة المضافة، وهو ما لم يفعله ملف قبله (MTB-BR-KSA-84).

وتُذكر التغطية كما كانت، من الفهرس المولَّد: 97 قاعدة من قواعد الحزمة تحاكي رمزاً في ملفات قواعد الإصدار 3.4.8. وتحمل تلك الملفات كذلك رموزاً لا تحاكيها قاعدة بعد؛ فهذه الفحوص لا ينفّذها مطابق، ولا يُدَّعى لها شيء في هذا الموقع.

الإصدار 1.1.0

حزمة القواعد 1.1.0 بتاريخ 2026-09-27 كانت الحزمة التي يعمل بها هذا الموقع حتى حلّت محلها الحزمة 2.0.0 في وقت لاحق من اليوم نفسه. ولم تُضف قاعدة جديدة؛ بل كانت الرقم الذي احتاجته الحزمة منذ 2026-09-10: فقد صدر الإصدار 1.0.0 في أول ذلك اليوم، ثم أُضيفت في اليوم نفسه مجموعة التقريب والمنازل العشرية — قواعد فئة المنازل العشرية العامة، وهي 13 قاعدة، والقواعد MTB-BR-KSA-DEC-01 وMTB-BR-KSA-DEC-04 وMTB-BR-KSA-DEC-05 — من غير أن يتحرك رقم الإصدار، فكان التقرير الموسوم بالإصدار 1.0.0 منذ تلك الإضافة وحتى صدور 1.1.0 ناتجاً عن مجموعة القواعد الأكبر. وقد كُتبت الآن سياسة ترقيم الحزمة: كل قاعدة تُضاف أو تُزال أو تتغير درجة خطورتها تحرّك الرقم الأوسط من الإصدار؛ والقاعدة التي يتغير شرطها من غير أن يتغير ما تبلّغ عنه تحرّك الرقم الأخير وتُذكر هنا بالاسم.

ويضم الإصدار 1.1.0 تغييرات كانت السياسة لتوجب كلّاً منها وحده. فالقاعدة MTB-XSD-00 — وهي ما يبلّغه مطابق عن نفسه حين يتعذّر تنفيذ فحص المخطط — صارت خطأً، فيُقرأ التقرير الذي لم يُنفَّذ فيه فحص البنية «لم يجتز» لا «اجتاز»؛ وشرحها لم يتغير، وما زال يقول إن الفحص لم يُنفَّذ، لا إن الفاتورة خاطئة. وقواعد مستوى البند — MTB-BR-KSA-50 وMTB-BR-KSA-51 وMTB-BR-KSA-52 وMTB-BR-KSA-DEC-03 وMTB-BR-KSA-DEC-04 وMTB-BR-KSA-DEC-05 — تبلّغ عن كل بند مخالف، كلٌّ في موضعه، بعد أن كانت تبلّغ عن الأول وتترك للقارئ البحث عن البقية.

2026-09-10، بعد الإطلاق، تحت وسم الإصدار 1.0.0. مجموعة التقريب والمنازل العشرية كلها: للمبالغ والنسب سقوف منشورة لمنازلها العشرية، تُعدّ على الأرقام كما كُتبت في الملف لا على القيمة. وتضم فئة المنازل العشرية العامة (BR-DEC) 13 قاعدة، وفئة المنازل العشرية الخاصة بالمملكة (BR-KSA-DEC) 4 قواعد، كما تُقرأ من الفهرس المولَّد، وتضم فئة المملكة كذلك سقفي النسبة وضريبة البند اللذين أُضيفا من قبل مع مجموعتيهما المجاورتين؛ وصفحات تمثّل المجموعة: مبلغ ضريبة بعملة المستند (MTB-BR-DEC-13)، والمبلغ الصافي للبند (MTB-BR-DEC-23)، وصافي سعر الصنف (MTB-BR-KSA-DEC-05). ولا تفرض أي قاعدة في هذه المجموعة طريقة تقريب: فملفات القواعد تعدّ الأرقام ولا تقول شيئاً عن كيفية تقريب القيمة، وكذلك مطابق.

الإصدار 1.0.0

حزمة القواعد 1.0.0 هي أول حزمة منشورة، بتاريخ 2026-09-10. سمّت القواعد التي جُمعت في الأيام المذكورة أدناه دون مجموعة التقريب والمنازل العشرية التي أُضيفت في اليوم نفسه؛ وفي الإصدار 1.1.0 أعلاه بيان لماذا لم يتحرك الرقم حينها. جُمعت من ملفات قواعد التحقق التي تنشرها هيئة الزكاة والضريبة والجمارك مع حزمة أدوات التطوير SDK الخاصة بها، مجموعةً مجموعة. والقاعدة التي تقابل فحصاً منشوراً تحمل رمز ذلك الفحص في معرِّفها — MTB-BR-KSA-33 للفحص BR-KSA-33 — فيستطيع القارئ أن يبحث في مخرجات الهيئة عن الرمز الذي طبعه مطابق، ويعنون فهرس القواعد كل قاعدة بذلك الرمز؛ أما القلّة التي لا تقابل فحصاً منشوراً بعينه — قواعد البنية والمخطط وبصمة الفاتورة السابقة ورمز الاستجابة السريعة — فتحمل بادئة مطابق الخاصة.

2026-09-08. رمز نوع الفاتورة ورمز نوع معاملة الفاتورة، وكانا في الحزمة حين كُتبت الخطة، انضمت إليهما مجموعة المعرِّفات: رقم التسجيل في ضريبة القيمة المضافة للبائع وللمشتري بالصورة المنشورة (MTB-BR-KSA-40 وMTB-BR-KSA-44) ونظام المعرِّف الذي يُعلن التعريف تحته (MTB-BR-KSA-08). وأُضيف في اليوم نفسه جزء من مجموعة التواريخ والعملة — عرض تاريخ الإصدار وقائمة رموز العملات (MTB-BR-CL-03)، والتاريخ الواقع في المستقبل (MTB-BR-KSA-04)، وعرض وقت الإصدار (MTB-BR-KSA-CL-70) — ومجموعة حساب المستند كلها: مجموع البنود (MTB-BR-CO-10)، وإجمالي الضريبة في مقابل تفصيلها (MTB-BR-CO-14)، والإجمالي شاملاً الضريبة في مقابل الإجمالي قبلها (MTB-BR-CO-15). واكتمل في اليوم نفسه مرجع الإشعار الدائن إلى الفاتورة التي يصحّحها (MTB-BR-KSA-56)؛ أما عنصر رمز النوع نفسه (MTB-BR-04) فكان من القواعد المسجّلة أصلاً حين كُتبت الخطة، ولا تاريخ له وحده. وسُجّلت مجموعة رمز الاستجابة السريعة في اليوم نفسه: تفكّ تلك القواعد حمولة الرمز وتقارنها بالمستند، ولا صفحة لها هنا للسبب المذكور أدناه.

2026-09-09. مجموعة حساب البنود: ضريبة البند في الفاتورة المبسطة في مقابل صافيه ونسبته (MTB-BR-KSA-50)، ومبلغ البند شاملاً الضريبة (MTB-BR-KSA-51)، والسعر السالب (MTB-BR-KSA-F-04). ومجموعة الفئة الضريبية والنسبة، في دفعتين في اليوم نفسه: ضريبة التفصيل الخاضع للنسبة الأساسية في مقابل أساسه ونسبته (MTB-BR-S-09)، ونسبة البند الخاضع بنسبة الصفر (MTB-BR-Z-05)، وسبب التفصيل المعفى (MTB-BR-E-10)، والتفصيل الخارج عن نطاق الضريبة حين يقف وحده (MTB-BR-O-11)، مع رموز أسباب الإعفاء ونصوصها المنشورة (MTB-BR-KSA-CL-04). ومجموعة الخصومات والرسوم (MTB-BR-KSA-F-02 وMTB-BR-KSA-EN16931-06). ووجود عدّاد الفواتير وأرقامه (MTB-BR-KSA-33 وMTB-BR-KSA-34). ووجود بصمة الفاتورة السابقة ونوع محتواها وطولها (MTB-BR-KSA-61 وMTB-BR-KSA-26 وMTB-BR-CL-KSA-13)، إلى جانب فحص لصورة البصمة، MTB-PIH-01، لا صفحة له للسبب المذكور أدناه. ومجموعة الحقول الإلزامية، بوصفها دفعة: عنوان البائع (MTB-BR-KSA-09)، وعنوان المشتري السعودي (MTB-BR-KSA-63)، واسم المشتري (MTB-BR-KSA-42). وأُزيلت في اليوم نفسه القاعدة MTB-VAT-01، وكانت ملاحظة إرشادية بأن النسبة الأساسية ليست الرقم المتوقَّع؛ فهي لا تقابل شيئاً منشوراً، ولا شيء يحلّ محلها.

قبل الإصدار 1.0.0

لم يوجد الإصدار المؤقت 0.0.0 إلا بوصفه قيمة أولية في قاعدة البيانات، ولم ينشر شيئاً.

ما لا تفعله الحزمة عمداً

  • لم تكن أي قاعدة قبل حزمة القواعد 2.0.0 تثبّت النسبة الأساسية لضريبة القيمة المضافة على رقم بعينه: فلم يفعل ذلك أيٌّ من ملفي القواعد في الإصدار 3.0.8 من حزمة أدوات التطوير SDK التي تنشرها الهيئة، والقاعدة MTB-VAT-01، التي كانت تنبّه على النسبة، أُزيلت في 2026-09-09 لهذا السبب. أما الإصدار 3.4.8 فيثبّتها: فالقاعدة BR-KSA-84 لا تقبل في الفئة الخاضعة للنسبة الأساسية إلا النسب التي تذكرها الهيئة لها، ومنذ الإصدار 2.0.0 يذكر مطابق أي نسبة سواها خطأً بالقاعدة MTB-BR-KSA-84.
  • ومجموعة رمز الاستجابة السريعة وفحص صورة بصمة الفاتورة السابقة لا تقابل أي فحص منشور: فلا فحص منشور يفكّ حمولة الرمز، وصورة البصمة تأتي من معيار تطبيق XML لا من ملفات القواعد. فهي قواعد مسجّلة وتُذكر في التقرير، لكن لا فحص منشور تنقله صفحة، فلا صفحة لها في فهرس القواعد.
  • ودرجات الخطورة هي التصنيفات المنشورة. فالقاعدة خطأ حيث يكون الفحص الذي تقابله مصنَّفاً خطأً، وتحذير حيث يقول ملف القواعد نفسه إنه تحذير لا غير، وهي قاعدة عنوان البائع (MTB-BR-KSA-09). وحيث لا تقابل القاعدة فحصاً منشوراً، لا يُستعمل الخطأ إلا حيث يُظهر فحص في موضع آخر أو تشغيل مقيس لحزمة أدوات التطوير SDK أن الهيئة ترفض المستند: فحمولة الرمز التي تخالف المستند تحذير، وصورة البصمة تحذير، وحقول الرمز التي تأتي قيمها من الهيئة نفسها إرشاد. والاستثناء من مطابق نفسه: القاعدة MTB-XSD-00، التي تُبلَّغ حين يتعذّر تنفيذ فحص المخطط نفسه، خطأٌ منذ الإصدار 1.1.0، حتى لا يُبلَّغ عن مستند لم يُفحص بأنه اجتاز.
  • وتقرأ قواعد الحزمة مستنداً واحداً. ومنذ الإصدار 2.1.0 يقارن قارئ الأرشيف كذلك، عبر الملفات المرفوعة معاً، عدّاد كل مستند وبصمة فاتورته السابقة بالمستند الذي قبله، تحذيراً لا غير؛ والقاعدة التي تحتاج إلى مستند خارج ما رُفع، أو تاريخ العدّاد فيما وراءه، أو شهادة، تُؤجَّل ولا تُقرَّب.

افحص فاتورة

افحص فاتورة نموذجية في المتصفح