کاتالوگ
محصول، دستهبندی، قیمت، موجودی و تصویر. پایهٔ همهٔ ماژولهای فروشگاه.
- قیمت به کوچکترین واحدِ ارز (بدونِ خطای اعشار)
- قیمتِ قبل از تخفیف
- عنوان و توضیحِ جدا برای هر زبان
OCMS · نسخهٔ ۰٫۱
روی سرورِ خودتان: هستهای کوچک و امن، و هر قابلیت یک ماژولِ جدا: کاتالوگ، سبد، درگاهِ پرداخت، پیامک. فقط همانهایی را نصب میکنید که لازم دارید — و صفحهها را با صفحهساز، بدونِ کدنویسی میچینید.
پنلِ دمو فقطخواندنی است؛ هر صفحهای را باز کنید، چیزی خراب نمیشود. ورود به پنلِ دمو: demo@ocms.ir / demo-ocms-readonly

همهٔ تصویرهای این صفحه از خودِ OCMS گرفته شدهاند، نه طرحِ گرافیکی. همینها را در دمو میتوانید باز کنید و دست بزنید.






ماژول واحدِ فروش است: هر کدام شمارهٔ قطعه، فهرستِ مجوزهایی که پیش از نصب به شما نشان داده میشود، و تنظیماتِ خودش را دارد. ماژولی که نصب نکردهاید، حتی مسیرِ API هم ندارد.
محصول، دستهبندی، قیمت، موجودی و تصویر. پایهٔ همهٔ ماژولهای فروشگاه.
سبدِ سمتِ سرور؛ قیمت همیشه از کاتالوگ دوباره حساب میشود و مرورگر هرگز قیمت نمیفرستد.
سفارش، رزروِ موجودی هنگامِ ثبت، و چرخهٔ کاملِ سفارش از «پرداختشده» تا «تحویل» و «مرجوعی».
روشهای آفلاین؛ سفارش منتظر میماند تا کارمند دریافتِ پول را تأیید کند.
پرداختِ کارتهای شتابی از طریقِ زرینپال (REST v4). مبلغ از رکوردِ سفارش و تأیید سروربهسرور.
کارت و کیفپولِ بینالمللی روی صفحهٔ میزبانیشدهٔ Stripe؛ اطلاعاتِ کارت هرگز به سرورِ شما نمیرسد.
روی همان قراردادها ساخته میشوند:
هر صفحه — خانه، محصول، دسته، سبد، تسویه — از بلوک ساخته میشود. بکشید، جابهجا کنید، برای هر اندازهٔ صفحه و هر زبان جدا تنظیم کنید. پیشنویس و انتشار جدا هستند و هر نسخه نگه داشته میشود.
نه افزونهای روی کار؛ زبان در خودِ مدلِ داده است. تقویم، اعداد و ارز به شکلِ هر زبان نمایش داده میشوند و راستبهچپ بدونِ استایلِ دوم کار میکند.
ویترین روی گوشی نصب میشود و آفلاین یک صفحهٔ آبرومند نشان میدهد. مسیرهای پول هرگز کش نمیشوند.
هر قالب مجموعهای از توکنهای رنگ، فاصله، فونت و سایه است که از پنل ویرایش میشوند. توکنها قبل از ذخیره اعتبارسنجی میشوند تا CSS تزریق نشود.
روی هر سرورِ لینوکسی با Docker. دیتابیس PostgreSQL. داده و کلیدهای شما روی سرورِ خودتان میماند.
اینها قرارداد نیستند که کسی یادش برود؛ هسته اجبارشان میکند.
API با Fastify و zod؛ هر مسیر بدونِ اسکیما یا مجوزِ اعلامشده، هنگامِ بوت رد میشود.
کدِ ۶ رقمیِ گوشی، کدهای بازیابیِ یکبارمصرف، قفلِ حساب بعد از ۱۰ تلاشِ ناموفق.
هر تغییرِ مدیر ثبت میشود؛ ویرایش و حذفِ ردیفها حتی برای مالکِ دیتابیس رد میشود و زنجیرهٔ hash هر دستکاری را نشان میدهد.
بدونِ unsafe-inline؛ پنل با Trusted Types. خروجیِ HTML بهصورتِ پیشفرض escape میشود.
مبلغ از رکوردِ سفارش، تأییدِ پرداخت سروربهسرور، و webhookِ امضاشده. هیچ عددی از مرورگر پذیرفته نمیشود.
ماژولهای پولی با مجوزِ امضاشده فعال میشوند و فقط به مجوزهایی که اعلام کردهاند دسترسی دارند.
Atelier برای برندهای ظریف، Bazaar برای کاتالوگهای بزرگ، Kiln برای فروشِ مستقیمِ یک برند.



هر قالب صفحهٔ خانهٔ امضاییِ خودش را نصب میکند و استایلشیتِ خودش را دارد؛ همه از بلوک ساخته شدهاند، پس در صفحهساز قابلِ ویرایشاند. تصویرها همان محصولاتِ نمونهٔ نصباند.
هر لینوکسی با Docker و Docker Compose. حداقل ۲ گیگ رم و ۱۰ گیگ دیسک.
$ docker compose versionبستهٔ نصب را باز کنید و اسکریپت را با دامنهٔ خودتان اجرا کنید. رمزِ دیتابیس بهصورتِ تصادفی ساخته میشود.
$ cd ocms/deploy $ ./install.sh shop.example.com
اسکریپت در پایان یک کدِ یکبارمصرف چاپ میکند. این کد ثابت میکند صاحبِ سرور شمایید.
$ docker compose exec ocms ocms setup-codeبه https://دامنهٔ-شما/install بروید: نامِ فروشگاه، زبانها، ارز، قالب و حسابِ مدیر. اگر بخواهید محصولاتِ نمونه هم اضافه میشود.
قیمتها در حالِ نهاییشدن است و همینجا اعلام میشود.
راهِ تماس و خرید بهزودی همینجا قرار میگیرد. تا آن موقع دمو را ببینید. دیدنِ دمو