# Refunds

{% hint style="info" %}
💬 **Need help?** If you're stuck, ask Eva on ATRIP for instant diagnostics.

<a href="https://www.atriptech.com/" class="button primary" data-icon="comments">Ask Eva</a>
{% endhint %}

## Refund Quotation

> \*\*Dependency\*\*\
> No preceding function needs to be carried out.\
> \
> \> ### Introduction\
> \> The Refund section includes a series of steps required for refunds, including requesting a refund quote, submitting the refund, and returning the refund status and results. This service supports the submission of requests for cancellation that require Atlas to process or for refunds that need to be executed by Atlas. It also allows a variety of cancellation and refund types, including voluntary, involuntary and void, etc.\
> \> ### Features\
> \>   - Refund reason: Voluntary, Involuntary, Void\
> \>   - Service Level:\
> \>      \&#9702; Our refund quotations fall into three scenarios:\
> \>        a. We can obtain an accurate quotation from the airline and will quote it directly to you;\
> \>        b. We cannot obtain an accurate quotation through the airline. You can still submit the refund request, then we will process the refund, but the refund amount will be based on the actual amount refunded by the airline;\
> \>        c. Unrefundable\
> \>      \&#9702; Our refund service includes the below steps,\
> \>        a. Atlas submits the refund request to the airline: We provide a service time guarantee;\
> \>        b. Airline processes the refund request and responds with the result, and airline executes the refund. The duration for 2 steps depends on the airline's processing speed, and we will provide an estimated reference time based on our experience in handling such cases.\
> \> \
> \> Please note the below while initiating a refund transaction.\
> \>   1. \*\*Refund of either inbound or outbound sector\*\*: The full ticket needs to be refunded. Only outbound OR inbound sector cannot be refunded. Please contact the airline for the same.\
> \>   2. \*\*Refund for a partially used itinerary\*\*: Partially used itinerary cannot be refunded. Please contact the airline for the same.\
> \>   3. \*\*Refund for a specific passenger\*\*: We support the refund of a specific passenger in an itinerary. For example, if there are 3 passengers and only one of them is to be refunded, please send us your refund request.\
> \>   4. Apart from voluntary, involuntary and void, we currently do not support other types of refunds, such as medical or death refunds. Please contact customer service for manual assistance.\
> \>   5. The customer is responsible to check whether the traveler has already made ancillary purchase in the transaction.\
> \>   6. No email notifications will be sent for refunds rejected by Atlas.\
> \
> \*\*Endpoint:\*\*\
> <https://sandbox.atriptech.com/refundQuotation.do>

```json
{"openapi":"3.0.1","info":{"title":"Default module","version":"1.0.0"},"tags":[{"name":"Refund"}],"security":[],"paths":{"/refundQuotation.do":{"post":{"summary":"Refund Quotation","deprecated":false,"description":"**Dependency**\nNo preceding function needs to be carried out.\n\n> ### Introduction\n> The Refund section includes a series of steps required for refunds, including requesting a refund quote, submitting the refund, and returning the refund status and results. This service supports the submission of requests for cancellation that require Atlas to process or for refunds that need to be executed by Atlas. It also allows a variety of cancellation and refund types, including voluntary, involuntary and void, etc.\n> ### Features\n>   - Refund reason: Voluntary, Involuntary, Void\n>   - Service Level:\n>      &#9702; Our refund quotations fall into three scenarios:\n>        a. We can obtain an accurate quotation from the airline and will quote it directly to you;\n>        b. We cannot obtain an accurate quotation through the airline. You can still submit the refund request, then we will process the refund, but the refund amount will be based on the actual amount refunded by the airline;\n>        c. Unrefundable\n>      &#9702; Our refund service includes the below steps,\n>        a. Atlas submits the refund request to the airline: We provide a service time guarantee;\n>        b. Airline processes the refund request and responds with the result, and airline executes the refund. The duration for 2 steps depends on the airline's processing speed, and we will provide an estimated reference time based on our experience in handling such cases.\n> \n> Please note the below while initiating a refund transaction.\n>   1. **Refund of either inbound or outbound sector**: The full ticket needs to be refunded. Only outbound OR inbound sector cannot be refunded. Please contact the airline for the same.\n>   2. **Refund for a partially used itinerary**: Partially used itinerary cannot be refunded. Please contact the airline for the same.\n>   3. **Refund for a specific passenger**: We support the refund of a specific passenger in an itinerary. For example, if there are 3 passengers and only one of them is to be refunded, please send us your refund request.\n>   4. Apart from voluntary, involuntary and void, we currently do not support other types of refunds, such as medical or death refunds. Please contact customer service for manual assistance.\n>   5. The customer is responsible to check whether the traveler has already made ancillary purchase in the transaction.\n>   6. No email notifications will be sent for refunds rejected by Atlas.\n\n**Endpoint:**\nhttps://sandbox.atriptech.com/refundQuotation.do","tags":["Refund"],"parameters":[{"name":"Accept","in":"header","description":"","required":true,"schema":{"type":"string"}},{"name":"Content-Type","in":"header","description":"","required":true,"schema":{"type":"string"}},{"name":"Accept-Encoding","in":"header","description":"","required":true,"schema":{"type":"string","default":"gzip"}},{"name":"x-atlas-client-id","in":"header","description":"","required":true,"schema":{"type":"string","default":"<YOUR_CLIENT_ID>"}},{"name":"x-atlas-client-secret","in":"header","description":"","required":true,"schema":{"type":"string","default":"<YOUR_CLIENT_SECRET>"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"orderNo":{"type":"string","description":"Atlas original order number.  You can choose to request either orderNo or both airlinePNR and carrier. If you use `orderNo`, the `airlinePNR` and `carrier` fields may be null.","nullable":true},"airlinePNR":{"type":"string","description":"The record locator of the airline. You can choose to request either orderNo or both airlinePNR and carrier. If you use `airlinePNR` and `carrier`, the `orderNo`  field may be null.","nullable":true},"carrier":{"type":"string","description":"2 character IATA airline code. you can choose to request either orderNo or both airlinePNR and carrier. If you use `airlinePNR` and `carrier`, the `orderNo`  field may be null.","nullable":true},"refundRequestList":{"type":"array","items":{"$ref":"#/components/schemas/RefundPaxSegments"}}},"required":["orderNo","airlinePNR","carrier","refundRequestList"]}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"integer","description":"Status code. 0 for Success, 2 for System error.","enum":[0,2]},"msg":{"type":"string","description":"Error message\nThe ‘msg’ element is for description of the results. Please do not use this field to check the success or failure of the request. Only use the ‘status’ code to check the result.","nullable":true},"fastConfirmation":{"type":"integer","description":"Fast confirmation depends on whether the airline supports auto fulfillment.\n0 for False, 1 for True.","enum":[0,1]},"expectedConfirmationDate":{"type":"string","description":"Expected date of getting airline refund confirmation. The format is `yyyyMMdd`."},"expectedRefundDate":{"type":"string","description":"Expected date of getting refund. The format is `yyyyMMdd`."},"refundQuoteType":{"type":"string","description":"Type of refund quote:\n- AccurateQuote：quotation based on the calculated amount.\n- CannotQuote: quotation is unknown and will be according to the airline's rates","enum":["AccurateQuote","CannotQuote"]},"refundOfferId":{"type":"string","description":"Refund offer id for this quotation which can be used for the coming refund call."},"refundMethod":{"type":"string","description":"Refund method: CashBackToOriginalPayment or Voucher.\n- CashBackToOriginalPayment: Refund cash back to the original form of payment.\n- Voucher: Refund in the form of a voucher.","enum":["CashBackToOriginalPayment","Voucher"]},"refundTickets":{"type":"array","items":{"$ref":"#/components/schemas/RefundTicket"},"description":"The refund calculation for each of the passengers whose refund quote has been requested"},"refundFareAmount":{"$ref":"#/components/schemas/RefundFareAmount","description":"If `refundMethod` is CashBackToOriginalPayment, the `refundFareAmount` field is not null and the `refundVouchers` is null.","nullable":true},"refundPostTicketingServiceAmounts":{"$ref":"#/components/schemas/RefundPostTicketingServiceAmount","description":"The refund calculation for Post-ticketing Servrice, including baggage etc. Each post-ticketing order will be present as an object.","nullable":true},"refundVouchers":{"type":"array","items":{"$ref":"#/components/schemas/RefundVoucher"},"description":"If `refundMethod` is Voucher, the `refundVouchers` is not null.","nullable":true},"serviceFee":{"description":"Service fee of refund.","type":"object","properties":{"currency":{"type":"string","description":"Currency used for the service fee.\n3-letter ISO currency code."},"transactionFee":{"type":"number","description":"Transaction Fee of refund."}},"required":["currency","transactionFee"]},"refundRules":{"type":"array","items":{"$ref":"#/components/schemas/RefundRule"},"description":"The refund rules for the fare whose refund quote has been requested."},"orderNo":{"type":"string","description":"Original order number"},"isRefundable":{"type":"boolean","description":"True : Refundable False: Non-Refundable\ntrue or false"}},"required":["status","fastConfirmation","expectedConfirmationDate","expectedRefundDate","refundQuoteType","refundOfferId","refundMethod","refundTickets","serviceFee","orderNo","isRefundable"]}}},"headers":{}}}}}},"components":{"schemas":{"RefundPaxSegments":{"type":"object","properties":{"lastName":{"type":"string","description":"Last name of the passenger requesting a refund."},"firstName":{"type":"string","description":"First name of the passenger requesting a refund."},"segments":{"type":"array","items":{"$ref":"#/components/schemas/RefundSegment"}},"refundReason":{"type":"string","description":"Code representing the reason for the refund request.\n- 0: Involuntary\n- 1: Voluntary\n- 4: Void","enum":["0","1","4"]}},"required":["lastName","firstName","segments","refundReason"]},"RefundSegment":{"type":"object","properties":{"depDate":{"type":"string","description":"Departure date of the segment which the passenger wants to refund. the format is `yyyyMMdd`.","format":"date"},"flightNo":{"type":"string","description":"Flight number of the segment which the passenger wants to refund."},"depAirport":{"type":"string","description":"3-letter IATA code of the departure airport."},"arrAirport":{"type":"string","description":"3-letter IATA code of the arrival airport."}},"required":["depDate","flightNo","depAirport","arrAirport"]},"RefundTicket":{"type":"object","properties":{"lastName":{"type":"string","description":"Last name of the passenger who wants to refund."},"firstName":{"type":"string","description":"First name of the passenger who wants to refund."},"ticketNo":{"type":"string","description":"The PNR received from the airline in the retrieve PNR response."}},"required":["lastName","firstName","ticketNo"]},"RefundFareAmount":{"type":"object","properties":{"currency":{"type":"string","description":"The refund calculation for flight fare and inflow ancillaries.\n3-letter ISO currency code."},"originalFareAmount":{"type":"number","description":"Original fare of the flight."},"estimatedRefundAmount":{"type":"number","description":"Estimated amount which can be got back for this refund of flight."},"displayOriginalFareAmount":{"type":"number","description":"Original Fare Amount in display currency.","nullable":true},"displayEstimatedRefundAmount":{"type":"number","description":"EstimatedRefundAmount in display currency.","nullable":true}},"required":["currency","originalFareAmount","estimatedRefundAmount"]},"RefundPostTicketingServiceAmount":{"type":"object","properties":{"postTicketingOrderNo":{"type":"string","description":"Unique order number for the post-ticketing service."},"currency":{"type":"string","description":"Currency used for post-ticketing service calculations.\n3-letter ISO currency code."},"originalPostTicketingServiceAmount":{"type":"number","description":"The original amount charged for the post-ticketing service."},"estimatedRefundAmount":{"type":"number","description":"Estimated amount which can be got back for this refund of Ancillaries."},"displayPostTicketingServiceAmount":{"type":"number","description":"The original post-ticketing service amount in the display currency.","nullable":true},"displayEstimatedRefundAmount":{"type":"number","description":"The estimated refund amount displayed in the display currency.","nullable":true}},"required":["currency","originalPostTicketingServiceAmount","estimatedRefundAmount","postTicketingOrderNo"],"description":"The refund calculation for Post-ticketing Servrice, including baggage"},"RefundVoucher":{"type":"object","properties":{"voucherId":{"type":"string","description":"A unique identifier of Atlas used to distinguish different vouchers.","nullable":true},"voucherCode":{"type":"string","description":"The voucherCode airline returned.","nullable":true},"eligiblePassengers":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"The eligible passenger’s name.","nullable":true}}},"description":"The passenger information eligible to use this voucher."},"airline":{"type":"string","description":"The airline from which the voucher originates.","nullable":true},"estimatedRefundAmount":{"type":"number","description":"The amount value of the voucher."},"currency":{"type":"string","description":"The currency type of the voucher."},"voucherStartDate":{"type":"string","description":"The date on which the voucher can begin to be used. Defaults to the date when the refund status is set to \"Refunded\". The format is `yyyyMMdd`.","nullable":true},"voucherEndDate":{"type":"string","description":"The expiry date of the voucher. The format is `yyyyMMdd`.","nullable":true},"travelStartDate":{"type":"string","description":"The actual travel start date. The format is `yyyyMMdd`.","nullable":true},"travelEndDate":{"type":"string","description":"The actual travel end date. The format is `yyyyMMdd`.","nullable":true},"note":{"type":"string","description":"A brief description or usage rule explanation for the voucher.","nullable":true}},"required":["estimatedRefundAmount","currency"],"description":"Information about the voucher refund."},"RefundRule":{"type":"object","properties":{"airline":{"type":"string","description":"Airline code for which the refund rule applies.\n 2-letter IATA airline code."},"ruleType":{"type":"string","description":"Rule type.\n0: Involuntary Refund\n1: Voluntary Refund \n2: Tax Refund\n3: Special Refund\n4: Void Refund","enum":["0","1","2","3","4"]},"passengerType":{"type":"string","description":"Passenger type for which the refund rule applies.\nCan be ADT (Adult), CHD (Child), INF (Infant).","enum":["ADT","CHD","INF"]},"penaltyAmount":{"type":"string","description":"The penalty amount charged for the refund.\nMonetary value with currency code."},"penaltyPercent":{"type":"number","description":"The percentage of the fare charged as penalty."},"penaltyPercentBase":{"type":"string","description":"The calculation on which the penalty percentage is based.\nCan be fare, fare+tax.","enum":["fare","fare+tax"]},"airlineFee":{"type":"string","description":"Additional airline fee for processing the refund.\n Monetary value with currency code."},"taxRefundable":{"type":"boolean","description":"Indicates whether the tax is refundable is available.\ntrue or false"},"fareRefundable":{"type":"boolean","description":"Indicates whether the ticket is refundable.\ntrue or false."},"refundableAncillaries":{"type":"array","items":{"type":"string","description":"Refundable ancillary service\nThe options are:\nStandardCheckInBaggage\nCabinBaggage\nCabinBaggageUnderSeat\nCabinBaggageOverheadLocker","enum":["StandardCheckInBaggage","CabinBaggage","CabinBaggageUnderSeat","CabinBaggageOverheadLocker"]},"description":"List of refundable ancillary services, if any."},"startMinute":{"type":"integer","description":"Starting time of rule application. \nPositive numbers represent XXX minutes before departure.\nNegative numbers represent XXX minutes after departure."},"endMinute":{"type":"integer","description":"Ending time of rule application. \nPositive numbers represent XXX minutes before departure. \nNegative numbers represent XXX minutes after departure."},"refundMethod":{"type":"string","description":"Refund method:\nCashBackToOriginalPayment or Voucher.\n- CashBackToOriginalPayment: Refund cash back to the original form of payment\n- Voucher: Refund in the form of a voucher","enum":["CashBackToOriginalPayment","Voucher"]}},"required":["airline","ruleType"]}}}}
```

## Make a Refund

> \*\*Dependency\*\*\
> Refund quotation function should be called in prior of this call\
> \
> \*\*Endpoint:\*\*\
> <https://sandbox.atriptech.com/refund.do>

```json
{"openapi":"3.0.1","info":{"title":"Default module","version":"1.0.0"},"tags":[{"name":"Refund"}],"security":[],"paths":{"/refund.do":{"post":{"summary":"Make a Refund","deprecated":false,"description":"**Dependency**\nRefund quotation function should be called in prior of this call\n\n**Endpoint:**\nhttps://sandbox.atriptech.com/refund.do","tags":["Refund"],"parameters":[{"name":"Accept","in":"header","description":"","required":true,"schema":{"type":"string"}},{"name":"Content-Type","in":"header","description":"","required":true,"schema":{"type":"string"}},{"name":"Accept-Encoding","in":"header","description":"","required":true,"schema":{"type":"string","default":"gzip"}},{"name":"x-atlas-client-id","in":"header","description":"","required":true,"schema":{"type":"string","default":"<YOUR_CLIENT_ID>"}},{"name":"x-atlas-client-secret","in":"header","description":"","required":true,"schema":{"type":"string","default":"<YOUR_CLIENT_SECRET>"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"orderNo":{"type":"string","description":"Atlas original order number.  You can choose to request either orderNo or both airlinePNR and carrier. If you use `orderNo`, the `airlinePNR` and `carrier` fields may be null.","nullable":true},"airlinePNR":{"type":"string","description":"The record locator of the airline. You can choose to request either orderNo or both airlinePNR and carrier. If you use `airlinePNR` and `carrier`, the `orderNo`  field may be null.","nullable":true},"carrier":{"type":"string","description":"2 character IATA airline code. you can choose to request either orderNo or both airlinePNR and carrier. If you use `airlinePNR` and `carrier`, the `orderNo`  field may be null.","nullable":true},"displayCurrency":{"type":"string","description":"The alternative currency in which the fare and taxes amount needs to be displayed. The 3-letter currency code should be entered.","nullable":true},"refundOfferId":{"type":"string","description":"Get this from the refund quotation response. You can request with refundOfferId or refundRequestList. If you use `refundRequestList`, the field `refundOfferId` is null.","nullable":true},"refundRequestList":{"type":"array","items":{"$ref":"#/components/schemas/RefundPaxSegments"},"description":"You can request with refundOfferId or refundRequestList. If you use `refundOfferId`, the field `refundRequestList` is null.","nullable":true}},"required":["orderNo","airlinePNR","carrier","refundOfferId"]}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiRefundApplyResponse"}}},"headers":{}}}}}},"components":{"schemas":{"RefundPaxSegments":{"type":"object","properties":{"lastName":{"type":"string","description":"Last name of the passenger requesting a refund."},"firstName":{"type":"string","description":"First name of the passenger requesting a refund."},"segments":{"type":"array","items":{"$ref":"#/components/schemas/RefundSegment"}},"refundReason":{"type":"string","description":"Code representing the reason for the refund request.\n- 0: Involuntary\n- 1: Voluntary\n- 4: Void","enum":["0","1","4"]}},"required":["lastName","firstName","segments","refundReason"]},"RefundSegment":{"type":"object","properties":{"depDate":{"type":"string","description":"Departure date of the segment which the passenger wants to refund. the format is `yyyyMMdd`.","format":"date"},"flightNo":{"type":"string","description":"Flight number of the segment which the passenger wants to refund."},"depAirport":{"type":"string","description":"3-letter IATA code of the departure airport."},"arrAirport":{"type":"string","description":"3-letter IATA code of the arrival airport."}},"required":["depDate","flightNo","depAirport","arrAirport"]},"ApiRefundApplyResponse":{"type":"object","properties":{"status":{"type":"integer","description":"Status code. 0 for Success, 2 for System error.","enum":[0,2]},"msg":{"type":"string","description":"Error message\nThe ‘msg’ element is for description of the results. Please do not use this field to check the success or failure of the request. Only use the ‘status’ code to check the result.","nullable":true},"displayCurrency":{"type":"string","description":"The alternative currency in which the fare and taxes amount needs to be displayed. The 3-letter currency code should be entered.","nullable":true},"fastConfirmation":{"type":"integer","description":"Fast confirmation depends on whether the airline supports auto fulfillment.\n0 for False, 1 for True.","enum":[0,1]},"expectedConfirmationDate":{"type":"string","description":"Expected date of getting airline refund confirmation. The format is `yyyyMMdd`."},"expectedRefundDate":{"type":"string","description":"Expected date of getting refund. The format is `yyyyMMdd`."},"refundQuoteType":{"type":"string","description":"Type of refund quote:\n- AccurateQuote：quotation based on the calculated amount.\n- CannotQuote: quotation is unknown and will be according to the airline's rates","enum":["AccurateQuote","CannotQuote"]},"refundOfferId":{"type":"string","description":"Refund offer id for this quotation which can be used for the coming refund call."},"refundMethod":{"type":"string","description":"Refund method: CashBackToOriginalPayment or Voucher.\n- CashBackToOriginalPayment: Refund cash back to the original form of payment.\n- Voucher: Refund in the form of a voucher.","enum":["CashBackToOriginalPayment","Voucher"]},"refundTickets":{"type":"array","items":{"$ref":"#/components/schemas/RefundTicket"},"description":"The refund calculation for each of the passengers whose refund quote has been requested"},"refundFareAmount":{"$ref":"#/components/schemas/RefundFareAmount","description":"If `refundMethod` is CashBackToOriginalPayment, the `refundFareAmount` field is not null and the `refundVouchers` is null.","nullable":true},"refundPostTicketingServiceAmounts":{"$ref":"#/components/schemas/RefundPostTicketingServiceAmount","description":"The refund calculation for Post-ticketing Servrice, including baggage etc. Each post-ticketing order will be present as an object.","nullable":true},"refundVouchers":{"type":"array","items":{"$ref":"#/components/schemas/RefundVoucher"},"description":"If `refundMethod` is Voucher, the `refundVouchers` is not null.","nullable":true},"serviceFee":{"$ref":"#/components/schemas/ServiceFee1","description":"Service fee of refund."},"refundRules":{"type":"array","items":{"$ref":"#/components/schemas/RefundRule"},"description":"The refund rules for the fare whose refund quote has been requested."},"orderNo":{"type":"string","description":"Original order number"},"isRefundable":{"type":"boolean","description":"True : Refundable False: Non-Refundable\ntrue or false"},"refundStatus":{"type":"integer","description":"The present status of the refund.\nThe options are:\n0: Atlas Processing\n1: Airline Processing (Submitted to airline by Atlas)\n2: Refunded\n3: Airline Refunding\n4: Rejected\n5: Fullfillment Done\n6: Withdrew\nIf the ticket is paid by deposit: the status can be 0,1,2,3,4\nIf the ticket is paid by VCC pass through: the status can be 0,1,4,5,6\nWithdrew is only in the refund claim"},"refundCode":{"type":"string","description":"Refund order number generated for this refund request"},"cancelReason":{"type":"string","description":"The reason why the refund was cancelled.\nThe refund reasons are:\nDoes not match airline policy\nThere is no schedule change from the airline side. Please refer the ticket Fare Rules available in ATRIP flight deck for cancellation charges.\nVoluntary Cancellation - Non-Refundable\nAs per airline policy, only voucher refund is available for the ticket\nRefund request cancelled by the user\nTravel has been completed by the passenger\nRefund not yet received from the airline. Please try again later.","nullable":true},"refundReason":{"type":"string","description":"Refund reason\n0: Involuntary\n1: Voluntary\n4: Void","enum":["0","1","4"],"nullable":true}},"required":["refundStatus","refundCode","status","fastConfirmation","expectedConfirmationDate","expectedRefundDate","refundQuoteType","refundOfferId","refundMethod","refundTickets","serviceFee","orderNo","isRefundable"]},"RefundTicket":{"type":"object","properties":{"lastName":{"type":"string","description":"Last name of the passenger who wants to refund."},"firstName":{"type":"string","description":"First name of the passenger who wants to refund."},"ticketNo":{"type":"string","description":"The PNR received from the airline in the retrieve PNR response."}},"required":["lastName","firstName","ticketNo"]},"RefundFareAmount":{"type":"object","properties":{"currency":{"type":"string","description":"The refund calculation for flight fare and inflow ancillaries.\n3-letter ISO currency code."},"originalFareAmount":{"type":"number","description":"Original fare of the flight."},"estimatedRefundAmount":{"type":"number","description":"Estimated amount which can be got back for this refund of flight."},"displayOriginalFareAmount":{"type":"number","description":"Original Fare Amount in display currency.","nullable":true},"displayEstimatedRefundAmount":{"type":"number","description":"EstimatedRefundAmount in display currency.","nullable":true}},"required":["currency","originalFareAmount","estimatedRefundAmount"]},"RefundPostTicketingServiceAmount":{"type":"object","properties":{"postTicketingOrderNo":{"type":"string","description":"Unique order number for the post-ticketing service."},"currency":{"type":"string","description":"Currency used for post-ticketing service calculations.\n3-letter ISO currency code."},"originalPostTicketingServiceAmount":{"type":"number","description":"The original amount charged for the post-ticketing service."},"estimatedRefundAmount":{"type":"number","description":"Estimated amount which can be got back for this refund of Ancillaries."},"displayPostTicketingServiceAmount":{"type":"number","description":"The original post-ticketing service amount in the display currency.","nullable":true},"displayEstimatedRefundAmount":{"type":"number","description":"The estimated refund amount displayed in the display currency.","nullable":true}},"required":["currency","originalPostTicketingServiceAmount","estimatedRefundAmount","postTicketingOrderNo"],"description":"The refund calculation for Post-ticketing Servrice, including baggage"},"RefundVoucher":{"type":"object","properties":{"voucherId":{"type":"string","description":"A unique identifier of Atlas used to distinguish different vouchers.","nullable":true},"voucherCode":{"type":"string","description":"The voucherCode airline returned.","nullable":true},"eligiblePassengers":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"The eligible passenger’s name.","nullable":true}}},"description":"The passenger information eligible to use this voucher."},"airline":{"type":"string","description":"The airline from which the voucher originates.","nullable":true},"estimatedRefundAmount":{"type":"number","description":"The amount value of the voucher."},"currency":{"type":"string","description":"The currency type of the voucher."},"voucherStartDate":{"type":"string","description":"The date on which the voucher can begin to be used. Defaults to the date when the refund status is set to \"Refunded\". The format is `yyyyMMdd`.","nullable":true},"voucherEndDate":{"type":"string","description":"The expiry date of the voucher. The format is `yyyyMMdd`.","nullable":true},"travelStartDate":{"type":"string","description":"The actual travel start date. The format is `yyyyMMdd`.","nullable":true},"travelEndDate":{"type":"string","description":"The actual travel end date. The format is `yyyyMMdd`.","nullable":true},"note":{"type":"string","description":"A brief description or usage rule explanation for the voucher.","nullable":true}},"required":["estimatedRefundAmount","currency"],"description":"Information about the voucher refund."},"ServiceFee1":{"type":"object","properties":{"currency":{"type":"string","description":"Currency used for the service fee.\n3-letter ISO currency code."},"transactionFee":{"type":"number","description":"Transaction Fee of refund."},"displayTransactionFee":{"type":"number","description":"TransactionFee in display currency.","nullable":true}},"required":["currency","transactionFee"],"description":"Service fee of refund."},"RefundRule":{"type":"object","properties":{"airline":{"type":"string","description":"Airline code for which the refund rule applies.\n 2-letter IATA airline code."},"ruleType":{"type":"string","description":"Rule type.\n0: Involuntary Refund\n1: Voluntary Refund \n2: Tax Refund\n3: Special Refund\n4: Void Refund","enum":["0","1","2","3","4"]},"passengerType":{"type":"string","description":"Passenger type for which the refund rule applies.\nCan be ADT (Adult), CHD (Child), INF (Infant).","enum":["ADT","CHD","INF"]},"penaltyAmount":{"type":"string","description":"The penalty amount charged for the refund.\nMonetary value with currency code."},"penaltyPercent":{"type":"number","description":"The percentage of the fare charged as penalty."},"penaltyPercentBase":{"type":"string","description":"The calculation on which the penalty percentage is based.\nCan be fare, fare+tax.","enum":["fare","fare+tax"]},"airlineFee":{"type":"string","description":"Additional airline fee for processing the refund.\n Monetary value with currency code."},"taxRefundable":{"type":"boolean","description":"Indicates whether the tax is refundable is available.\ntrue or false"},"fareRefundable":{"type":"boolean","description":"Indicates whether the ticket is refundable.\ntrue or false."},"refundableAncillaries":{"type":"array","items":{"type":"string","description":"Refundable ancillary service\nThe options are:\nStandardCheckInBaggage\nCabinBaggage\nCabinBaggageUnderSeat\nCabinBaggageOverheadLocker","enum":["StandardCheckInBaggage","CabinBaggage","CabinBaggageUnderSeat","CabinBaggageOverheadLocker"]},"description":"List of refundable ancillary services, if any."},"startMinute":{"type":"integer","description":"Starting time of rule application. \nPositive numbers represent XXX minutes before departure.\nNegative numbers represent XXX minutes after departure."},"endMinute":{"type":"integer","description":"Ending time of rule application. \nPositive numbers represent XXX minutes before departure. \nNegative numbers represent XXX minutes after departure."},"refundMethod":{"type":"string","description":"Refund method:\nCashBackToOriginalPayment or Voucher.\n- CashBackToOriginalPayment: Refund cash back to the original form of payment\n- Voucher: Refund in the form of a voucher","enum":["CashBackToOriginalPayment","Voucher"]}},"required":["airline","ruleType"]}}}}
```

## Query Refund Status

> \*\*Dependency\*\*\
> No preceding function needs to be carried out.\
> \
> \*\*Endpoint:\*\*\
> <https://sandbox.atriptech.com/queryRefundOrders.do>

```json
{"openapi":"3.0.1","info":{"title":"Default module","version":"1.0.0"},"tags":[{"name":"Refund"}],"security":[],"paths":{"/queryRefundOrders.do":{"post":{"summary":"Query Refund Status","deprecated":false,"description":"**Dependency**\nNo preceding function needs to be carried out.\n\n**Endpoint:**\nhttps://sandbox.atriptech.com/queryRefundOrders.do","tags":["Refund"],"parameters":[{"name":"Accept","in":"header","description":"","required":true,"schema":{"type":"string"}},{"name":"Content-Type","in":"header","description":"","required":true,"schema":{"type":"string"}},{"name":"Accept-Encoding","in":"header","description":"","required":true,"schema":{"type":"string","default":"gzip"}},{"name":"x-atlas-client-id","in":"header","description":"","required":true,"schema":{"type":"string","default":"<YOUR_CLIENT_ID>"}},{"name":"x-atlas-client-secret","in":"header","description":"","required":true,"schema":{"type":"string","default":"<YOUR_CLIENT_SECRET>"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"refundCode":{"type":"string","description":"The code of the refund transaction received in the refund.do response."},"orderNo":{"type":"string","description":"Atlas original order number. You can choose to request either orderNo or both airlinePNR and carrier. If you use `orderNo`, the `airlinePNR` and `carrier` fields may be null.","nullable":true},"airlinePNR":{"type":"string","description":"The record locator of the airline. You can choose to request either orderNo or both airlinePNR and carrier. If you use `airlinePNR` and `carrier`, the `orderNo`  field may be null.","nullable":true},"carrier":{"type":"string","description":"2 character IATA airline code. you can choose to request either orderNo or both airlinePNR and carrier. If you use `airlinePNR` and `carrier`, the `orderNo`  field may be null.","nullable":true},"displayCurrency":{"type":"string","description":"The alternative currency in which the fare and taxes amount needs to be displayed. The 3-letter currency code should be entered.","nullable":true}},"required":["orderNo","refundCode","airlinePNR","carrier"]}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"object","properties":{"refundOrders":{"type":"array","items":{"$ref":"#/components/schemas/RefundOrder"}},"status":{"type":"integer","description":"Status code. 0 for Success, 2 for System error."},"msg":{"type":"string","description":"Error message","nullable":true}},"required":["refundOrders","status"]}}},"headers":{}}}}}},"components":{"schemas":{"RefundOrder":{"type":"object","properties":{"orderNo":{"type":"string","description":"Original order number"},"refundCode":{"type":"string","description":"Refund order number generated for this refund request"},"displayCurrency":{"type":"string","description":"The alternative currency in which the fare and taxes amount needs to be displayed. The 3-letter currency code should be entered.","nullable":true},"expectedConfirmationDate":{"type":"string","description":"Expected date of getting airline refund confirmation. The format is `yyyyMMdd`."},"expectedRefundDate":{"type":"string","description":"Expected date of getting refund. The format is `yyyyMMdd`."},"refundQuoteType":{"type":"string","description":"Type of refund quote:\nAccurateQuote：quotation based on the calculated amount.\nCannotQuote: quotation is unknown and will be according to the airline's rates","enum":["AccurateQuote","CannotQuote"]},"refundTickets":{"type":"array","items":{"$ref":"#/components/schemas/RefundTicket"},"description":"The refund calculation for each of the passengers whose refund quote has been requested"},"refundFareAmount":{"$ref":"#/components/schemas/RefundFareAmount","nullable":true,"description":"If `refundMethod` is CashBackToOriginalPayment, the `refundFareAmount` field is not null."},"refundPostTicketingServiceAmounts":{"type":"array","items":{"$ref":"#/components/schemas/RefundPostTicketingServiceAmount"},"description":"The refund calculation for Post-ticketing Servrice, including baggage etc. Each post-ticketing order will be present as an object.","nullable":true},"refundVouchers":{"type":"array","items":{"$ref":"#/components/schemas/RefundVoucher"},"description":"If `refundMethod` is Voucher,  the `refundVouchers` field is not null.","nullable":true},"serviceFee":{"$ref":"#/components/schemas/ServiceFee1","description":"Service fee of refund."},"refundRules":{"type":"array","items":{"$ref":"#/components/schemas/RefundRule"},"description":"The refund rules for the fare whose refund quote has been requested."},"refundStatus":{"type":"integer","description":"The present status of the refund.\nThe options are:\n0: Atlas Processing\n1: Airline Processing (Submitted to airline by Atlas)\n2: Refunded\n3: Airline Refunding\n4: Rejected\n5: Fullfillment Done\n6: Withdrew\nIf the ticket is paid by deposit: the status can be 0,1,2,3,4\nIf the ticket is paid by VCC pass through: the status can be 0,1,4,5,6\nWithdrew is only in the refund claim","enum":[0,1,2,3,4,5,6]},"cancelReason":{"type":"string","description":"The reason why the refund was cancelled.\nThe refund reasons are:\nDoes not match airline policy.\nThere is no schedule change from the airline side. \\nPlease refer the ticket Fare Rules available in ATRIP flight deck for cancellation charges.\nVoluntary Cancellation - Non-Refundable\nAs per airline policy, only voucher refund is available for the ticket\nRefund request cancelled by the user\nTravel has been completed by the passenger.\nRefund not yet received from the airline. Please try again later.\nThe order is paid by your VCC. please refund by yourself\nIt's issued via your B2B account, please refund by yourself\nRefund is availalbe through airline's B2C website. Please refund by yourself.\nThe refund claim voucher is invalid.\nDuplicate Refund Record\nNeed to provide more materials that meet airline requirements\nActual refund amount less than service fee. Will reject it.","nullable":true},"refundOfferId":{"type":"string","description":"Refund offer id for this quotation which can be used for the coming refund call."},"refundMethod":{"type":"string","description":"Refund method: CashBackToOriginalPayment or Voucher"}},"required":["orderNo","refundCode","expectedConfirmationDate","expectedRefundDate","refundQuoteType","refundTickets","serviceFee","refundRules","refundStatus","refundOfferId","refundMethod"]},"RefundTicket":{"type":"object","properties":{"lastName":{"type":"string","description":"Last name of the passenger who wants to refund."},"firstName":{"type":"string","description":"First name of the passenger who wants to refund."},"ticketNo":{"type":"string","description":"The PNR received from the airline in the retrieve PNR response."}},"required":["lastName","firstName","ticketNo"]},"RefundFareAmount":{"type":"object","properties":{"currency":{"type":"string","description":"The refund calculation for flight fare and inflow ancillaries.\n3-letter ISO currency code."},"originalFareAmount":{"type":"number","description":"Original fare of the flight."},"estimatedRefundAmount":{"type":"number","description":"Estimated amount which can be got back for this refund of flight."},"displayOriginalFareAmount":{"type":"number","description":"Original Fare Amount in display currency.","nullable":true},"displayEstimatedRefundAmount":{"type":"number","description":"EstimatedRefundAmount in display currency.","nullable":true}},"required":["currency","originalFareAmount","estimatedRefundAmount"]},"RefundPostTicketingServiceAmount":{"type":"object","properties":{"postTicketingOrderNo":{"type":"string","description":"Unique order number for the post-ticketing service."},"currency":{"type":"string","description":"Currency used for post-ticketing service calculations.\n3-letter ISO currency code."},"originalPostTicketingServiceAmount":{"type":"number","description":"The original amount charged for the post-ticketing service."},"estimatedRefundAmount":{"type":"number","description":"Estimated amount which can be got back for this refund of Ancillaries."},"displayPostTicketingServiceAmount":{"type":"number","description":"The original post-ticketing service amount in the display currency.","nullable":true},"displayEstimatedRefundAmount":{"type":"number","description":"The estimated refund amount displayed in the display currency.","nullable":true}},"required":["currency","originalPostTicketingServiceAmount","estimatedRefundAmount","postTicketingOrderNo"],"description":"The refund calculation for Post-ticketing Servrice, including baggage"},"RefundVoucher":{"type":"object","properties":{"voucherId":{"type":"string","description":"A unique identifier of Atlas used to distinguish different vouchers.","nullable":true},"voucherCode":{"type":"string","description":"The voucherCode airline returned.","nullable":true},"eligiblePassengers":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"The eligible passenger’s name.","nullable":true}}},"description":"The passenger information eligible to use this voucher."},"airline":{"type":"string","description":"The airline from which the voucher originates.","nullable":true},"estimatedRefundAmount":{"type":"number","description":"The amount value of the voucher."},"currency":{"type":"string","description":"The currency type of the voucher."},"voucherStartDate":{"type":"string","description":"The date on which the voucher can begin to be used. Defaults to the date when the refund status is set to \"Refunded\". The format is `yyyyMMdd`.","nullable":true},"voucherEndDate":{"type":"string","description":"The expiry date of the voucher. The format is `yyyyMMdd`.","nullable":true},"travelStartDate":{"type":"string","description":"The actual travel start date. The format is `yyyyMMdd`.","nullable":true},"travelEndDate":{"type":"string","description":"The actual travel end date. The format is `yyyyMMdd`.","nullable":true},"note":{"type":"string","description":"A brief description or usage rule explanation for the voucher.","nullable":true}},"required":["estimatedRefundAmount","currency"],"description":"Information about the voucher refund."},"ServiceFee1":{"type":"object","properties":{"currency":{"type":"string","description":"Currency used for the service fee.\n3-letter ISO currency code."},"transactionFee":{"type":"number","description":"Transaction Fee of refund."},"displayTransactionFee":{"type":"number","description":"TransactionFee in display currency.","nullable":true}},"required":["currency","transactionFee"],"description":"Service fee of refund."},"RefundRule":{"type":"object","properties":{"airline":{"type":"string","description":"Airline code for which the refund rule applies.\n 2-letter IATA airline code."},"ruleType":{"type":"string","description":"Rule type.\n0: Involuntary Refund\n1: Voluntary Refund \n2: Tax Refund\n3: Special Refund\n4: Void Refund","enum":["0","1","2","3","4"]},"passengerType":{"type":"string","description":"Passenger type for which the refund rule applies.\nCan be ADT (Adult), CHD (Child), INF (Infant).","enum":["ADT","CHD","INF"]},"penaltyAmount":{"type":"string","description":"The penalty amount charged for the refund.\nMonetary value with currency code."},"penaltyPercent":{"type":"number","description":"The percentage of the fare charged as penalty."},"penaltyPercentBase":{"type":"string","description":"The calculation on which the penalty percentage is based.\nCan be fare, fare+tax.","enum":["fare","fare+tax"]},"airlineFee":{"type":"string","description":"Additional airline fee for processing the refund.\n Monetary value with currency code."},"taxRefundable":{"type":"boolean","description":"Indicates whether the tax is refundable is available.\ntrue or false"},"fareRefundable":{"type":"boolean","description":"Indicates whether the ticket is refundable.\ntrue or false."},"refundableAncillaries":{"type":"array","items":{"type":"string","description":"Refundable ancillary service\nThe options are:\nStandardCheckInBaggage\nCabinBaggage\nCabinBaggageUnderSeat\nCabinBaggageOverheadLocker","enum":["StandardCheckInBaggage","CabinBaggage","CabinBaggageUnderSeat","CabinBaggageOverheadLocker"]},"description":"List of refundable ancillary services, if any."},"startMinute":{"type":"integer","description":"Starting time of rule application. \nPositive numbers represent XXX minutes before departure.\nNegative numbers represent XXX minutes after departure."},"endMinute":{"type":"integer","description":"Ending time of rule application. \nPositive numbers represent XXX minutes before departure. \nNegative numbers represent XXX minutes after departure."},"refundMethod":{"type":"string","description":"Refund method:\nCashBackToOriginalPayment or Voucher.\n- CashBackToOriginalPayment: Refund cash back to the original form of payment\n- Voucher: Refund in the form of a voucher","enum":["CashBackToOriginalPayment","Voucher"]}},"required":["airline","ruleType"]}}}}
```
