بیشتر کسبوکارهای کوچک و متوسط ایران نرمافزار کم ندارند. برعکس: زیادی دارند. یک صندوق فروش، یک نرمافزار حسابداری، یک فایل اکسل برای انبار، یک فروشگاه اینترنتی که هیچکدام را نمیشناسد، و یک دفترچه برای چیزهایی که هیچجا جا نشدند. هر شب کسی باید این پنج واقعیت را با هم آشتی بدهد.
محاسب ۳۶۵ از این فرض شروع میکند که مسئله نبودِ نرمافزار نیست، جدا بودنشان است.
یک داده، نه چند جزیره
وقتی فاکتوری در صندوق فروش ثبت میشود، همان لحظه چهار اتفاق میافتد: موجودی انبار کم میشود، سطر درآمد در دفتر مینشیند، فاکتور به پروندهی مشتری میچسبد، و اگر آن کالا روی فروشگاه اینترنتی هم هست، موجودی آنجا هم بهروز میشود.
هیچکدام از اینها «همگامسازی» نیست. همگامسازی یعنی دو حقیقت وجود دارد و شبها یکی را روی دیگری مینویسیم — و یعنی بینِ دو همگامسازی، سامانه به شما دروغ میگوید. اینجا یک حقیقت بیشتر نیست.
فارسی و شمسی، از پایه نه از رو
خیلی از سامانهها فارسیسازی شدهاند. تفاوت در جهت کار است: تاریخ در دیتابیس میلادی میماند و جلوی کاربر شمسی میشود، نه برعکس. این یعنی گزارشگیری، مرتبسازی و محاسبهی اختلاف تاریخ همیشه درست کار میکند، و سال مالی ایران هم سرِ جای خودش مینشیند.
همین منطق برای اعداد هم هست: رقم فارسی چیزی است که دیده میشود، نه چیزی که ذخیره میشود.
دادهی هر کسبوکار، واقعاً جدا
هر کسبوکار روی محاسب ۳۶۵ دیتابیس مستقل خودش را دارد. این تصمیم گرانتر از راه معمول است — راه معمول یک دیتابیس مشترک است با یک ستون tenant_id و یک شرط در هر کوئری.
مشکل راه معمول این است که یک شرطِ فراموششده در یک کوئری کافی است تا دادهی یک مشتری به مشتری دیگر نشت کند. با دیتابیس جدا، آن اشتباه اصلاً قابل انجام نیست.
بدون وابستگی بیرونی
فونت، آیکن، و کتابخانهها همه روی سرور خودمان هستند و سرور داخل ایران است. هیچ صفحهای برای بالا آمدن به یک دامنهی خارجی وصل نمیشود.
این یک تصمیم زیباییشناختی نیست، یک تصمیم عملیاتی است: وقتی دسترسی به اینترنت بینالملل قطع میشود، صندوق فروش شما نباید قطع شود.
موبایل، نه نسخهی کوچکشده
جدولهای سنگین روی گوشی به کارت تبدیل میشوند و ترتیب خواندن به هم نمیریزد. برای فروش حضوری هم اپ موبایل هست که آفلاین کار میکند و بعد همگام میشود.
دسترسی در سطحِ کار، نه در سطحِ صفحه
نقشها تا سطح «چه کسی اجازهی ویرایش قیمت دارد» ریز میشوند — نه فقط «چه کسی صفحهی کالاها را میبیند». ورود دومرحلهای، دفتر نشستهای باز، و امکان خروج دادن یک دستگاه از راه دور هم هست.
امروز چه چیزی واقعاً کار میکند
این بخش را عمداً با عدد مینویسیم، چون بخش «امکانات» در سایتهای نرمافزاری معمولاً مخلوطی است از آنچه هست، آنچه در راه است، و آنچه آرزوست.
- صندوق فروش — فاکتور فروش و مرجوعی، کسر خودکار موجودی، چاپ رسید، کار روی گوشی. محاسبهی پول سمت سرور انجام میشود، نه در مرورگر.
- مدیریت اطلاعات کالا — کاتالوگ در مقیاس دهها هزار کالا، دروازهی تأیید پیش از انتشار، صف محصولات تکراری، چاپ بارکد و کارت قیمت قفسه.
- فروشگاه اینترنتی — صفحهی کالا، دسته، برند و جستوجو، همه از همان دادهی انبار. ورود مشتری با پیامک و سبد خرید.
- دفتر درآمد و هزینه — ثبت با تاریخ شمسی، تاریخچهی کامل هر سطر، و ابطال بهجای حذف. هیچ رکورد مالی از سامانه پاک نمیشود.
- صورتهای مالی — سود و زیان، وضعیت مالی، جریانهای نقدی و تغییرات حقوق مالکانه، از روی دفتر کل.
- حقوق و دستمزد — فرمولهای قانون کار و فیش حقوقی، با ذخیرهی وضعیت هر ماه بهصورت عکس ثابت؛ تغییر پارامترهای امسال حقوق پارسال را عوض نمیکند.
- پیامک و باشگاه مشتریان — کمپین، کد ورود یکبارمصرف، گزارش تحویل، و جابهجایی خودکار بین اپراتورها وقتی یکی جواب نمیدهد.
در داشبورد سامانه، ماژولهایی که هنوز ساخته نشدهاند با برچسب «برنامهریزیشده» دیده میشوند — نه پنهان میشوند و نه بهعنوان امکانات موجود معرفی میشوند. کسی که وارد میشود باید بتواند تفاوت را ببیند.
کجا ایستادهایم
محاسب ۳۶۵ هنوز بهطور عمومی عرضه نشده است. اولین کسبوکار روی سامانه زنده است و با دادهی واقعی کار میکند: بیش از پانزده هزار کالای فعال، فروش روزانه، و فروشگاه اینترنتیای که از همان انبار تغذیه میشود.
ترجیح میدهیم دومین و سومین مشتری را هم با همین دقت اضافه کنیم تا اینکه فردا یک دکمهی «ثبتنام» بگذاریم و بعد دنبال جواب بگردیم.
اگر کسبوکاری دارید که امروز با چند نرمافزار جدا اداره میشود و فکر میکنید جایش یکی باید باشد، خوشحال میشویم بشنویم. فرم پیشثبتنام در صفحهی اصلی است.
این بلاگ قرار است چه باشد
نه اعلامیهی نسخه و نه متن تبلیغاتی. قرار است جایی باشد برای نوشتن دربارهی تصمیمهایی که سرِ ساختن این سامانه گرفته شده و دلیلشان — از اینکه چرا هر کسبوکار دیتابیس جدا دارد تا اینکه چرا تاریخ در دیتابیس میلادی میماند.
اگر کسی جای دیگری دارد همین مسائل را حل میکند، شاید یکی از این نوشتهها چند روز از وقتش را نجات بدهد.