Returns {
AirTicketRQ?: {
AccountingLines?: {
All?: boolean;
Delete?: { EndNumber?: number; Number: number }[];
None?: boolean;
};
DesignatePrinter?: {
Printers?: {
BagTag?: { LNIATA?: string };
BoardingPass?: { HostedCarrier?: boolean; LNIATA?: string };
Hardcopy?: { LNIATA?: string; Spacing?: "1" | "2" };
InvoiceItinerary?: { LNIATA?: string };
ListLabel?: { LNIATA?: string };
MiniItinerary?: { LNIATA?: string };
Report?: { LNIATA?: string };
Ticket?: {
CountryCode?: string;
LNIATA?: string;
MiniItinerary?: { LNIATA?: string };
Remote?: { LNIATA?: string };
};
};
Profile?: { Number?: number };
};
Diagnostics?: unknown;
haltOnInvalidMCT?: boolean;
healthCheck?: string;
Itinerary: { ID: string };
PostProcessing?: {
acceptNegotiatedFare?: boolean;
acceptPriceChanges?: boolean;
actionOnBackDatePrice?: "O" | "R" | "Q";
actionOnPQExpired?: "O" | "R" | "Q";
CreditVerificationInterval?: { waitInterval?: number };
EndTransaction?: {
Email?: {
eTicket?: { Ind: boolean; PDF?: { Ind: boolean } };
Ind: boolean;
Invoice?: { Ind: boolean };
Itinerary?: {
Ind: boolean;
PDF?: { Ind: boolean };
Segment?: { EndNumber?: number; Number: number }[];
};
PersonName?: { NameNumber: string };
};
generateSingleInvoice?: boolean;
Source?: { ReceivedFrom: string };
};
GhostTicketCheck?: { numAttempts?: number; waitInterval?: number };
TicketingInterval?: { includeFirst?: boolean; waitInterval?: number };
};
targetCity?: string;
Ticketing: {
FlightQualifiers?: { VendorPrefs?: { Airline: { Code: string } } };
FOP_Qualifiers?: {
BasicFOP?: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
CostCenter?: string;
Reference?: number;
Type?: string;
Virtual?: string;
};
BSP_Ticketing?: {
MultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string }[] };
};
MultipleMiscFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
FOP_Two: {
ExtendedPayment?: { NumMonths: number };
Reference?: number;
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string }[] };
};
PayLaterPlan?: {
Fare: { Amount: string };
FOP: {
CC_Info?: {
PaymentCard: {
Code: string;
ExpireDate: string;
ManualApprovalCode?: string;
Number: number;
};
};
Reference?: number;
Type?: string;
};
Installment: {
Count: string;
PayLaterReferenceNumber: string;
Value: string;
};
};
};
MultipleCC_FOP?: {
CC_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number: number;
};
Suppress?: boolean;
};
};
CC_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number: number;
};
Suppress?: boolean;
};
};
Fare: { Amount: string };
};
SabreSonicTicketing?: {
BasicFOP?: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: number;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
Suppress?: boolean;
};
ManualApprovalCode?: string;
Type?: string;
};
EnhancedMultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
Taxes: { Tax: { Amount: string; TaxCode: string } };
};
MultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
Code: string;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
Code: string;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string } };
};
};
};
MiscQualifiers?: {
AirExtras?: { EndNumber?: number; Number: number }[];
BaggageAllowance?: {
Number?: string;
SegmentSelect?: { EndNumber?: number; Number: number };
Weight?: string;
}[];
Certificate?: { Number: string }[];
Commission?: { Amount?: number; Net?: boolean; Percent?: number };
DateOfBirth?: string;
Discount?: { Code?: string };
Endorsement?: { Override?: boolean; Text: string };
FutureTicket?: {
Line: { EndNumber?: number; NameNumber?: string; Number: number }[];
};
Invoice?: { ETReceipt?: boolean; Ind?: boolean };
MISF?: {
Ind?: boolean;
Override?: {
Amount?: string;
BackOfficeInfo?: string;
CurrencyCode?: string;
CustomerReference?: string;
DocumentReferenceCode?: string;
ServiceFeeDescription?: string;
TicketNumber?: string;
};
};
NeedPrint?: {
AuditorCoupon: boolean;
Itinerary: boolean;
PassengerReceipt: boolean;
};
NetRemit?: {
Amount?: string;
ContractAgreementCode?: string;
DiscountAmount?: string;
NetCreditAmount?: number;
SellingFareAmount?: string;
TourCode?: string;
ValueCode?: string;
};
Ticket?: { Action?: string; Type?: string };
TourCode?: {
SuppressFareReplaceWithBT?: { Ind: boolean };
SuppressFareReplaceWithIT?: { Ind: boolean };
SuppressIT?: { Ind: boolean };
SuppressITSupressFare?: { Ind: boolean };
Text?: string;
};
};
PricingQualifiers?: {
Brand?: { content?: string; RPH?: number }[];
Fare?: { Type: string };
FareFocusExclude?: { Ind: boolean };
ItineraryOptions?: {
SegmentSelect?: { EndNumber?: number; Number: number; RPH?: string }[];
SideTrip?: { EndNumber?: number; Number: number };
};
NameSelect?: { EndNameNumber?: string; NameNumber: string }[];
PhaseIV?: {
NameSelect?: { EndNameNumber?: string; NameNumber: string }[];
Number: number;
}[];
PriceQuote?: {
NameSelect?: { EndNameNumber?: number; NameNumber: number }[];
Record?: { EndNumber?: number; Number: number; Reissue?: boolean }[];
}[];
RefundableBalance?: {
Amount: string;
Taxes?: { Tax: { Amount: string; Code: string }[] };
};
SpanishLargeFamilyDiscountLevel?: "1"
| "2";
SpecificFare?: { FareBasis?: string; RPH?: string }[];
SpecificPenalty?: {
AdditionalInfo?: boolean;
Changeable?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
EitherOr?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
Refundable?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
};
Taxes?: { NoTax?: { Ind?: boolean }; TaxExempt?: { Code?: string }[] };
ValidityDates?: {
NotValidAfter?: string;
NotValidBefore?: string;
Segment: { EndNumber?: number; Number: number }[];
}[];
};
}[];
version?: string;
};
}
L'objet prêt à être envoyé au service d'émission
OptionalAirTicketRQ?: {
AccountingLines?: {
All?: boolean;
Delete?: { EndNumber?: number; Number: number }[];
None?: boolean;
};
DesignatePrinter?: {
Printers?: {
BagTag?: { LNIATA?: string };
BoardingPass?: { HostedCarrier?: boolean; LNIATA?: string };
Hardcopy?: { LNIATA?: string; Spacing?: "1" | "2" };
InvoiceItinerary?: { LNIATA?: string };
ListLabel?: { LNIATA?: string };
MiniItinerary?: { LNIATA?: string };
Report?: { LNIATA?: string };
Ticket?: {
CountryCode?: string;
LNIATA?: string;
MiniItinerary?: { LNIATA?: string };
Remote?: { LNIATA?: string };
};
};
Profile?: { Number?: number };
};
Diagnostics?: unknown;
haltOnInvalidMCT?: boolean;
healthCheck?: string;
Itinerary: { ID: string };
PostProcessing?: {
acceptNegotiatedFare?: boolean;
acceptPriceChanges?: boolean;
actionOnBackDatePrice?: "O" | "R" | "Q";
actionOnPQExpired?: "O" | "R" | "Q";
CreditVerificationInterval?: { waitInterval?: number };
EndTransaction?: {
Email?: {
eTicket?: { Ind: boolean; PDF?: { Ind: boolean } };
Ind: boolean;
Invoice?: { Ind: boolean };
Itinerary?: {
Ind: boolean;
PDF?: { Ind: boolean };
Segment?: { EndNumber?: number; Number: number }[];
};
PersonName?: { NameNumber: string };
};
generateSingleInvoice?: boolean;
Source?: { ReceivedFrom: string };
};
GhostTicketCheck?: { numAttempts?: number; waitInterval?: number };
TicketingInterval?: { includeFirst?: boolean; waitInterval?: number };
};
targetCity?: string;
Ticketing: {
FlightQualifiers?: { VendorPrefs?: { Airline: { Code: string } } };
FOP_Qualifiers?: {
BasicFOP?: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
CostCenter?: string;
Reference?: number;
Type?: string;
Virtual?: string;
};
BSP_Ticketing?: {
MultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string }[] };
};
MultipleMiscFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
FOP_Two: {
ExtendedPayment?: { NumMonths: number };
Reference?: number;
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string }[] };
};
PayLaterPlan?: {
Fare: { Amount: string };
FOP: {
CC_Info?: {
PaymentCard: {
Code: string;
ExpireDate: string;
ManualApprovalCode?: string;
Number: number;
};
};
Reference?: number;
Type?: string;
};
Installment: {
Count: string;
PayLaterReferenceNumber: string;
Value: string;
};
};
};
MultipleCC_FOP?: {
CC_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number: number;
};
Suppress?: boolean;
};
};
CC_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number: number;
};
Suppress?: boolean;
};
};
Fare: { Amount: string };
};
SabreSonicTicketing?: {
BasicFOP?: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: number;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
Suppress?: boolean;
};
ManualApprovalCode?: string;
Type?: string;
};
EnhancedMultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
Taxes: { Tax: { Amount: string; TaxCode: string } };
};
MultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
Code: string;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
Code: string;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string } };
};
};
};
MiscQualifiers?: {
AirExtras?: { EndNumber?: number; Number: number }[];
BaggageAllowance?: {
Number?: string;
SegmentSelect?: { EndNumber?: number; Number: number };
Weight?: string;
}[];
Certificate?: { Number: string }[];
Commission?: { Amount?: number; Net?: boolean; Percent?: number };
DateOfBirth?: string;
Discount?: { Code?: string };
Endorsement?: { Override?: boolean; Text: string };
FutureTicket?: {
Line: { EndNumber?: number; NameNumber?: string; Number: number }[];
};
Invoice?: { ETReceipt?: boolean; Ind?: boolean };
MISF?: {
Ind?: boolean;
Override?: {
Amount?: string;
BackOfficeInfo?: string;
CurrencyCode?: string;
CustomerReference?: string;
DocumentReferenceCode?: string;
ServiceFeeDescription?: string;
TicketNumber?: string;
};
};
NeedPrint?: {
AuditorCoupon: boolean;
Itinerary: boolean;
PassengerReceipt: boolean;
};
NetRemit?: {
Amount?: string;
ContractAgreementCode?: string;
DiscountAmount?: string;
NetCreditAmount?: number;
SellingFareAmount?: string;
TourCode?: string;
ValueCode?: string;
};
Ticket?: { Action?: string; Type?: string };
TourCode?: {
SuppressFareReplaceWithBT?: { Ind: boolean };
SuppressFareReplaceWithIT?: { Ind: boolean };
SuppressIT?: { Ind: boolean };
SuppressITSupressFare?: { Ind: boolean };
Text?: string;
};
};
PricingQualifiers?: {
Brand?: { content?: string; RPH?: number }[];
Fare?: { Type: string };
FareFocusExclude?: { Ind: boolean };
ItineraryOptions?: {
SegmentSelect?: { EndNumber?: number; Number: number; RPH?: string }[];
SideTrip?: { EndNumber?: number; Number: number };
};
NameSelect?: { EndNameNumber?: string; NameNumber: string }[];
PhaseIV?: {
NameSelect?: { EndNameNumber?: string; NameNumber: string }[];
Number: number;
}[];
PriceQuote?: {
NameSelect?: { EndNameNumber?: number; NameNumber: number }[];
Record?: { EndNumber?: number; Number: number; Reissue?: boolean }[];
}[];
RefundableBalance?: {
Amount: string;
Taxes?: { Tax: { Amount: string; Code: string }[] };
};
SpanishLargeFamilyDiscountLevel?: "1"
| "2";
SpecificFare?: { FareBasis?: string; RPH?: string }[];
SpecificPenalty?: {
AdditionalInfo?: boolean;
Changeable?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
EitherOr?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
Refundable?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
};
Taxes?: { NoTax?: { Ind?: boolean }; TaxExempt?: { Code?: string }[] };
ValidityDates?: {
NotValidAfter?: string;
NotValidBefore?: string;
Segment: { EndNumber?: number; Number: number }[];
}[];
};
}[];
version?: string;
}
OptionalAccountingLines?: {
All?: boolean;
Delete?: { EndNumber?: number; Number: number }[];
None?: boolean;
}
OptionalAll?: boolean
OptionalDelete?: { EndNumber?: number; Number: number }[]
OptionalNone?: boolean
OptionalDesignatePrinter?: {
Printers?: {
BagTag?: { LNIATA?: string };
BoardingPass?: { HostedCarrier?: boolean; LNIATA?: string };
Hardcopy?: { LNIATA?: string; Spacing?: "1" | "2" };
InvoiceItinerary?: { LNIATA?: string };
ListLabel?: { LNIATA?: string };
MiniItinerary?: { LNIATA?: string };
Report?: { LNIATA?: string };
Ticket?: {
CountryCode?: string;
LNIATA?: string;
MiniItinerary?: { LNIATA?: string };
Remote?: { LNIATA?: string };
};
};
Profile?: { Number?: number };
}
OptionalPrinters?: {
BagTag?: { LNIATA?: string };
BoardingPass?: { HostedCarrier?: boolean; LNIATA?: string };
Hardcopy?: { LNIATA?: string; Spacing?: "1" | "2" };
InvoiceItinerary?: { LNIATA?: string };
ListLabel?: { LNIATA?: string };
MiniItinerary?: { LNIATA?: string };
Report?: { LNIATA?: string };
Ticket?: {
CountryCode?: string;
LNIATA?: string;
MiniItinerary?: { LNIATA?: string };
Remote?: { LNIATA?: string };
};
}
OptionalBagTag?: { LNIATA?: string }
OptionalBoardingPass?: { HostedCarrier?: boolean; LNIATA?: string }
OptionalHostedCarrier?: boolean
OptionalLNIATA?: string
OptionalHardcopy?: { LNIATA?: string; Spacing?: "1" | "2" }
OptionalLNIATA?: string
OptionalSpacing?: "1" | "2"
OptionalInvoiceItinerary?: { LNIATA?: string }
OptionalListLabel?: { LNIATA?: string }
OptionalMiniItinerary?: { LNIATA?: string }
OptionalReport?: { LNIATA?: string }
OptionalTicket?: {
CountryCode?: string;
LNIATA?: string;
MiniItinerary?: { LNIATA?: string };
Remote?: { LNIATA?: string };
}
OptionalCountryCode?: string
OptionalLNIATA?: string
OptionalMiniItinerary?: { LNIATA?: string }
OptionalRemote?: { LNIATA?: string }
OptionalProfile?: { Number?: number }
OptionalDiagnostics?: unknown
OptionalhaltOnInvalidMCT?: boolean
OptionalhealthCheck?: string
Itinerary: { ID: string }
OptionalPostProcessing?: {
acceptNegotiatedFare?: boolean;
acceptPriceChanges?: boolean;
actionOnBackDatePrice?: "O" | "R" | "Q";
actionOnPQExpired?: "O" | "R" | "Q";
CreditVerificationInterval?: { waitInterval?: number };
EndTransaction?: {
Email?: {
eTicket?: { Ind: boolean; PDF?: { Ind: boolean } };
Ind: boolean;
Invoice?: { Ind: boolean };
Itinerary?: {
Ind: boolean;
PDF?: { Ind: boolean };
Segment?: { EndNumber?: number; Number: number }[];
};
PersonName?: { NameNumber: string };
};
generateSingleInvoice?: boolean;
Source?: { ReceivedFrom: string };
};
GhostTicketCheck?: { numAttempts?: number; waitInterval?: number };
TicketingInterval?: { includeFirst?: boolean; waitInterval?: number };
}
OptionalacceptNegotiatedFare?: boolean
OptionalacceptPriceChanges?: boolean
OptionalactionOnBackDatePrice?: "O" | "R" | "Q"
OptionalactionOnPQExpired?: "O" | "R" | "Q"
OptionalCreditVerificationInterval?: { waitInterval?: number }
OptionalwaitInterval?: number
OptionalEndTransaction?: {
Email?: {
eTicket?: { Ind: boolean; PDF?: { Ind: boolean } };
Ind: boolean;
Invoice?: { Ind: boolean };
Itinerary?: {
Ind: boolean;
PDF?: { Ind: boolean };
Segment?: { EndNumber?: number; Number: number }[];
};
PersonName?: { NameNumber: string };
};
generateSingleInvoice?: boolean;
Source?: { ReceivedFrom: string };
}
OptionalEmail?: {
eTicket?: { Ind: boolean; PDF?: { Ind: boolean } };
Ind: boolean;
Invoice?: { Ind: boolean };
Itinerary?: {
Ind: boolean;
PDF?: { Ind: boolean };
Segment?: { EndNumber?: number; Number: number }[];
};
PersonName?: { NameNumber: string };
}
OptionaleTicket?: { Ind: boolean; PDF?: { Ind: boolean } }
Ind: boolean
OptionalPDF?: { Ind: boolean }
Ind: boolean
OptionalInvoice?: { Ind: boolean }
OptionalItinerary?: {
Ind: boolean;
PDF?: { Ind: boolean };
Segment?: { EndNumber?: number; Number: number }[];
}
Ind: boolean
OptionalPDF?: { Ind: boolean }
OptionalSegment?: { EndNumber?: number; Number: number }[]
OptionalPersonName?: { NameNumber: string }
OptionalgenerateSingleInvoice?: boolean
OptionalSource?: { ReceivedFrom: string }
OptionalGhostTicketCheck?: { numAttempts?: number; waitInterval?: number }
OptionalnumAttempts?: number
OptionalwaitInterval?: number
OptionalTicketingInterval?: { includeFirst?: boolean; waitInterval?: number }
OptionalincludeFirst?: boolean
OptionalwaitInterval?: number
OptionaltargetCity?: string
Ticketing: {
FlightQualifiers?: { VendorPrefs?: { Airline: { Code: string } } };
FOP_Qualifiers?: {
BasicFOP?: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
CostCenter?: string;
Reference?: number;
Type?: string;
Virtual?: string;
};
BSP_Ticketing?: {
MultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code?: string;
ExpireDate?: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number?: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string }[] };
};
MultipleMiscFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
Suppress?: boolean;
};
Reference?: number;
Type?: string;
};
FOP_Two: {
ExtendedPayment?: { NumMonths: number };
Reference?: number;
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string }[] };
};
PayLaterPlan?: {
Fare: { Amount: string };
FOP: {
CC_Info?: {
PaymentCard: {
Code: string;
ExpireDate: string;
ManualApprovalCode?: string;
Number: number;
};
};
Reference?: number;
Type?: string;
};
Installment: {
Count: string;
PayLaterReferenceNumber: string;
Value: string;
};
};
};
MultipleCC_FOP?: {
CC_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number: number;
};
Suppress?: boolean;
};
};
CC_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
ManualOBFee?: string;
Number: number;
};
Suppress?: boolean;
};
};
Fare: { Amount: string };
};
SabreSonicTicketing?: {
BasicFOP?: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: number;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
Suppress?: boolean;
};
ManualApprovalCode?: string;
Type?: string;
};
EnhancedMultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
CardSecurityCode?: string;
Code: string;
ExpireDate: string;
ExtendedPayment?: number;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
Taxes: { Tax: { Amount: string; TaxCode: string } };
};
MultipleFOP?: {
Fare: { Amount: string };
FOP_One: {
CC_Info?: {
PaymentCard: {
Code: string;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
FOP_Two: {
CC_Info?: {
PaymentCard: {
Code: string;
ManualApprovalCode?: string;
Number: number;
};
};
Type?: string;
};
Taxes?: { Tax: { Amount: string; TaxCode: string } };
};
};
};
MiscQualifiers?: {
AirExtras?: { EndNumber?: number; Number: number }[];
BaggageAllowance?: {
Number?: string;
SegmentSelect?: { EndNumber?: number; Number: number };
Weight?: string;
}[];
Certificate?: { Number: string }[];
Commission?: { Amount?: number; Net?: boolean; Percent?: number };
DateOfBirth?: string;
Discount?: { Code?: string };
Endorsement?: { Override?: boolean; Text: string };
FutureTicket?: {
Line: { EndNumber?: number; NameNumber?: string; Number: number }[];
};
Invoice?: { ETReceipt?: boolean; Ind?: boolean };
MISF?: {
Ind?: boolean;
Override?: {
Amount?: string;
BackOfficeInfo?: string;
CurrencyCode?: string;
CustomerReference?: string;
DocumentReferenceCode?: string;
ServiceFeeDescription?: string;
TicketNumber?: string;
};
};
NeedPrint?: {
AuditorCoupon: boolean;
Itinerary: boolean;
PassengerReceipt: boolean;
};
NetRemit?: {
Amount?: string;
ContractAgreementCode?: string;
DiscountAmount?: string;
NetCreditAmount?: number;
SellingFareAmount?: string;
TourCode?: string;
ValueCode?: string;
};
Ticket?: { Action?: string; Type?: string };
TourCode?: {
SuppressFareReplaceWithBT?: { Ind: boolean };
SuppressFareReplaceWithIT?: { Ind: boolean };
SuppressIT?: { Ind: boolean };
SuppressITSupressFare?: { Ind: boolean };
Text?: string;
};
};
PricingQualifiers?: {
Brand?: { content?: string; RPH?: number }[];
Fare?: { Type: string };
FareFocusExclude?: { Ind: boolean };
ItineraryOptions?: {
SegmentSelect?: { EndNumber?: number; Number: number; RPH?: string }[];
SideTrip?: { EndNumber?: number; Number: number };
};
NameSelect?: { EndNameNumber?: string; NameNumber: string }[];
PhaseIV?: {
NameSelect?: { EndNameNumber?: string; NameNumber: string }[];
Number: number;
}[];
PriceQuote?: {
NameSelect?: { EndNameNumber?: number; NameNumber: number }[];
Record?: { EndNumber?: number; Number: number; Reissue?: boolean }[];
}[];
RefundableBalance?: {
Amount: string;
Taxes?: { Tax: { Amount: string; Code: string }[] };
};
SpanishLargeFamilyDiscountLevel?: "1"
| "2";
SpecificFare?: { FareBasis?: string; RPH?: string }[];
SpecificPenalty?: {
AdditionalInfo?: boolean;
Changeable?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
EitherOr?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
Refundable?: {
AfterDeparture?: boolean;
Any?: boolean;
BeforeDeparture?: boolean;
CurrencyCode?: string;
MaxPenalty?: string;
};
};
Taxes?: { NoTax?: { Ind?: boolean }; TaxExempt?: { Code?: string }[] };
ValidityDates?: {
NotValidAfter?: string;
NotValidBefore?: string;
Segment: { EndNumber?: number; Number: number }[];
}[];
};
}[]
Optionalversion?: string
Build an EnhancedAirTicketRequest payload from an order retrieval response.
This helper mirrors the shape required by Sabre's AirTicketRQ:
Usage example: const req = emitTicket({ bookingId: 'ABC123', fares: [{ recordId: '5' }] }); // req.AirTicketRQ.Itinerary.ID === 'ABC123'