رفتن به محتوای اصلی

وب‌سایت فروش محصول

فروشگاهی که خودت می‌گردانی — درگاه، کارت‌به‌کارت، آمار و سئو

مسئله‌ای که حل می‌کنیم

فروشت در دایرکت گیر کرده: قیمت را دستی می‌گویی، رسید کارت‌به‌کارت لای چت گم می‌شود، و هیچ‌وقت نمی‌دانی چند نفر محصول را دیدند و نخریدند. قالب آماده هم جوابت را نمی‌دهد، چون درگاهت، زبانت و محصول استعلامی‌ات در آن جا نمی‌شود.

فروشگاه را از صفر می‌سازیم: Next.js 15 با App Router، React 19، TypeScript و Tailwind v4، روی PostgreSQL و Redis با Prisma. اسکیمای فروشگاهی که ساختیم ۴۵ مدل دارد و پنل مدیریتش ۲۱ صفحه است — از محصول و سفارش تا گزارش مالی، بازپرداخت، سئو و دفتر رویدادها.

نکتهٔ فنی که تفاوت را می‌سازد: چهار درگاه پرداخت — زرین‌پال، زیبال، آیدی‌پی و یک درگاه تست — پشت یک انتزاع واحد نشسته‌اند، و انتخاب درگاه فعال و کلیدهایش از خود پنل انجام می‌شود نه از داخل کد. روزی که درگاهت را عوض کنی، کسی لازم نیست دیپلوی کند.

آمار بازدید هم اول‌شخص است و هیچ ردیاب بیرونی ندارد: IP فقط هش‌شده با salt ذخیره می‌شود، ربات‌ها فیلتر می‌شوند، داده به‌صورت rollup روزانه جمع می‌شود و لحظه‌ای با SSE استریم می‌شود.

چطور پیش می‌رویم

هر مرحله یک خروجی قابل دیدن دارد؛ هیچ مرحله‌ای «در حال انجام» باقی نمی‌ماند.

  1. ۱

    بریف و ساختار کاتالوگ

    محصول‌ها، مجموعه‌ها، زبان‌ها، و اینکه کدام محصول قیمت دارد و کدام استعلامی می‌ماند.

  2. ۲

    مدل داده و پنل

    اسکیما و پنل مدیریت اول ساخته می‌شود، چون تا محتوا وارد نشود صفحهٔ فروشگاه چیزی برای نشان دادن ندارد.

  3. ۳

    پرداخت و سفارش

    درگاه‌ها پشت انتزاع واحد وصل می‌شوند، صف تأیید رسید راه می‌افتد، و کل مسیر با درگاه تست از سبد تا سفارش رد می‌شود.

  4. ۴

    سئو، آمار و تحویل روی سرور

    نقشهٔ سایت، JSON-LD و ریدایرکت‌ها؛ بعد خروجی standalone پشت nginx با systemd و گواهی Let’s Encrypt روی سرور خودت بالا می‌آید.

قدم بعدی

کار را با یک گفت‌وگوی کوتاه شروع کنیم

نه فرم طولانی، نه جلسهٔ رسمی. یک عکس و یک جملهٔ توضیح کافی است تا بدانیم مسئله چیست و چقدر طول می‌کشد.