refund
متد GetPenalty
این متد جزییات مربوط به جریمه مسافران انتخاب شده را بر می گرداند. و کاربرد آن فقط برای زمانی هست که دلیل استرداد "دلایل شخصی مسافر" بوده باشد. بنابراین برای حالتی که دلیل استرداد "تغییر برنامه پرواز توسط ایرلاین" باشد به دلیل صفر بودن جریمه، این متد کاربرد نخواهد داشت.
API Endpoint
POST https://{SupplierWebsiteUrl}/api/Partners/Flight/Refund/V3/GetPenalty
Request Parameters
CredentialComplex type
required
اطلاعات مربوط به نام کاربری و رمز عبور
Credential.Usernamestring
required
نام کاربری
Credential.Passwordstring
required
رمز عبور به صورت MD5 شده
Pnrstring
required
رفرنس رزروی که می خواهیم اطلاعات مسافران آن را بازیابی کنیم.
SegmentListList(Segment)
required
لیست سگمنت هایی که می خواهیم درصد جریمه کنسلی آنها رو بدست بیاوریم.
SegmentList.TicketNumberstring
required
شماره بلیط مربوط به سگمنت
Sample Request
curl -X POST https://SepehrApiTest.ir/api/Partners/Flight/Refund/V3/GetPenalty \
-H "Content-Type: application/json; charset=utf-8" \
-H "Accept: application/json" \
-H "Accept-Encoding: gzip, deflate" \
-d '{
"Credential": {
"Username": "TestDev1",
"Password": "25f9e794323b453885f5181f1b624d0b"
},
"Pnr": "I6FH3Y",
"SegmentList": [
{
"TicketNumber": "1526941"
},
{
"TicketNumber": "1526942"
},
{
"TicketNumber": "1526943"
}
]
}'
Response Parameters
PassengerListList(Passenger)
لیستی از مسافران به همراه جزییات جریمه هر کدام.
PassengerList.FirstNamestring
نام مسافر
PassengerList.LastNamestring
نام خانوادگی مسافر
PassengerList.AgeTypestring
گروه سنی مسافر. که یکی از موارد زیر را دارد:
Adult
به معنی مسافر بزرگسال
Child
به معنی مسافر کودک
Infant
به معنی مسافر نوزاد
PassengerList.TicketNumberstring
شماره بلیط
PassengerList.Payabledecimal
نرخ ناخالص پرواز (قبل از کسر کمیسیون)
PassengerList.BookingCodedecimal
BookingCode که این مسافر روی آن رزرو شده است. معمولا یک یا دو حرفی است. مثلا Y یا M
PassengerList.FareNamestring
کلاس نرخی که رزرو این مسافر روی آن انجام شده است. مثلا YMHDTHR350
PassengerList.CalculationAuditLogstring
جزییات مربوط به اینکه چگونه جریمه کنسلی محاسبه شده است. کاربرد این فیلد فقط برای debug کردن یا پیگیری مشکلات است.
PassengerList.PenaltyPercentinteger
درصد جریمه
PassengerList.PenaltyAmountThatPassengerShouldPaydecimal
مبلغ جریمه
در واقع مقدار این فیلد، معادل مبلغ درصد جریمه می باشد
PassengerList.OppositeFlightOnewayAndRoundtripPayableDifferencedecimal
در زمانی که
- رزرو دوطرفه بوده باشد
- نرخ ترکیب شده باشد (بدین معنی که به دلیل دوطرفه بودن رزرو، نرخ ارزانتر محاسبه شده باشد)
- درخواست استرداد برای اولین سگمنت پروازی داده باشید
مقدار این فیلد مشخص کننده مقدار تخفیفی است که در زمان رزرو بابت دوطرفه بودن داده شده و حالا از مسافر پس گرفته می شود. در واقع مقدار این فیلد از مبلغ عودتی کسر می گردد.
کاربرد این فیلد جهت مشخص شدن روش محاسبه برای بدست آوردن فیلد AmountThatShouldPayBackToPassenger می باشد و کاربرد اطلاعاتی و آماری دارد.
PassengerList.CurrentFlightOnewayAndRoundtripPayableDifferencedecimal
در زمانی که
- رزرو دوطرفه بوده باشد
- نرخ ترکیب شده باشد (بدین معنی که به دلیل دوطرفه بودن رزرو، نرخ ارزانتر محاسبه شده باشد)
- درخواست استرداد برای دومین سگمنت پروازی داده باشید
مقدار این فیلد مشخص کننده مقدار تخفیفی است که در زمان رزرو بابت دوطرفه بودن داده شده و در زمان استرداد اولین سگمنت از مبلغ عودتی کسر شده و حالا به مسافر پس داده می شود. در واقع مقدار این فیلد به مبلغ عودتی اضافه می گردد.
کاربرد این فیلد جهت مشخص شدن روش محاسبه برای بدست آوردن فیلد AmountThatShouldPayBackToPassenger می باشد و کاربرد اطلاعاتی و آماری دارد.
PassengerList.AmountThatShouldPayBackToPassengerdecimal
مبلغ عودتی به مسافر.
Sample Response
{
"PassengerList": [
{
"FirstName": "ABED",
"LastName": "BAGHERI YEKTA",
"AgeType": "Adult",
"TicketNumber": "1526941",
"Payable": 650000,
"BookingCode": "I",
"FareName": "YYYY8",
"CalculationAuditLog": "Flight No: 5858\r\nFlight Date: 2022-06-28 11:00\r\nRequest Date: 2022-06-19 22:09 (flight origin local time)\r\ntotalMinutesUntilFlight: 12290\r\ntotalMinutesAfterReservation: 0\r\nCancelationPolicyId: 396\r\nafterReservationPenaltyTimePassed: 15\r\nafterReservationPenaltyPercent: 0\r\n\r\n",
"PenaltyPercent": 0,
"PenaltyAmountThatPassengerShouldPay": 0,
"OppositeFlightOnewayAndRoundtripPayableDifference": 0,
"CurrentFlightOnewayAndRoundtripPayableDifference": 0,
"AmountThatShouldPayBackToPassenger": 630500
},
{
"FirstName": "YASER",
"LastName": "OVEYSI",
"AgeType": "Child",
"TicketNumber": "1526942",
"Payable": 650000,
"BookingCode": "I",
"FareName": "YYYY8",
"CalculationAuditLog": "Flight No: 5858\r\nFlight Date: 2022-06-28 11:00\r\nRequest Date: 2022-06-19 22:09 (flight origin local time)\r\ntotalMinutesUntilFlight: 12290\r\ntotalMinutesAfterReservation: 0\r\nCancelationPolicyId: 396\r\nafterReservationPenaltyTimePassed: 15\r\nafterReservationPenaltyPercent: 0\r\n\r\n",
"PenaltyPercent": 0,
"PenaltyAmountThatPassengerShouldPay": 0,
"OppositeFlightOnewayAndRoundtripPayableDifference": 0,
"CurrentFlightOnewayAndRoundtripPayableDifference": 0,
"AmountThatShouldPayBackToPassenger": 630500
},
{
"FirstName": "SHOHREH",
"LastName": "ABEDIN",
"AgeType": "Infant",
"TicketNumber": "1526943",
"Payable": 200000,
"BookingCode": "I",
"FareName": "YYYY8",
"CalculationAuditLog": "Infant penalty is 0",
"PenaltyPercent": 0,
"PenaltyAmountThatPassengerShouldPay": 0,
"OppositeFlightOnewayAndRoundtripPayableDifference": 0,
"CurrentFlightOnewayAndRoundtripPayableDifference": 0,
"AmountThatShouldPayBackToPassenger": 194000
}
],
"IsNoShow": false
}
Response common exceptions
در جدول زیر لیستی از خطاهایی که ممکن است بعد از فراخوانی این متد برگشت داده شود، فهرست شده است.
| ExceptionType | توضیح خطا |
|---|---|
| Error1008-PenaltyIsNotDefinedException | جریمه توسط تامین کننده تعریف نشده است و رزرو را فقط به صورت تلفنی می توان کنسل نمود |
| Error1017-TicketNumberNotFound | شماره بلیت در رفرنس ارسال شده پیدا نشد. این خطا معمولا زمانی اتفاق می افتد که یا شما شماره بلیت اشتباهی را ارسال کرده باشید یا رزرو در سایت تامین کننده قبلا استرداد شده باشد. |
| Exception | خطای نامشخص. جهت دریافت اطلاعات بیشتر باید به ErrorMessage داخل json برگشتی مراجعه نمود. |