متد استرداد وجه به شما این امکان را میدهد که در صورت تغییر یا لغو سفارش مشتریان، واریزیهای اشتباه یا هرگونه الزامی جهت بازگرداندن وجه به خریدار، تمام مبلغ واریز شده یا حتی بخشی از آن را به صورت آنی یا در سیکلهای پایا، به حساب آنها واریز نمایید.
در این متد، پارامترهای زیر به API ارسال میشود:
نام | نوع | اجباری | شرح |
---|---|---|---|
session_id | String | بله | شماره تراکنش |
amount | Integer | بله | مبلغ ریال (حداقل مبلغ قابل استرداد ۲۰۰۰۰ ریال) |
description | String | بله | توضیح علت استرداد وجه |
method | String | بله | متد استرداد وجه (CARD یا PAYA) |
reason | String | بله | دلیل استرداد (CUSTOMER_REQUEST و غیره) |
در صورت موفقیت، اطلاعات زیر از API دریافت میشود:
نام | نوع | شرح |
---|---|---|
id | String | شماره تراکنش |
terminal_id | String | شماره ترمینال درگاه |
amount | Integer | مبلغ پرداخت شده به ریال |
timeline | Object | تاریخچه تراکنش |
refund_amount | Integer | مبلغ استرداد |
refund_time | String | تاریخ ثبت استرداد |
refund_status | String | وضعیت استرداد |
در ادامه نمونهای از پیادهسازی متد استرداد وجه در Python آمده است:
from zarinpal import ZarinPal
from utils.Config import Config
def process_refund():
try:
config = Config(
access_token= "Your Token",
)
zarinpal = ZarinPal(config)
refund_response = zarinpal.refunds.create({
"session_id": "Your Session_Id",
"amount": 0, #Amount
"description": "Refund for order #1234",
"method": "PAYA",
"reason": "CUSTOMER_REQUEST",
})
print("Refund Created:", refund_response)
except Exception as e:
print("Error processing refund:", str(e))
if __name__ == "__main__":
process_refund()