استرداد

متد GetPenalty

این متد جزییات مربوط به جریمه مسافران انتخاب شده را بر می گرداند. و کاربرد آن فقط برای زمانی هست که دلیل استرداد “دلایل شخصی مسافر” بوده باشد. بنابراین برای حالتی که دلیل استرداد “تغییر برنامه پرواز توسط ایرلاین” باشد به دلیل صفر بودن جریمه، این متد کاربرد نخواهد داشت.

API Endpoint
https://{SupplierWebsiteUrl}/api/Partners/Flight/Refund/V3/GetPenalty post
Request Parameters

نمونه کلاس Request به زبان سی شارپ در پروژه Partners.Contracts (دانلود) در پوشه زیر موجود است:

\Flight\Refund\V3\GetPenalty\RequestModel

Credential

Complex type

required

اطلاعات مربوط به نام کاربری و رمز عبور

Username

string

required

نام کاربری

Password

string

required

رمز عبور به صورت MD5 شده

Pnr

string

required

رفرنس رزروی که می خواهیم اطلاعات مسافران آن را بازیابی کنیم.

SegmentList

List(Segment)

required

لیست سگمنت هایی که می خواهیم درصد جریمه کنسلی آنها رو بدست بیاوریم.

TicketNumber

string

required

شماره بلیط مربوط به سگمنت

Sample Request
{
  "Credential": {
    "Username": "TestDev1",
    "Password": "25f9e794323b453885f5181f1b624d0b"
  },
  "Pnr": "I6FH3Y",
  "SegmentList": [
    {
      "TicketNumber": "1526941"
    },
    {
      "TicketNumber": "1526942"
    },
    {
      "TicketNumber": "1526943"
    }
  ]
}	
Response Data

نمونه کلاس Response به زبان سی شارپ در پروژه Partners.Contracts (دانلود) در پوشه زیر موجود است:

\Flight\Refund\V3\GetPenalty\ResponseModel

PassengerList

List(Passenger)

لیستی از مسافران به همراه جزییات جریمه هر کدام.

FirstName

string

نام مسافر

LastName

string

نام خانوادگی مسافر

AgeType

string

گروه سنی مسافر. که یکی از موارد زیر را دارد:

Adult به معنی مسافر بزرگسال
Child به معنی مسافر کودک
Infant به معنی مسافر نوزاد

TicketNumber

string

شماره بلیط

Payable

decimal

نرخ ناخالص پرواز (قبل از کسر کمیسیون)

BookingCode

decimal

BookingCode که این مسافر روی آن رزرو شده است. معمولا یک یا دو حرفی است. مثلا Y یا M

FareName

string

کلاس نرخی که رزرو این مسافر روی آن انجام شده است. مثلا YMHDTHR350

CalculationAuditLog

string

جزییات مربوط به اینکه چگونه جریمه کنسلی محاسبه شده است. کاربرد این فیلد فقط برای debug کردن یا پیگیری مشکلات است.

PenaltyPercent

integer

درصد جریمه

PenaltyAmountThatPassengerShouldPay

decimal

مبلغ جریمه

در واقع مقدار این فیلد، معادل مبغلی درصد جریمه می باشد

OppositeFlightOnewayAndRoundtripPayableDifference

decimal

در زمانی که

  • رزرو دوطرفه بوده باشد
  • نرخ ترکیب شده باشد (بدین معنی که به دلیل دوطرفه بودن رزرو، نرخ ارزانتر محاسبه شده باشد)
  • درخواست استرداد برای اولین سگمنت پروازی داده باشید

مقدار این فیلد مشخص کننده مقدار تخفیفی است که در زمان رزرو بابت دوطرفه بودن داده شده و حالا از مسافر پس گرفته می شود. در واقع مقدار این فیلد از مبلغ عودتی کسر می گردد.

 

کاربرد این فیلد جهت مشخص شدن روش محاسبه برای بدست آوردن فیلد AmountThatShouldPayBackToPassenger می باشد و کاربرد اطلاعاتی و آماری دارد.

CurrentFlightOnewayAndRoundtripPayableDifference

decimal

در زمانی که

  • رزرو دوطرفه بوده باشد
  • نرخ ترکیب شده باشد (بدین معنی که به دلیل دوطرفه بودن رزرو، نرخ ارزانتر محاسبه شده باشد)
  • درخواست استرداد برای دومین سگمنت پروازی داده باشید

مقدار این فیلد مشخص کننده مقدار تخفیفی است که در زمان رزرو بابت دوطرفه بودن داده شده و در زمان استرداد اولین سگمنت از مبلغ عودتی کسر شده و حالا به مسافر پس داده می شود. در واقع مقدار این فیلد به مبلغ عودتی اضافه می گردد.

 

کاربرد این فیلد جهت مشخص شدن روش محاسبه برای بدست آوردن فیلد AmountThatShouldPayBackToPassenger می باشد و کاربرد اطلاعاتی و آماری دارد.

AmountThatShouldPayBackToPassenger

decimal

مبلغ عودتی به مسافر.

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 برگشتی مراجعه نمود.