مدیریت امور مالی، صدور فاکتورهای دقیق و بهروزرسانی نرخهای مالیاتی بر اساس قوانین جدید کشوری، یکی از حیاتیترین وظایف هر مدیر وبسایت یا ارائهدهنده خدمات هاستینگ، سرور و خدمات ابری است. هنگامی که قوانین مالیاتی کشور تغییر میکند،مانند افزایش نرخ مالیات بر ارزش افزوده از ۹ درصد به ۱۰ درصد، بسیاری از مدیران وبسایتهای ارائهدهنده خدمات میزبانی که از سیستم مدیریت فاکتور و اتوماسیون WHMCS استفاده میکنند، با چالش بهروزرسانی نرخ مالیات در بخشها و فاکتورهای مختلف روبهرو میشوند.
اگر شما نیز در پنل ادمین خود به بخش تنظیمات مالیات (Tax Rules) مراجعه کردهاید و متوجه شدهاید که رابط کاربری گرافیکی امکان ویرایش مستقیم و گروهی مقادیر را به سادگی فراهم نمیکند یا حذف و ایجاد مجدد قوانین موجب بههمریختگی فاکتورهای صادرشده میشود، این راهنمای تخصصی دقیقاً برای شما نوشته شده است.
آموزش تغییر درصد مالیات در whmcs
همانطور که میدانید ، در سال 1403 مقدار مالیات یک واحد صدم افزایش یافت و قرار است از سال 1403 مالیات بر ارزش افزوده 10 درصد از مشتری دریافت گردد. به همین دلیل تمامی شرکت ها و اشخاص حقوقی که وب سایت دارند و صاحب کسب و کارند ، میبایست مقدار را از 9 درصد به 10 درصد افزایش دهند.
احتمالا سری به بخش قوانین مالیات ( Tax ) درتنظیمات whmcs زده و متوجه این شده باشید که از طریق محیط گرافیکی ، زمانی که قوانین مالیاتی اضافه میکنیم ، امکان ویرایش آن به عدد دلخواه وجود ندارد و اگر بخواهیم حذف و از نو ایجاد کنیم نیز مشکلاتی در پی خواهد داشت.
بنابراین نیاز است که ما با یک تکه کد این مورد را تغییر دهیم تا به درستی هم روی فاکتور های جدید و هم فاکتورهای فعلی که داریم این مقدار درج شود.
هرچند روش های دیگری نیز وجود دارد ، اما با کد پایین میتوانید این کار را در سریعترین زمان ممکن انجام دهید.
چنانچه بدنبال یک هاست مناسب و اختصاصی برای whmcs خود هستید، پیشنهاد ما استفاده از هاست اختصاصی سابین سرور میباشد
نحوه تغییر مقدار درصد مالیات در whmcs :
جهت استفاده از کد زیر ، کافیست در محلی که whmcs را نصب کرده اید ، یک فایل با فرمت .php ایجاد و کدهای زیر را داخل آن قرار دهید و سپس در مرورگر آن فایل را فراخوانی کنید.
پیشنهاد مطالعه و یادگیری : آموزش نصب whmcs

بعنوان مثال :
در public_html خود ( محلی که whmcs نصب شده است ) فایلی با نام tax.php ایجاد میکنیم و کد های زیر را داخل این فایل قرار میدهیم.
سپس در مرورگر ادرس زیر را وارد میکنیم.
sub.domain.com/tax.php و منتظر میمانید تا عملیات اپدیت انجام شود.
<?php
use \WHMCS\Database\Capsule;
require __DIR__ . "/init.php";
Capsule::table('tbltax')->update(['taxrate' => 10]);
if (!function_exists("updateInvoiceTotal")) {
require ROOTDIR . "/includes/invoicefunctions.php";
}
$invoices = Capsule::table('tblinvoices')->where('status', 'Unpaid')->get();
foreach ($invoices as $invoice) {
if($invoice->taxrate > 0){
Capsule::table('tblinvoices')
->where('id', $invoice->id)
->update(['taxrate' => 10]);
} else if($invoice->taxrate2 > 0){
Capsule::table('tblinvoices')
->where('id', $invoice->id)
->update(['taxrate2' => 10]);
}
updateInvoiceTotal($invoice->id);
}عیبیابی خطاهای رایج هنگام تغییر مالیات در WHMCS
گاهی اوقات ممکن است در حین اجرای فرآیند بهروزرسانی مالیات با خطاهایی مواجه شوید. در این بخش به رایجترین مشکلات و راه حل آنها میپردازیم:
- خطای سفید صفحه (White Screen of Death): این خطا معمولاً به دلیل وجود اشکال نگارشی در کد PHP یا تداخل نسخههای PHP رخ میدهد. برای رفع آن، لاگهای خطای سرور (Error Log) را در هاست بررسی کنید یا نسخه PHP هاست را با استانداردهای WHMCS هماهنگ سازید.
- خطای عدم دسترسی به دیتابیس (Database Connection Error): مطمئن شوید که مسیر فایل
init.phpبه درستی در ابتدای اسکریپت فراخوانی شده است. - عدم تغییر مبلغ کل فاکتورها: اگر نرخ مالیات تغییر کرده اما مبلغ نهایی فاکتورها آپدیت نشده است، احتمالاً تابع
updateInvoiceTotalبه درستی اجرا نشده یا فایلinvoicefunctions.phpدر مسیر ریشه یافت نشده است.
نتیجهگیری و جمعبندی
تغییر درصد مالیات در WHMCS به دلیل محدودیتهای رابط کاربری گرافیکی پیشفرض، نیازمند استفاده از روشهای مستقیم پایگاه داده و کدهای سفارشی کمکی است. در این مقاله جامع از وبلاگ سابین سرور، آموختیم که چگونه با ساخت یک فایل PHP کوچک و استفاده از Capsule، نرخ مالیات را هم در سطح تنظیمات پایه و هم در تمامی فاکتورهای پرداختنشده قبلی به صورت گروهی به ۱۰ درصد یا هر مقدار دلخواه دیگری ارتقا دهیم.
رعایت نکات ایمنی، تهیه نسخه پشتیبان پیش از اجرا و حذف فایل اسکریپت پس از اتمام کار، از مهمترین اصول نگهداری این سیستمها به شمار میرود. اگر در هر یک از مراحل ذکر شده با سوال یا چالشی مواجه شدید، یا برای بهینهسازی زیرساخت مالی و سرورهای خود به راهنمایی تخصصی نیاز دارید، میتوانید از طریق بخش دیدگاهها با کارشناسان ما در ارتباط باشید تا در سریعترین زمان ممکن پاسخگوی شما عزیزان باشیم.





2 پاسخ
به نظر کد ایرادداره اولش <?php نداره ؟
کد php داخل متن ادغام شده و نشان نداده است.
بله در ابتدا < ? php باید قرار دهید. در متن اموزش نیز ویرایش و تصحیح شد.