ریورس تراکنش

از این متد برای برگشت (Reverse) یک تراکنش موفق استفاده می‌شود. پس از Verify موفق، حداکثر تا ۱۵ دقیقه می‌توانید تراکنش را بدون کارمزد ریورس کنید. اگر بیش از ۱۵ دقیقه از تایید گذشته باشد، امکان ریورس وجود ندارد و باید از مسیرهای پشتیبانی / تسویه برای پیگیری استفاده شود.

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

آدرس وب‌سرویس

POST

https://payment.finopal.ir/api/v1/payment/reverse

اطلاعات ورودی

نام نوع الزام توضیحات
merchant_id String بله کد اختصاصی پذیرنده (درگاه)
authority String بله شناسه یکتای تراکنش (Authority) که قصد برگشت آن را دارید

نمونه درخواست (curl)

Bash

curl -X POST \
  https://payment.finopal.ir/api/v1/payment/reverse \
  -H 'accept: application/json' \
  -H 'content-type: application/json' \
  -d '{
  "merchant_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "authority": "FP_636E4A5CBBCE0F222B46829BD74AB4A9"
}'

اطلاعات خروجی

نام نوع توضیحات
success Boolean نتیجه کلی عملیات (true یا false)
message String پیام توضیحی نتیجه
code Integer در خطاها ممکن است برگردانده شود (مثلاً -1551 یا -1552)

نمونه پاسخ موفق

JSON

{
  "success": true,
  "message": "تراکنش با موفقیت برگشت داده شد"
}

خطاهای متداول

در صورت عدم موفقیت، پاسخ مشابه نمونه‌های زیر خواهد بود:

تراکنش یافت نشد

JSON

{
  "success": false,
  "message": "تراکنش یافت نشد"
}

عدم تطابق merchant_id

JSON

{
  "success": false,
  "message": "عدم تطابق merchant_id"
}

تراکنش تایید نشده / اتمام مهلت ۱۵ دقیقه

JSON

{
  "success": false,
  "message": "زمان مجاز برای برگشت تراکنش (15 دقیقه) سپری شده است",
  "code": -1552
}

قبلاً برگشت داده شده

JSON

{
  "success": false,
  "message": "تراکنش قبلاً برگشت داده شده است",
  "code": -1551
}
کد توضیح
-1551 تراکنش قبلاً برگشت داده شده است
-1552 تراکنش Verify نشده یا مهلت ۱۵ دقیقه‌ای ریورس تمام شده است

برای مشاهده لیست کامل خطاها به لیست کدهای خطا مراجعه کنید.

نکات مهم

  • ریورس فقط روی تراکنش Verify شده قابل اجراست.
  • مهلت انجام ریورس از زمان آخرین به‌روزرسانی تراکنش (Verify) حداکثر ۱۵ دقیقه است.
  • پس از موفقیت، وضعیت تراکنش به refunded تغییر می‌کند و تکرار درخواست خطا می‌دهد.
  • merchant_id باید با پذیرنده مالک همان authority مطابقت داشته باشد.