مستندات فیکپال
راهنمای استفاده از API فیکپال برای شبیهسازی و تست فرآیند های پرداخت
اعتبار سنجی
برای استفاده از این متد، باید ابتدا در صفحه بازگشت، با استفاده از متد verify اطلاعات ارسالی را چک کرده و در صورت
موفق
بودن پرداخت، آن را ثبت و شماره تراکنش را به کاربر نمایش دهید. در غیر اینصورت موظف هستید بـا توجه به كد خطایی كه توسط
متد verify دریافت میكنید كاربر را از خطای رخ داده مطلع سازید.
در این مرحله اگر مقدار پارامتر code برابر 100 باشد به معنای موفق بودن تراکنش است و میتوانید با پارامتر ref_id
شماره تراکنش را به کاربر نمایش دهد.
undefined/payment/verifyدرخواست:
{
"merchant_id": "undefined",
"amount": 1020000,
"authority": "A0000000000000000000000000000xkt1ns2"
}
| نام | نوع | الزام | توضیحات |
|---|---|---|---|
| merchant_id | String | بله | كد ۳۶ كاراكتری اختصاصی پذیرنده |
| amount | Integer | بله | مبلغ تراكنش (ریال) |
| authority | String | بله | كد یكتای شناسه مرجع درخواست. |
پاسخ:
{
"data": {
"code": 100,
"message": "Paid",
"card_hash": "0FA2D96973C6C84C3AEEE5B533EB96E7E7302B8E5CD0D12EE6FCBB1BB54FE78E",
"card_pan": "123412******0323",
"ref_id": 23031121,
"fee_type": "Merchant",
"fee": 0
},
"errors": []
}
| نام | نوع | توضیحات |
|---|---|---|
| code | Integer | عددی كه نشان دهنده موفق بودن یا موفق نبودن پرداخت است. |
| ref_id | Integer | در صورتی كه پرداخت موفق باشد، شماره تراكنش پرداخت انجام شده را بر میگرداند. |
| card_pan | String | شماره کارت به صورت Mask |
| card_hash | String | هش کارت به صورت SHA256 |
| fee_type | String | پرداخت کننده کارمزد: که در پنل کاربری میان خریدار یا خود پذیرنده قابل انتخاب است. |
| fee | Integer | کارمزد |
در صورت موفقیت تراکنش:
اولین بار که verify را فراخوانی میکنید: کد 100 با پیام Paid برمیگردد.
دفعات بعدی (برای همان تراکنش): کد 101 با پیام Verified برمیگردد.
کد 101 یعنی تراکنش قبلاً با موفقیت تأیید شده است.
نکته مهم: هر دو کد 100 و 101 نشاندهنده تراکنش موفق هستند.
خطاها:
اگر هر یک از مقادیر merchant_id، amount یا authority با تراکنش ثبتشده مطابقت نداشته باشد (برای مثال پرداخت انجام نشده یا ناموفق بوده است)، پاسخ با کد وضعیت 404 بازگردانده میشود:
{
"message": "Transaction Not Found"
}
همچنین در صورت نامعتبر بودن ساختار درخواست، پاسخ 400 با پیام Validation error و آرایه errors دریافت خواهید کرد.