FA-TOOLS — Header Component

آموزش جامع و کاربردی تنظیم درگاه زرین‌پال در ووکامرس + حل تمامی خطاها

خلاصه سریع مقاله:

اتصال زرین‌پال به ووکامرس شامل ۴ مرحله کلی است: ثبت‌نام و دریافت مرچنت کد (Merchant ID)، نصب افزونه رسمی زرین‌پال، تطابق واحد پول سایت (تومان/ریال) و پیکربندی بازگشت به سایت. برای جلوگیری از تراکنش‌های ناموفق، حتماً برگه تسویه‌حساب و آدرس Callback زرین‌پال را از افزونه‌های کش و افزونه‌های امنیتی استثنا کنید.

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

۱. پیش‌نیازهای فنی و قانونی اتصال زرین‌پال به ووکامرس

تنظیم درگاه زرین‌پال در ووکامرس — تصویر 1

برای راه اندازی درگاه پرداخت زرین‌پال روی ووکامرس به یک حساب احراز هویت شده در زرین‌پال، مرچنت کد (Merchant ID)، گواهی SSL فعال روی دامنه و ماژول cURL فعال در سرور هاست نیاز دارید.

قبل از شروع پیکربندی در وردپرس، مطمئن شوید موارد زیر را آماده کرده‌اید:

  • حساب کاربری تایید شده: مدارک هویتی شما در زرین‌پال باید کاملاً تایید شده باشد.
  • کد درگاه (Merchant ID): یک رشته ۳۶ کاراکتری اختصاصی که پس از ایجاد درگاه در پنل زرین‌پال دریافت می‌کنید.
  • کد مالیاتی (اینماد و پرونده مالیاتی): طبق قوانین جدید، برای فعال‌سازی درگاه پرداخت باید پرونده مالیاتی فعال داشته باشید و کد رهگیری ثبت‌نام مالیاتی در پنل زرین‌پال ثبت شده باشد.
  • نماد SSL فعال: آدرس سایت شما باید حتماً با https شروع شود، در غیر این صورت ارتباط امن برقرار نشده و بازگشت از درگاه با خطا مواجه می‌شود.

۲. مقایسه درگاه واسط و درگاه اختصاصی (زرین‌لین / مستقیم)

تنظیم درگاه زرین‌پال در ووکامرس — تصویر 2

زرین‌پال دو حالت کلی برای هدایت کاربر به صفحه پرداخت ارائه می‌دهد. جدول زیر تفاوت‌های کلیدی این دو حالت را نشان می‌دهد تا متناسب با نیاز کسب‌وکارتان بهترین گزینه را انتخاب کنید:

ویژگی درگاه واسط (استاندارد) درگاه اختصاصی (مستقیم / زرین‌مستقیم)
صفحه واسط پرداخت کاربر ابتدا لوگو و نام زرین‌پال را می‌بیند. کاربر مستقیماً به صفحه شاپرکی بانک هدایت می‌شود.
برندینگ در شاپرک نام «زرین‌پال» بالای درگاه بانک درج می‌شود. نام و لوگوی اختصاصی فروشگاه شما درج می‌شود.
شرایط فعال‌سازی احراز هویت پایه + کد مالیاتی تعداد مشخصی تراکنش موفق در ماه + نماد اعتماد (اینماد)
نرخ تبدیل (Conversion Rate) معمولی (احتمال انصراف برخی کاربران سنتی) بالا (به دلیل اعتماد بیشتر به صفحه مستقیم بانک)

۳. آموزش گام‌به‌گام نصب و تنظیم افزونه زرین‌پال در ووکامرس

تنظیم درگاه زرین‌پال در ووکامرس — تصویر 3

برای راه اندازی فنی، مراحل زیر را با دقت دنبال کنید:

  1. نصب افزونه: به پیشخوان وردپرس رفته، از بخش افزونه‌ها > افزودن، عبارت “Zarinpal WooCommerce” را جستجو کنید. افزونه رسمی منتشر شده توسط زرین‌پال را نصب و فعال کنید.
  2. ورود به تنظیمات درگاه: در پیشخوان وردپرس به مسیر ووکامرس > پیکربندی > تب پرداخت‌ها بروید.
  3. فعال‌سازی درگاه: گزینه «زرین‌پال» را پیدا کرده و کلید مقابل آن را روی حالت روشن قرار دهید، سپس روی دکمه مدیریت / تنظیمات کلیک کنید.
  4. وارد کردن مرچنت کد: کد ۳۶ رقمی دریافت شده از پنل زرین‌پال را در فیلد مرچنت کد (Merchant ID) کپی کنید. دقت کنید هیچ فاصله اضافی (Space) قبل یا بعد از کد وجود نداشته باشد.
  5. تنظیم پیام‌های پرداخت: متن پیام‌های پرداخت موفق و ناموفق را شخصی‌سازی کنید. می‌توانید از شورت‌کدهای راهنما مانند {transaction_id} برای نمایش کد پیگیری به کاربر استفاده کنید.

۴. تنظیم صحیح واحد پول (جلوگیری از خطای ۱۰ برابری قیمت)

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

زرین‌پال مبالغ را برپایه ریال به وب‌سرویس بانک ارسال می‌کند. برای حل این موضوع:

  • اگر واحد پول فروشگاه شما در مسیر ووکامرس > پیکربندی > همگانی روی تومان تنظیم شده است، در تنظیمات افزونه زرین‌پال نیز واحد پول را روی تومان بگذارید تا افزونه به‌صورت خودکار قیمت را ضرب‌در ۱۰ کرده و به ریال تبدیل کند.
  • اگر واحد پول اصلی سایت روی ریال است، در افزونه نیز گزینه ریال را انتخاب کنید تا محاسبات بدون تغییر به بانک فرستاده شود.

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

۵. نحوه تست پرداخت در محیط سندباکس (Sandbox)

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

مراحل تست سندباکس:
۱. در تنظیمات افزونه زرین‌پال، گزینه «حالت تست» یا «سندباکس» را فعال کنید.
۲. در بخش مرچنت کد، عبارت ffffffff-ffff-ffff-ffff-ffffffffffff (۳۶ عدد f) یا کد تست اختصاصی سندباکس را وارد کنید.
۳. یک محصول فرضی را به سبد خرید اضافه کرده و مراحل پرداخت را طی کنید.
۴. در صفحه شبیه‌ساز پرداخت زرین‌پال، روی دکمه «پرداخت موفق» کلیک کنید تا برگشت به سایت و تغییر وضعیت سفارش به «در حال انجام» را بررسی کنید.

۶. ۳ نکته حیاتی برای جلوگیری از قطعی و اختلال در پرداخت آنلاین

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

الف) استثنا کردن آدرس Callback از افزونه‌های کش

افزونه‌های کش مانند LiteSpeed Cache یا WP Rocket ممکن است آدرس بازگشت زرین‌پال را کش کنند. این کار باعث می‌شود پاسخ بانک به وردپرس نرسد. حتماً آدرس‌های زیر را در بخش Exclude افزونه کش خود وارد کنید:

/wc-api/WC_Zarinpal/
/?wc-api=WC_Zarinpal

ب) بررسی تداخل با فایروال کلودفلر (Cloudflare)

اگر از کلودفلر یا سیستم‌های ابری استفاده می‌کنید، ممکن است آی‌پی‌های سرور زرین‌پال توسط فایروال بلاک شوند. برای جلوگیری از این مشکل، IPهای رسمی زرین‌پال را در بخش Firewall Rules کلودفلر در لیست مجاز (Allow) قرار دهید.

ج) بهینه‌سازی استایل صفحه تسویه‌حساب

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

۷. راهنمای عیب‌یابی سریع و جدول کد خطاهای معروف زرین‌پال

کد خطاهای زرین‌پال اعداد منفی هستند که علت عدم اتصال یا شکست تراکنش را مشخص می‌کنند.

در جدول زیر رایج‌ترین خطاهای وب‌سرویس زرین‌پال و راه حل عملی آن‌ها آورده شده است:

کد خطا علت خطا راه حل عملی
-9 خطای اعتبار سنجی (Validation) آدرس ایمیل یا شماره موبایل ارسال شده به درگاه معتبر نیست یا فرمت استاندارد ندارد.
-11 مرچنت کد نامعتبر است Merchant ID وارد شده در تنظیمات افزونه اشتباه است یا درگاه شما هنوز در زرین‌پال فعال نشده است.
-21 آی‌پی یا دامنه نامطابق است دامنه‌ای که درخواست از آن ارسال می‌شود با دامنه‌ای که در پنل زرین‌پال ثبت کرده‌اید مغایرت دارد.
-33 مبلغ تراکنش نامعتبر است مبلغ ارسال شده به ریال کمتر از ۱,۰۰۰ تومان (۱۰,۰۰۰ ریال) است یا واحد پول ووکامرس اشتباه تنظیم شده.
cURL 28/60 خطای ارتباط سرور (Time-out/SSL) سرور هاست شما نمی‌تواند به API زرین‌پال متصل شود. به پشتیبانی هاست بپویید ماژول OpenSSL و cURL را به‌روزرسانی کنند.

۸. پرسش‌های متداول

آیا برای استفاده از زرین‌پال حتماً به اینماد (نماد اعتماد الکترونیکی) نیاز داریم؟

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

کارمزد تراکنش‌ها در زرین‌پال چقدر است و چگونه کسر می‌شود؟

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

چرا پس از پرداخت موفق، وضعیت سفارش در ووکامرس تغییر نمی‌کند؟

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

آیا می‌توان از یک مرچنت کد روی چند دامنه‌ی مختلف استفاده کرد؟

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

سوالات متداول

علت خطای ۱۰ برابری قیمت در زرین‌پال چیست؟

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

مرچنت کد (Merchant ID) زرین‌پال را از کجا دریافت کنیم؟

پس از ثبت‌نام و احراز هویت در پنل زرین‌پال، به بخش درگاه‌های پرداخت بروید و کد ۳۶ کاراکتری اختصاصی ایجاد شده برای وب‌سایت خود را کپی کنید.

آیا برای استفاده از درگاه زرین‌پال داشتن اینماد و پرونده مالیاتی الزامی است؟

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

چگونه درگاه زرین‌پال را پیش از فروش واقعی تست کنیم؟

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

Table of Contents

آخرین نوشته‌ها

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

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