# پرداخت با کارت مشخص

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

اطلاعات ارسالی

نام نوع الزام توضیحات
merchant_id String بله كد 36 كاراكتري اختصاصي پذيرنده
amount Integer بله مبلغ تراكنش به (ریال)
description String بله توضیحات مربوط به تراکنش
callback_url String بله صفحه بازگشت مشتري، پس از انجام عمل پرداخت
metadata Array
mobile String خیر شماره تماس خریدار
email String خیر ایمیل خریدار
card_pan Integer خیر شماره کارت پرداخت کننده

مقادیری كه توسط متد verify برگشت داده می‌شود به شرح زیر است:

نام نوع توضیحات
code Integer عددي كه نشان دهنده موفق بودن يا عدم موفق بودن پرداخت ميباشد.
ref_id Integer در صورتي كه پرداخت موفق باشد؛ شماره تراكنش پرداخت انجام شده را بر ميگرداند.
card_pan String شماره کارت به صورت Mask
card_hash String هش کارت به صورت SHA256
fee_type String پرداخت کننده کارمزد که در پنل قابل انتخاب است کاربر و یا خود پذیرنده
fee Integer کارمزد

مثال:

  • نمونه درخواست
  • درخواست
  • پاسخ
curl -X POST \
  https://api.zarinpal.com/pg/v4/payment/request.json \
  -H 'accept: application/json' \
  -H 'content-type: application/json' \
  -d '{
  "merchant_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "amount": 10000,
  "callback_url": "http://yoursite.com/verify",
  "description": "پرداخت تست ۱۱۰",
  "metadata": {"mobile": "09121234567","email": "info.test@gmail.com", "card_pan":"5022291083818920",}
}'

نمونه کد وریفای

  • درخواست
  • پاسخ
curl -X POST \
  https://api.zarinpal.com/pg/v4/payment/verify.json \
  -H 'accept: application/json' \
  -H 'content-type: application/json' \
  -d '{
  "merchant_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "amount": 10000,
  "authority": "A0000000000000000000000000000wwOGYpd"
}'

# ذخیره کارت در درگاه

در مرحله‌ای که کاربر قصد پرداخت اینترنتی برای یک کالا یا خدمات را دارد و به درگاه پرداخت متصل می‌شود، نیاز است تا اطلاعات کارت بانکی خود را وارد نماید که این اطلاعات شامل شماره‌ی ۱۶ رقمی، کد CVV2 و تاریخ انقضا (ماه / سال) درج شده روی کارت بانکی فرد است. پس از وارد کردن اطلاعات اصلی، نیاز است تا کد امنیتی که در همین صفحه به او نمایش داده می‌شود را نیز وارد نماید تا بتواند رمز پویا را از طریق پیامک بانکی دریافت کند و پرداخت خود را ثبتِ نهایی کند.

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

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

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

به نوع داده ها و نام فیلد توجه کنید.

نکته : تمامی داده های برگشتی از زرین‌پال به صورت json می باشد

نام نوع الزام توضیحات
merchant_id String بله كد 36 كاراكتري اختصاصي پذيرنده
amount Integer بله مبلغ تراكنش به (ریال)
description String بله توضیحات مربوط به تراکنش
callback_url String بله صفحه بازگشت مشتري، پس از انجام عمل پرداخت
metadata Array دارای مقدار های mobile و email
mobile String خیر شماره تماس خریدار
email String خیر ایمیل خریدار
https://api.zarinpal.com/pg/v4/payment/request.json
  • نمونه درخواست
  • درخواست
  • پاسخ
curl -X POST \
  https://api.zarinpal.com/pg/v4/payment/request.json \
  -H 'accept: application/json' \
  -H 'content-type: application/json' \
  -d '{
  "merchant_id": "1344b5d4-0048-11e8-94db-005056a205be",
  "amount": 10000,
  "callback_url": "http://yoursite.com/verify",
  "description": "افزایش اعتبار کاربر شماره ۱۱۳۴۶۲۹",
  "metadata": {"mobile": "09121234567","email": "info.test@gmail.com"}
}'

تمام مراحل دیگر مانند بخش راهنمای اتصال می باشد .