ForHosting KIT · المنزل والطبخ والهوايات

مقسم النفقات المشتركة

إيصالات بقيمة 45.5 و30 و24.5 يتقاسمها ثلاثة أشخاص يُحسب أحدهم مضاعفًا، تصبح 25 و25 و50. سجّل كل نفقة وأعطِ كل شخص وزنًا لترى ما يدين به كل واحد. مجانية في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا

تعمل هذه الأداة داخل متصفحك — مجانًا، ولا تُرسل بياناتك إلى أي خادم

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

كيف يعمل تقسيم النفقات المشتركة الموزون

ابدأوا بقائمة المال المنفق بالفعل لصالح المجموعة. كل بند هو مبلغ سطر بعملة متفق عليها، مثل بقالة أو فاتورة مطعم أو رحلة مشتركة أو فاتورة مرافق. يمكن تمرير أرقام مجردة أو كائنات صغيرة تحمل amount وdescription اختياريًا؛ تدخل المبالغ فقط في الحساب.

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

التقسيم المتساوي بين ثلاثة أشخاص هو أوزان واحد وواحد وواحد. زوجان مع ضيف يجب أن يدفع نصف ما يدفعون قد يستخدمان اثنين واثنين وواحد. من لا يدفع في هذه الجولة يمكنه الإبقاء على وزن صفر بينما يحمل الآخرون أوزانًا موجبة.

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

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

تسوية شهرية لزملاء السكن

فصّلوا الإيجار والمرافق والبقالة، وعيّنوا أوزانًا لليالي الحضور، وانشروا مبلغ owes لكل شخص دون جدول مشترك.

فاتورة مطعم أو بار غير متساوية

اقسموا فاتورة متعددة الأطباق بالوزن ليدفع شاربو الكثير أو الأزواج حصة عادلة بينما ترى المجموعة نسبًا واضحة.

روبوتات نفقات الرحلات والفعاليات

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

كيف تُحسب حصة كل شخص؟

اجمعوا كل مبالغ النفقة المفصّلة للحصول على الإجمالي. يدين كل شخص بـ total × (وزنه ÷ مجموع كل الأوزان). الأوزان المتساوية تعني تقسيمًا متساويًا.

ماذا يحدث إذا كانت كل الأوزان صفرًا؟

مجموع أوزان صفر سيقسم على صفر، لذا ترفض الحاسبة اختراع حصص.

هل يمكن لبعض الأشخاص وزن صفر؟

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

ما الوزن الذي أعطيه لزوجين مقارنة بشخص بمفرده؟

أعطِ الزوجين وزن 2 وكل شخص بمفرده وزن 1. فمع إجمالي 100 وأوزان 1 و1 و2 تكون الحصص 25 و25 و50.

هل يمكنني إدخال مبلغ مسترد بقيمة سالبة؟

لا. تُرفض المبالغ السالبة والأوزان السالبة، لأن الحساب يوزع المال الذي أُنفق فقط. اطرح المبلغ المسترد من الإيصال قبل إدخاله.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/life/expense-split

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/life/expense-split \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"expenses":[45.5,30,24.5],"weights":[1,1,2]}'
{
  "expenses": [
    45.5,
    30,
    24.5
  ],
  "weights": [
    1,
    1,
    2
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "life.expense_split",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

كيف يعمل تقسيم النفقات المشتركة الموزون

تكوّن الحاسبة weight_sum كمجموع كل الأوزان. كل شيء حساب نقطة عائمة حتمي بلا استدعاءات شبكة وبلا بذور عشوائية وبلا طوابع ساعة، لذا تنتج المدخلات المتطابقة دائمًا JSON متطابقًا.

ما ترسلونه وما تستلمونه

أرسلوا حقلين مطلوبين وحقلًا اختياريًا. الفحوصات الكلاسيكية تشمل إجمالي مئة بأوزان واحد وواحد لخمسين لكل، أو تسعين بأوزان واحد وواحد واثنين فيدفع الثالث خمسة وأربعين. اربطوا نموذج المتصفح المجاني لدردشات السكن وطاولات العشاء، ثم استدعوا العقد ذاته من السكربتات عندما يحتاج روبوت أو خادم الأرقام نفسها. الحقل expenses مصفوفة غير فارغة من مبالغ منتهية غير سالبة، أو كائنات بحقل amount منتهٍ غير سالب، أو سلسلة JSON لتلك المصفوفة. الحقل weights مصفوفة غير فارغة من أعداد منتهية غير سالبة، إدخال واحد لكل شخص، أو سلسلة JSON لتلك المصفوفة. الحقل الاختياري names مصفوفة سلاسل عرض بنفس طول weights؛ عند الحذف تُوسَم الأشخاص بـ Person 1 وPerson 2 وهكذا. الحقول المطلوبة المفقودة والسلاسل غير العددية وNaN وInfinity والمصفوفات الفارغة والمبالغ السالبة والأوزان السالبة وطول names الذي لا يطابق weights ومجموع أوزان صفر تفشل كلها بـ invalid_input ولا تُحاسب. عند النجاح تعيد الاستجابة expense_count وقائمة expenses المنظفة مع index وamount وdescription اختياري وexpense_total وperson_count وweights المنظفة وweight_sum وnames المحلولة ومصفوفة people من كائنات فيها name وweight وshare_ratio وowes، إضافة إلى مصفوفة owes موازية للسكربتات. سلسلة method المسماة weighted_expense_split وسلسلة formula التي تعيد أن owes equals total times weight over sum of weights توثقان العقد. تسعير استدعاءات API الناجحة هو القاعدة المنشورة $0.002 لكل item؛ إخفاقات التحقق لا تستهلك الرصيد المدفوع مسبقًا.

أين يظهر مقسمو النفقات المشتركة في العمل الحقيقي

يحتاج زملاء السكن الذين يسوّون الإيجار الشهري والمرافق والبقالة إلى إجابة موثوقة عن كم يدين كل شخص بعد تفصيل كل إيصال، خاصة عندما غاب أحدهم نصف الشهر ويجب أن يحمل وزنًا أقل. مجموعات الأصدقاء التي تقسم فاتورة مطعم طويلة بحصص غير متساوية للنبيذ أو وجبات الأطفال تستخدم الأوزان بدل الحاسبات اليدوية حتى لا يعيد أحد اشتقاق الحساب في الدردشة. الأزواج المستضيفون يمكنهم تعيين وزن مزدوج لمقعد مشترك ووزن مفرد لكل ضيف، ثم نشر مصفوفة people مباشرة في طلب دفع. يستهدف slug SEO من يبحث عن مقسم نفقات مشتركة بتكاليف مفصّلة وأوزان مخصصة، وهي نية مختلفة عن حاسبات متساوية لوقود ورسوم رحلة، أو مقسمي إكرامية، أو أدوات LLM التي تصنّف المعاملات فقط. أنابيب أتمتة النفقات تخزن expense_total وweight_sum ونسب الحصص وowes لكل شخص للتدقيق بعد كل حدث مشترك. ولأن هذه القدرة محرك parse نقي، تسعير API هو القاعدة المنشورة $0.002 لكل item ناجح والتحقق الفاشل لا يستهلك الرصيد. أبقوا الصفحة مركّزة على الاسترداد الموزون لإجمالي مفصّل لترتّب على تلك العبارة ويبقى عقد JSON صغيرًا بما يكفي للـ widgets وروبوتات الرسائل.

كيف أصيغ expenses وweights؟

أرسلوا expenses كمصفوفة أرقام (مثل [45.5, 30, 24.5]) أو كائنات مع amount، وweights كمصفوفة عددية بنفس الأسلوب (مثل [1, 1, 2]). names الاختيارية تسمّي كل شخص.

كم التكلفة؟

أداة المتصفح مجانية وتعمل محليًا. تستخدم طلبات API رصيد KIT المدفوع مسبقًا بـ $0.002 لكل item ناجح؛ المدخل غير الصالح لا يُحاسب.

اطّلع على توثيق KIT الكامل ←