#P1796
POST /b2c/v1/online/{type}/refund
Refund Request Operation
این اندپوینت جهت ثبت و پردازش عملیات درخواست استرداد (Refund) برای بلیط یا رزرو آنلاین ایجاد شده است. پس از ارسال اطلاعات رزرو، توضیحات کاربر و مشخصات شعبه، فرآیند استرداد از طریق سرویس اصلی BaseService::refundItemProgress اجرا میشود. پاسخ شامل اطلاعات تراکنش استرداد و وضعیت نهایی عملیات خواهد بود.
Refund Item Progress
URL:
/b2c/v1/online/{type}/refundMethod: POST
Controller:
V1OnlineController@refundItemProgressAuth: Public (No Authentication Required)
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| {type} | String | نوع سرویس آنلاین که قرار است فرایند استرداد برای آن انجام شود — یکی از aircraft، train یا accommodation. |
Request Body Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| data | Object / Array | ✅ | اطلاعات رزرو، شامل شماره بلیط، شناسه رزرو، مشخصات سرویس و دادههای ارائهدهنده. |
| description | String | ☑️ | توضیحات متنی برای علت درخواست استرداد؛ توسط کاربر یا شعبه ارائه میشود. |
| branch | Integer | ✅ | شناسه شعبهی درخواستدهنده که از قوانین داخلی برای محاسبه استرداد استفاده میکند. |
Response Structure
| Key | Description |
|---|---|
| items | نتایج بازگشتی از تابع BaseService::refundItemProgress شامل جزئیات استرداد، کد رهگیری و وضعیت مالی. |
| meta.timestamp | زمان لحظه ثبت پاسخ (Unix Timestamp). |
Example Response — Success
{
"items": {
"reference": "RFD-83234",
"status": "accepted",
"refund_amount": 1200000,
"currency": "IRR",
"provider": "Mahan Airlines",
"description": "لغو پرواز توسط مسافر",
"processed_at": "2025-12-09T17:40:22Z"
},
"meta": {
"timestamp": 1733739622
}
}
Example Response — Error (400)
{
"status": false,
"time": 1733739622,
"error": {
"code": 1002,
"message": "Refund process failed: invalid ticket reference",
"trace": [ ... ]
},
"support": {
"phone": "021-91016838 in 121",
"email": "ict@airplus.app",
"panel": "helpdesk.airplus.app"
}
}
Technical Logic
Request: includes
data, description, and branch↓
Initialize BaseService
$BaseService = new \App\Lib\BaseService()↓
Call refundItemProgress()
$BaseService->refundItemProgress($request->data, $request->description, $request->get('branch'))↓
Return JSON Result
شامل دادههای استرداد، مبلغ بازگشتی و وضعیت نهایی.
شامل دادههای استرداد، مبلغ بازگشتی و وضعیت نهایی.
↓
در صورت خطا → ارسال پاسخ خطایی حاوی کد
1002 و اطلاعات تماس پشتیبانی.