حاسبة الساعات القابلة للفوترة
أربعون ساعة عمل بأجر 150 للساعة مع استثناء ساعتين تعطي 38 ساعة قابلة للفوترة وإجمالي فاتورة قدره 5700. أدخل أرقام جدول ساعاتك لتحصل على المبلغ دون إعادة الحساب في جدول بيانات. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- ساعات العمل
- 40
- الأجر بالساعة
- 150
- الساعات غير القابلة للفوترة
- 2
- الساعات القابلة للفوترة
- 38
- إجمالي الفاتورة
- 5,700
- الكمية
- 5,700
يحتاج المستقلون والمستشارون والوكالات ومسؤولو الوقت الداخليون إلى إجمالي فاتورة واحد من الساعات المعمولة وأجر الساعة وأي ساعات يجب أن تبقى خارج الفاتورة. تطرح حاسبة الساعات القابلة للفوترة هذه الوقت غير القابل للفوترة من الساعات المعمولة، ثم تضرب الباقي في أجر الساعة، وتعيد إجمالي الفاتورة الذي يمكنكم لصقه في مسودة أو مراجعة جدول وقت أو نص فوترة. إذا حُذفت الساعات غير القابلة للفوترة فإنها تُعد صفرًا. يُرفض أجر الساعة السالب بوصفه إدخالًا غير صالح بدل إنتاج فاتورة بإشارة.
أين تبرر حاسبة الساعات القابلة للفوترة مكانها
من يكتب الساعات القابلة للفوترة في صندوق بحث يعرف أصلًا أنه يسعّر زمنًا، لا أنه يحوّل راتبًا ولا يحسب علاوة وقت إضافي. يريد إجمالي الفاتورة من الساعات على الساعة وأجر وأي شطب، دون إعادة بناء الطرح والضرب نفسيهما في خلية جدول تنحرف حين ينسى أحد قفل الشطب. يصوغ المستشارون المستقلون فواتير أسبوعية من جدول وقت ويحتاجون رقمًا يلصقونه في كشف.
تشطب فرق القانون والتصميم والخدمات المهنية الداخلية التدريب أو المجاملة وما تزال تريد إجمالي فاتورة حتميًا للباقي. تحتاج صفوف الدراسة ودروس المحاسبة التي تعلّم الفوترة بالزمن والمواد وحيًا يرفض أجر ساعة سالبًا بدل إصدار إجمالي بإشارة في صمت قد يعامله المصحح رصيدًا. لا يستهلك التحقق الفاشل الرصيد.
اقرنوا هذه القدرة بأداة منفصلة للوقت الإضافي أو الضريبة حين تحتاجون تلك الطبقات؛ وأبقوا هذا السطح مركّزًا على إجمالي الساعات القابلة للفوترة الذي يقصده الناس حين يبحثون عن تلك العبارة.
حالات الاستخدام
فاتورة أسبوعية للمستقل من جدول الوقت
أدخلوا الساعات المعمولة وأجر الساعة وساعات الشطب لنشر إجمالي الفاتورة دون إعادة بناء الطرح في جدول بيانات.
استغلال الوكالة قبل حساب العميل
اطرحوا الإدارة أو التدريب غير القابل للفوترة من الساعات المسجّلة ثم اضربوا في أجر المهمة لتثبيت المبلغ الذي ستفوتره المالية.
الأسئلة الشائعة
كيف تُحسب الساعات القابلة للفوترة وإجمالي الفاتورة؟
الساعات القابلة للفوترة تساوي الساعات المعمولة ناقص غير القابلة للفوترة. إجمالي الفاتورة يساوي ذلك الباقي مضروبًا في أجر الساعة. مثال: (40 − 2) × 150 = 5700.
ماذا يحدث إذا كان أجر الساعة سالبًا؟
أجر الساعة السالب ليس خصمًا ولا يُفوتر؛ صحّحوا الأجر وأعيدوا الإرسال.
ما الذي يُعد ساعات غير قابلة للفوترة؟
كل وقت تسجله وتقرر عدم احتسابه على العميل: الساعات المشطوبة والتدريب والأعمال الإدارية الداخلية والمجاملات. يُطرح من الساعات المعمول بها، وإذا لم تُدخل شيئًا يُحسب صفرًا.
كيف أُظهر عملًا تطوعيًا أو على سبيل المجاملة؟
أدخل أجرًا قدره صفر. يخرج إجمالي الفاتورة صفرًا وتبقى الساعات مسجّلة، وهكذا يظهر بند بلا مقابل دون الحاجة إلى معادلة أخرى.
هل يمكنني إدخال أرباع الساعات؟
نعم. تقبل الساعات الكسور، فسبع ساعات وربع إدخال صحيح، ويُقرَّب إجمالي الفاتورة إلى منزلتين عشريتين ليطابق مبلغًا نقديًا عاديًا.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/fin/billable-hours \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"hours_worked":40,"hourly_rate":150}'const res = await fetch("https://api.kit.forhosting.com/fin/billable-hours", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"hours_worked": 40,
"hourly_rate": 150
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/billable-hours",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"hours_worked": 40,
"hourly_rate": 150
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/billable-hours", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"hours_worked":40,"hourly_rate":150}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"hours_worked":40,"hourly_rate":150}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/billable-hours", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"hours_worked": 40,
"hourly_rate": 150
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.billable_hours",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_hours | 1000000 |
max_rate | 1000000000 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
تشغّل الحسابات الحتمية ذاتها ودجة المتصفح المجانية وواجهة API، فيطابق الفحص في الصفحة أتمتة لاحقة. تُفوتر الاستدعاءات الناجحة بسعر $0.002؛ ولا تُحاسب المدخلات غير الصالحة.
ما الساعات القابلة للفوترة وكيف يتكوّن إجمالي الفاتورة
الساعات القابلة للفوترة هي الساعات التي يدفعها العميل فعلًا: زمن المهمة ناقص الشطب والتدريب والإدارة الداخلية والمجاملة التي تقررون ألا تفوتروها. مثال: أربعون ساعة معمولة بأجر مئة وخمسين في الساعة مع ساعتين مشطوبتين تعادل ثمانيًا وثلاثين ساعة قابلة للفوترة وإجمالي فاتورة خمسة آلاف وسبعمئة. أجر الساعة الصفري مسموح وينتج فاتورة صفر، وهو تمثيل سطر مجاملة أو عمل مجاني دون اختراع صيغة أخرى. لا يجوز أن تتجاوز الساعات غير القابلة للفوترة الساعات المعمولة، لأن ذلك سيختلق زمنًا قابلًا للفوترة سالبًا. يجوز أن تكون الساعات كسرية (سبع وربع ساعة جدول وقت صالح بربع الساعة)، وتُقرَّب حقول المال نصفًا إلى أعلى إلى منزلتين عشريتين حتى يطابق إجمالي الفاتورة العملة المعتادة. الهوية طرح واحد وضرب واحد. hours_worked هو كل ما سُجّل في جدول الوقت أو ساعة المهمة، بما فيه الزمن الذي قد تعلّمون لاحقًا أنه غير قابل للفوترة. non_billable_hours هو الشريحة التي يجب أن تبقى خارج الفاتورة. اطرحوا تلك الشريحة من الساعات المعمولة فتحصلون على billable_hours. اضربوا الساعات القابلة للفوترة في hourly_rate فتحصلون على invoice_total، وهو المبلغ الذي تعيده هذه الحاسبة نتيجةً أولى ثم مرة أخرى باسم amount حتى يربط لوحة التحكم أيًا من المفتاحين. عندما يُحذف non_billable_hours يُعامل صفرًا، فأسبوع نظيف من ثماني ساعات بأجر خمسة وسبعين في الساعة يفوتر ستمئة بلا شطب. أجر الساعة السالب ليس خصمًا ولا إشعار دائن: يُرفض بـ invalid_input حتى لا يصدر خطأ كتابة فاتورة بإشارة يسجّلها دفتر لاحق استردادًا. تعيد سلسلة الصيغة في الاستجابة أن invoice_total يساوي hours_worked ناقص non_billable_hours مضروبًا في hourly_rate، فيطبع المراجع الهوية بجانب الرقم دون إعادة بنائها.
عقد الإدخال وشكل الاستجابة وسلوك الخطأ
مثال: ساعات معمولة سبعة نقطة اثنان خمسة، أجر الساعة خمسة وثمانون نقطة خمسة، غير قابلة للفوترة صفر نقطة اثنان خمسة تنتج سبع ساعات قابلة للفوترة وإجمالي فاتورة خمسمئة وثمانية وتسعين نقطة خمسة. فضّلوا الأرقام العارية على السلاسل المنسّقة؛ لا تُحلَّل علامات العملة ولا فواصل الآلاف ولا تسميات الوحدة في النهاية. لا يطبّق هذا الطرف ضريبة مبيعات ولا دفعات مقدمة ولا مضاعفات وقت إضافي ولا تحويل عملة، ولا يصدر فاتورة PDF. اقرنوا النتيجة بخطوتكم الضريبية أو الوثائقية إن احتجتم فاتورة مقدَّمة. أرسلوا جسم JSON برقمين محدودين مطلوبين ورقم محدود اختياري، كلها بالعملة نفسها ونافذة الفوترة نفسها. hours_worked هو الزمن الإجمالي المسجّل ويجب أن يكون أكبر من الصفر أو مساويًا له؛ تُقبل الأسماء البديلة hours وtotal_hours وtime_worked وworked_hours حتى لا تحتاج صادرات جدول الوقت خطوة إعادة تسمية. hourly_rate هو الأجر القابل للفوترة لكل ساعة ويجب أن يكون أكبر من الصفر أو مساويًا له؛ تُقبل الأسماء البديلة rate وrate_per_hour وbill_rate وhourly. يفشل أجر الساعة السالب بـ invalid_input مع تسمية hourly_rate ولا يُفوتر. non_billable_hours اختياري ويساوي صفرًا افتراضيًا ويجب أن يكون أكبر من الصفر أو مساويًا له وألا يتجاوز hours_worked؛ تُقبل الأسماء البديلة nonbillable_hours وunpaid_hours وwrite_off_hours وnon_billable. يجوز أن يصل كل حقل عددًا JSON أو سلسلة رقمية تطابق نمطًا عشريًا محدودًا صارمًا. الحقول المطلوبة الناقصة والسلاسل الفارغة والقيم غير المحدودة والساعات فوق المليون أو أجر فوق المليار تفشل بـ invalid_input مع تسمية الحقل. عند النجاح يعيد الجسم hours_worked وhourly_rate وnon_billable_hours مقربة، ويعيد billable_hours فرقًا بينهما، ويعيد invoice_total وamount حاصل الضرب نفسه بمنزلتين مع تقريب نصف إلى أعلى، ويتضمن سلسلة صيغة يمكنكم طبعها بجانب الأرقام. سعر العنصر الناجح مبلغ ثابت $0.002.
أين تبرر حاسبة الساعات القابلة للفوترة مكانها
تراجع الوكالات معدل الاستغلال قبل إرسال الحساب إلى عميل وتحتاج الهوية نفسها التي سيستدعيها نص مالي لاحقًا عبر API. تستفيد مواقع المحتوى التي تترتب على الساعات القابلة للفوترة من ودجة متصفح مجانية تطابق رياضياتها بايتًا ببايت مسار API المدفوع على الوحدة النقية المشتركة. لأن التنفيذ شفرة تحليلية parse من الطبقة A، تبقى كل استدعاء ناجح رخيصًا عند $0.002 بلا رموز نموذج وبلا شبكة صادرة. أبقوا الطلبات صغيرة وثبّتوا invoice_total وbillable_hours في الاختبارات، فتحصلون على مبلغ فاتورة قابل لإعادة الإنتاج لمراجعات جداول الوقت ونصوص الفوترة ودفاتر إدارة مكتب خفيفة دون إقامة نظام فوترة كامل.
حالات التكامل
أوراكل المحاسبة والزمن والمواد
يحسب الطلبة والنصوص invoice_total = (hours_worked − non_billable_hours) × hourly_rate أمام نتيجة حتمية ترفض أجرًا سالبًا.
أسئلة تقنية
هل الساعات غير القابلة للفوترة مطلوبة؟
لا. non_billable_hours اختياري ويساوي صفرًا افتراضيًا، فجدول وقت نظيف من الساعات المعمولة مضروبًا في أجر الساعة فاتورة صالحة.
هل يجوز أن تتجاوز الساعات غير القابلة للفوترة الساعات المعمولة؟
لا. ذلك سيختلق زمنًا قابلًا للفوترة سالبًا. ترفض الحاسبة الطلب بـ invalid_input ولا تصدر فاتورة بإشارة.
كم تكلفة حاسبة الساعات القابلة للفوترة؟
أداة المتصفح مجانية. تستخدم طلبات API رصيد KIT المدفوع مقدمًا بسعر $0.002 لكل استدعاء ناجح؛ ولا تُفوتر المدخلات غير الصالحة.