UnoPayv1.0.0
  1. خانه
  2. ماتریس مقایسه

مرجع

درگاه‌ها

یازده درگاه پرداخت اینترنتی ایران، رندرشده از یک فایل داده واحد که ماتریس مقایسه در docs/README.md پکیج SDK را بازمی‌تاباند. هر ستون را می‌توانید مرتب کنید؛ برای جزئیات کامل یک ردیف را انتخاب کنید.

نکته

این ماتریس از 4a04be5 در مخزن SDK منتقل شده است. برای هر مقدار ستون‌ها، همان فایل داده مبناست؛ متن صفحات هیچ‌جا آن را تکرار نمی‌کند.

یازده درگاه، از ماتریس مقایسه در docs/README.md بسته SDK
درگاهنوعپروتکلواحد پولریدایرکت به درگاهمتد کال‌بکسندباکسوضعیت در SDK
زرین‌پال · ZarinPalپرداخت‌یارREST (JSON)ریال (IRR)، تومانGET به StartPay/{authority}GET، کوئری‌استرینگبلهپشتیبانی‌شده
آیدی‌پی · IDPayپرداخت‌یارREST (JSON)ریال (IRR)GET به لینک اختصاصیPOST، GET اختیاریبلهبرنامه‌ریزی‌شده
به‌پرداخت ملت · Behpardakht Mellatشاپرک / PSP بانکیSOAP 1.1 (WSDL)ریال (IRR)فرم POST با RefIdفرم POSTخیربرنامه‌ریزی‌شده
سامان کیش · Saman SEPشاپرک / PSP بانکیREST / SOAP، مبتنی بر توکنریال (IRR)فرم POST با Tokenفرم POSTخیربرنامه‌ریزی‌شده
سداد بانک ملی · Sadad Melliشاپرک / PSP بانکیREST / SOAPریال (IRR)فرم POST یا توکنفرم POSTخیرفقط سند
تجارت الکترونیک پارسیان · Parsian PECشاپرک / PSP بانکیSOAP / توکن RESTریال (IRR)فرم POSTفرم POSTخیرفقط سند
پرداخت الکترونیک پاسارگاد · Pasargad PEPشاپرک / PSP بانکیREST / ریدایرکتریال (IRR)POST یا GETفرم POSTخیرفقط سند
آسان پرداخت · Asan Pardakhtشاپرک / PSP بانکیREST / SOAPریال (IRR)فرم POSTفرم POSTخیرفقط سند
پرداخت نوین آرین · Pardakht Novinشاپرک / PSP بانکیREST / SOAPریال (IRR)فرم POSTفرم POSTخیرفقط سند
ایران‌کیش · IranKishشاپرک / PSP بانکیREST / SOAPریال (IRR)فرم POSTفرم POSTخیرفقط سند
سیزپی · SizPayپرداخت‌یارREST (JSON)ریال (IRR)فرم POST یا لینکPOSTبلهفقط سند

جزئیات هر درگاه

گزینه‌های پیکربندی، ویژگی‌های خاص پروتکل، و پیوند به مشخصات اصلی. UnoPay اسناد بانکی را بازنویسی نمی‌کند — در کامیتی پین‌شده به آن‌ها پیوند می‌دهد تا منبع حقیقت همان‌جا بماند که بانک گذاشته است.

زرین‌پال · ZarinPalپشتیبانی‌شده
فیلدمقدار
نوعپرداخت‌یار
پروتکلREST (JSON)
واحد پولریال (IRR)، تومان
ریدایرکت به درگاهGET به StartPay/{authority}
متد کال‌بکGET، کوئری‌استرینگ
سندباکسسندباکس تولید در sandbox.zarinpal.com
آداپتورZarinpalAdapter

گزینه‌های پیکربندی

  • merchantId — رشته، الزامی. شناسه پذیرنده زرین‌پال.
  • sandbox — بولی، اختیاری. با true نشانی sandbox.zarinpal.com انتخاب می‌شود.
  • logger — PaymentLogger، اختیاری. در کانفیگ پذیرفته می‌شود اما به مسیر درخواست متصل نیست.

نکات خاص

  • توکن آتوریتی ۳۶ کاراکتر دارد. آتوریتی سندباکس با S و آتوریتی پروداکشن با A شروع می‌شود.
  • متد وریفای بار اول کد 100 و در فراخوانی مجدد همان آتوریتی کد 101 برمی‌گرداند. UnoPay هر دو را موفق می‌داند، بنابراین کال‌بک تکراری بی‌خطر است.
  • کال‌بک به‌صورت GET با پارامترهای Authority و Status ارسال می‌شود که Status برابر OK یا NOK است. UnoPay ابتدا Authority را از کوئری و سپس از بدنه می‌خواند.
  • آداپتور در کال‌بک به amount عددی نیاز دارد. اگر درگاه مبلغ را به ریال ارسال کند ولی شما تومان فرستاده باشید، اعتبارسنجی پیش از فراخوانی شبکه با خطای VALIDATION_ERROR متوقف می‌شود.
  • فیلد metadata از PaymentRequest به‌صورت یک آبجکت سطح‌بالا به زرین‌پال ارسال می‌شود. نسخه ۴ زرین‌پال فیلدهای ناشناخته را نادیده می‌گیرد، پس بی‌خطر است اما بر تسویه اثری ندارد.
  • مقدار description از metadata.description خوانده می‌شود و در نبود آن به رشته ثابت "Payment" برمی‌گردد.

مشخصات کلیدی

UnoPay این اسناد را بازنویسی نمی‌کند

3 فایل در مخزن SDK

نحوه استفاده

integration.tsts
import { UnoPay, ZarinpalAdapter } from 'unopay';

const unopay = new UnoPay({
  zarinpaladapter: new ZarinpalAdapter({
    merchantId: process.env.ZARINPAL_MERCHANT_ID!,
    sandbox: process.env.NODE_ENV !== 'production',
  }),
});

await unopay.createPayment('zarinpal', request);

دو مجموعه سند دیگر بدون ردیف در ماتریس

درخت docs/ پکیج سیزده پوشه دارد، اما ماتریس مقایسه یازده ردیف. این دو مجموعه سند در مخزن هستند ولی ردیفی در ماتریس ندارند — به‌جای حذف خاموش، اینجا ثبت شده‌اند.

درگاهفایل در مخزن SDKوضعیت در SDK
فن‌آوا کارت · Fanava Cardfanava/FanavaFCPDoc.pdfردیفی در ماتریس ندارد
بانک سرمایه · Sarmayeh Banksarmayeh/sarmayeh-payment-gateway-manual.pdfردیفی در ماتریس ندارد