در این مقاله میخواهیم یک اتوماسیون واقعی طراحی کنیم تا هر زمان مشتری خرید انجام میدهد، اطلاعات او به صورت خودکار در Google Sheets یا یک CRM ثبت شود. این کار باعث میشود نیاز به وارد کردن دستی دادهها از بین برود و مدیریت مشتریان برای وبمستران سادهتر شود.
فرض کنید فروشگاه اینترنتی شما با ووکامرس ساخته شده است. خود WooCommerce یک قابلیت داخلی برای Webhook دارد. میتوانید آن را طوری تنظیم کنید که به محض وقوع رویدادهایی مثل ایجاد سفارش جدید، اطلاعات سفارش به صورت JSON به یک آدرس مشخص ارسال شود. این آدرس همان وبهوکی است که در n8n ساختهاید و به شما امکان میدهد سفارشها را مستقیماً به اتوماسیون منتقل کنید.
ورکفلو کلی به شکل زیر خواهد بود:
مرحله اول: ساخت ورکفلو جدید در n8n
برای شروع باید وارد پنل کاربری ایرانسرور شوید و n8n را باز کنید. سپس روی New Workflow کلیک کنید تا یک بوم خالی بسازید و نام مناسبی مثل «CRM-Automation» بگذارید. هدف این مرحله آمادهسازی یک فضای خالی برای طراحی اتوماسیون است.
مرحله دوم: افزودن Webhook بهعنوان تریگر
از نوار ابزار، نود Webhook را اضافه کنید. مقدار HTTP Method را روی POST بگذارید و در قسمت Path یک مسیر ساده مثل orders/new وارد کنید (توجه کنید که از فاصله یا حروف فارسی استفاده نکنید). بخش Authentication را در حالت None نگه دارید تا فعلاً بدون احراز هویت کار کند. در بخش Respond حالت Immediately را انتخاب کنید؛ در این حالت n8n به محض دریافت درخواست، بدون انتظار برای اجرای نودهای بعدی، یک پاسخ ساده برمیگرداند. این روش برای تست سریع و اطمینان از ارتباط درست سایت با n8n کاربرد دارد.
در بالای نود دو آدرس متفاوت نمایش داده میشود: یکی Test URL برای تستهای اولیه و دیگری Production URL که بعد از فعالسازی ورکفلو در دسترس خواهد بود. در زمان آزمایش باید از Test URL استفاده کنید و بعد از انتشار نهایی، لینک Production را به سایت یا اپلیکیشن خود بدهید. هدف این مرحله ایجاد یک نقطه ورودی مشخص و پایدار برای دریافت اطلاعات سفارشها در n8n است.
ارسال دیتای آزمایشی به Webhook (برای تست)
برای اینکه بدون نیاز به سفارش واقعی هم بتوانید تست انجام دهید، بعد از فشردن دکمه Listen for test event، وارد cmd ویندوز شوید و دیتای آزمایشی را به وبهوک ارسال کنید تا این داده به نود شما منتقل شود.
مرحله سوم: اعتبارسنجی و انتخاب فیلدها با Set
ابتدا یک نود IF بلافاصله بعد از Webhook اضافه کنید و بررسی کنید که هدر X-Webhook-Token برابر مقدار دلخواه شما (مثلا demo-123) باشد. اگر درست نبود، مسیر را متوقف کنید.
سپس بعد از IF (شاخه صحیح)، نود Set را اضافه کنید. در Set، فیلدهای موردنیاز را به شکل مرتب بسازید تا دادهها برای ذخیرهسازی آماده شوند. به عنوان نمونه میتوانید order_id را برابر {{$json["orderId"]}}، تاریخ سفارش را برابر {{$json["createdAt"]}} و سایر اطلاعات مشتری مانند نام، شماره تماس، ایمیل، مبلغ و شهر را نیز مپ کنید. اگر فیلدی گاهی خالی است، گزینه Keep Only Set را فعال و برای هر فیلد مقدار پیشفرض تعریف کنید (مثلا «نامشخص»). هدف این مرحله استانداردسازی و تمیزکردن دادههاست تا برای ثبت در CRM یا Spreadsheet بدون ابهام باشند.
مرحله چهارم: ذخیره در Google Sheets (Append)
در این مرحله باید نود Google Sheets را اضافه کنید و Operation را روی Append Row بگذارید. سپس یک Credential بسازید، دسترسی حساب گوگل خود را تأیید کنید و فایل و شیت مقصد را انتخاب نمایید.
بعد از آن باید ستونها را به صورت دستی با فیلدهای ورودی مپ کنید؛ برای مثال:
- ستون «شماره سفارش» به مقدار
{{$json["شماره سفارش"]}} - ستون «نام» به مقدار
{{$json["نام"]}} - ستون «شماره» به مقدار
{{$json["شماره"]}} - ستونهای دیگر هم به همین شکل بر اساس اطلاعاتی که در نود Set ساختهاید، تنظیم شوند.
به این ترتیب هر بار که ورکفلو اجرا شود، یک ردیف جدید با اطلاعات مشتری و سفارش به انتهای فایل اضافه میشود و شما یک دفتر ثبت تمیز و قابلفیلتربندی برای پیگیری سفارشها خواهید داشت.
خروجی اکسل بعد از اجرای این نود به شکل زیر است:
مرحله پنجم: شاخههای تکمیلی CRM و گزارشگیری
در کنار ذخیره در شیت، میتوانید شاخههای دیگری هم بسازید. برای نمونه همان دادهها را به یک CRM ابری ارسال کنید، یا یک گزارش روزانه از همه سفارشها تهیه کنید و در یک شیت یا فایل جدید ثبت کنید. حتی میتوانید شرطی بگذارید که اگر مبلغ سفارش بالاتر از مقدار خاصی بود، آن سفارش را در لیست VIP ذخیره کنید یا در CRM تگ VIP به آن کاربر اختصاص دهید. هدف این مرحله توسعه تدریجی اتوماسیون برای نیازهای واقعی کسبوکار است.
مرحله ششم: انتشار نهایی و جایگزینی URL
در پایان باید ورکفلو را Active کنید تا آدرس Production URL فعال شود. سپس در منبع وبهوک (سایت/اپلیکیشن)، آدرس تست را با Production URL جایگزین کنید. یک سفارش واقعی ثبت کنید و نتیجه را بررسی کنید. هدف این مرحله پایدار کردن ورودیها و جلوگیری از تغییر URLهای تست در محیط واقعی است.
نکات امنیت و پایداری
برای امنیت بیشتر میتوانید از هدر یا Secret Token استفاده کنید و در n8n آن را با IF کنترل کنید. اگر درخواستها زیاد است، یک Rate Limit ساده با Wait یا Queue پیادهسازی کنید. همچنین میتوانید خطاها را با Error Trigger به یک شیت «Logs» بفرستید تا عیبیابی سریعتر انجام شود. هدف این بخش محافظت از ورودیها و سادهسازی عیبیابی در محیط واقعی است.
جمعبندی
با استفاده از یک Webhook استاندارد، پاکسازی دادهها و ثبت خودکار در Sheets، فرآیند مدیریت مشتریان ساده، قابل پیگیری و مقیاسپذیر میشود.









