پرش به محتوا
to3edev

اتصال درگاه پرداخت ایرانی به ووکامرس؛ مراحل و خطاهای رایج

اتصال درگاه پرداخت ایرانی به ووکامرس؛ مراحل و خطاهای رایج

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

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

درگاه مستقیم بانکی یا شرکت پرداخت؟

در ایران دو نوع درگاه رایج است. درگاه مستقیم که از طریق شرکت‌های PSP وابسته به بانک‌ها گرفته می‌شود، و درگاه واسط که شرکت‌های پرداخت‌یار ارائه می‌دهند و پول را بعد از مدتی به حساب شما تسویه می‌کنند.

درگاه مستقیم معمولاً کارمزد کمتری دارد و پول مستقیم به حساب می‌رود، اما گرفتنش مدارک بیشتر و زمان طولانی‌تری می‌خواهد و معمولاً نماد اعتماد الکترونیکی پیش‌نیاز است. درگاه واسط سریع‌تر فعال می‌شود و پنل و گزارش بهتری دارد، اما تسویه با تأخیر انجام می‌شود و کارمزد متفاوتی دارد. نرخ‌ها مرتب تغییر می‌کنند، پس عددی نمی‌نویسم؛ قبل از انتخاب، شرایط فعلی را از خود شرکت‌ها بپرسید.

برای فروشگاه تازه‌کار، من معمولاً پیشنهاد می‌کنم با یک درگاه واسط شروع کنند تا فروش راه بیفتد و هم‌زمان کارهای نماد و درگاه مستقیم را پیش ببرند.

مدارک و پیش‌نیازها

جزئیات بین شرکت‌ها فرق دارد، اما تقریباً همیشه این‌ها را می‌خواهند: مدارک هویتی، شماره شبای به نام صاحب درگاه، دامنه فعال با SSL، و سایتی که محصولات، قیمت‌ها، اطلاعات تماس و صفحه قوانین در آن مشخص باشد. سایتی که هنوز صفحه «به‌زودی» دارد معمولاً تأیید نمی‌شود.

یک نکته کوچک ولی مهم: اطلاعات تماس سایت با اطلاعات ثبت‌شده در پرونده یکی باشد. یک بار درخواست درگاه مشتری‌ام برگشت خورد، فقط چون شماره تلفن فوتر با شماره ثبت‌شده فرق داشت.

نصب افزونه درگاه

بیشتر شرکت‌ها افزونه رسمی ووکامرس دارند. افزونه را فقط از سایت رسمی خود شرکت یا مخزن وردپرس بگیرید. افزونه درگاهی که از یک سایت ناشناس دانلود شده، می‌تواند پرداخت‌ها را به حساب دیگری هدایت کند و این واقعاً اتفاق افتاده است.

بعد از نصب، در «ووکامرس > پیکربندی > پرداخت‌ها» درگاه را فعال کنید و کد پذیرنده یا مرچنت را وارد کنید. عنوانی که مشتری می‌بیند را ساده بنویسید، مثلاً «پرداخت آنلاین با کارت‌های عضو شتاب». توضیح کوتاهی هم اضافه کنید که بعد از پرداخت، مشتری به سایت برمی‌گردد و نباید صفحه را ببندد.

تومان یا ریال

این‌جا جایی است که بیشترین اشتباه رخ می‌دهد. درگاه‌های ایرانی مبلغ را معمولاً به ریال می‌گیرند. اگر واحد پول فروشگاه تومان است، افزونه باید مبلغ را در ده ضرب کند. بیشتر افزونه‌های رسمی این را خودشان تشخیص می‌دهند، اما همیشه با یک تراکنش آزمایشی مطمئن شوید که مبلغ در صفحه بانک دقیقاً همان مبلغ سبد خرید است.

آدرس بازگشت و تأیید تراکنش

جریان پرداخت این‌طور است: مشتری به صفحه بانک می‌رود، پرداخت می‌کند، به آدرس بازگشت (callback) در سایت شما برمی‌گردد و سایت با یک درخواست جداگانه از درگاه می‌پرسد آیا این تراکنش واقعاً موفق بوده است. این مرحله آخر، یعنی verify، مهم‌ترین بخش است. اگر انجام نشود، بانک بعد از مدتی پول را به مشتری برمی‌گرداند و سفارش هم پرداخت‌نشده می‌ماند.

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

خطاهای رایج و راه‌حل‌شان

سفارش در انتظار پرداخت می‌ماند

شایع‌ترین علت‌ها از تجربه من، به ترتیب:

  • کش صفحه بازگشت. اگر افزونه کش یا CDN صفحه callback را کش کند، درخواست verify اصلاً اجرا نمی‌شود. آدرس‌های مربوط به ووکامرس و درگاه را از کش مستثنا کنید.
  • فایروال هاست. بعضی فایروال‌ها درخواست‌های POST برگشتی از بانک را مسدود می‌کنند. لاگ خطای هاست را ببینید و در صورت نیاز از پشتیبانی هاست بخواهید IP درگاه را مجاز کنند.
  • سرور خارج از ایران. برخی درگاه‌ها درخواست verify را فقط از IP ایران قبول می‌کنند. اگر هاست شما خارج است، باید از سرویس واسط یا هاست ایرانی استفاده کنید.
  • ریدایرکت اشتباه. اگر آدرس سایت گاهی با www و گاهی بدون آن باز می‌شود، یا http و https با هم قاطی شده‌اند، ممکن است مشتری به آدرسی برگردد که نشست سبد خرید در آن وجود ندارد.

خطای «آدرس سایت با آدرس ثبت‌شده مطابقت ندارد»

درگاه روی یک دامنه مشخص ثبت شده است. اگر از ساب‌دامین یا دامنه دیگری تست می‌کنید، خطا می‌گیرید. برای تست روی نسخه آزمایشی، اگر درگاه حالت sandbox دارد از آن استفاده کنید.

مشتری پرداخت کرده ولی صفحه بانک باز نمی‌شود

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

تست درست قبل از افتتاح

تست واقعی یعنی یک خرید با کارت واقعی و مبلغ کم. من این سناریوها را همیشه اجرا می‌کنم:

  1. پرداخت موفق و بررسی اینکه وضعیت سفارش «در حال انجام» شده و ایمیل و پیامک ارسال شده است.
  2. انصراف از پرداخت در صفحه بانک و بررسی اینکه سفارش «ناموفق» یا «لغوشده» ثبت شده و پیام مناسب به مشتری نشان داده می‌شود.
  3. بستن صفحه بانک وسط کار و برگشتن به سایت.
  4. پرداخت از گوشی با مرورگر داخل اپ‌هایی مثل تلگرام، چون رفتار این مرورگرها گاهی فرق دارد.

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

بازگرداندن وجه

ووکامرس دکمه «بازپرداخت» دارد، اما برای بیشتر درگاه‌های ایرانی این دکمه فقط سفارش را در سایت بازپرداخت‌شده علامت می‌زند و پولی جابه‌جا نمی‌کند. بازگرداندن واقعی پول یا از پنل درگاه انجام می‌شود، یا با واریز دستی به کارت مشتری.

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

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

لاگ‌ها را روشن نگه دارید

بیشتر افزونه‌های درگاه گزینه‌ای برای ثبت لاگ دارند. در هفته‌های اول بعد از افتتاح روشنش کنید. وقتی مشتری می‌گوید «پرداخت کردم ولی سفارشم ثبت نشد»، لاگ دقیقاً نشان می‌دهد درخواست بازگشت رسیده یا نه، و اگر رسیده، درگاه چه پاسخی داده است. بدون لاگ، فقط حدس می‌زنید.

لاگ‌ها در «ووکامرس > وضعیت > گزارش‌ها» دیده می‌شوند. بعد از اینکه مطمئن شدید همه چیز پایدار است، می‌توانید سطح لاگ را کم کنید تا حجم فایل‌ها زیاد نشود، اما کامل خاموشش نکنید.

صفحه تشکر از خرید

صفحه‌ای که مشتری بعد از پرداخت موفق می‌بیند را دست‌کم نگیرید. شماره سفارش، مبلغ پرداختی، زمان تقریبی ارسال و راه تماس را واضح نشان دهید. مشتری‌ای که بعد از پرداخت فقط یک صفحه خالی یا پیام انگلیسی می‌بیند، اولین کاری که می‌کند تماس با پشتیبانی است. اگر قالب شما این صفحه را خوب طراحی نکرده، با قالب فرزند و بازنویسی فایل thankyou.php ووکامرس اصلاحش کنید.

چند درگاه هم‌زمان

داشتن دو درگاه فعال ایده بدی نیست. اگر یکی به هر دلیلی قطع شد، فروش متوقف نمی‌شود. فقط ترتیب نمایش را طوری بگذارید که درگاه اصلی اول باشد و نام‌ها را طوری بنویسید که مشتری گیج نشود. دو گزینه با عنوان «پرداخت آنلاین» و «پرداخت اینترنتی» فقط سردرگمی ایجاد می‌کند.

امنیت پرداخت

کلید و کد مرچنت را جایی جز تنظیمات افزونه ننویسید و در اسکرین‌شاتی که برای پشتیبانی می‌فرستید، مخفی‌اش کنید. دسترسی مدیر کل را به حداقل افراد بدهید؛ کسی که فقط سفارش‌ها را پیگیری می‌کند، نقش «مدیر فروشگاه» کافی است. توصیه‌های کلی‌تر را در امنیت وردپرس نوشته‌ام.

وقتی کار گره خورده است

اگر همه این‌ها را چک کردید و هنوز سفارش‌ها درست ثبت نمی‌شوند، لاگ افزونه درگاه (اگر دارد) و لاگ خطای PHP را بررسی کنید. اغلب علت دقیق همان‌جا نوشته شده است. اگر دنبال کسی هستید که این کار را برایتان انجام دهد، پشتیبانی وردپرس شامل همین رفع اشکال‌هاست و در طراحی فروشگاه ووکامرس هم اتصال و تست درگاه بخشی از کار است.

مقاله‌های مرتبط: مدیریت انبار در ووکامرس و کد SKU چیست.

پرداخت و تجربه کاربر در موبایل

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

سؤال‌های رایج

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

برای بسیاری از درگاه‌های واسط، در شروع کار بله. برای درگاه مستقیم بانکی معمولاً نماد پیش‌نیاز است. شرایط تغییر می‌کند و بهتر است از خود ارائه‌دهنده بپرسید.

پرداخت در محل هم فعال کنم؟

اگر در شهر خودتان پیک دارید، گزینه خوبی است و برای مشتریانی که به خرید آنلاین اعتماد ندارند جذاب است. فقط آن را به منطقه ارسال شهر خودتان محدود کنید.

پول مشتری کم شده و سفارش ثبت نشده؛ چه کنم؟

اول در پنل درگاه وضعیت تراکنش را ببینید. اگر تأیید نشده باشد، معمولاً ظرف مدت مشخصی به حساب مشتری برمی‌گردد. به مشتری همین را با شماره پیگیری اطلاع دهید و اگر خواست، سفارش را دستی ثبت کنید و دوباره لینک پرداخت بفرستید.

ادامه مطالعه

این نوشته بخشی از راهنمای راه‌اندازی فروشگاه ووکامرس است. مقاله‌های مرتبط: مدیریت انبار در ووکامرس، کد SKU چیست.

1 دیدگاه

دیدگاه خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *