Create Traveler Profile
UProfileReqRsp.xsd
This transaction does not require any previous message.
This topic is specific to creating a traveler profile. For information about creating any profile other than traveler, refer to Profile Create.
Universal API uses traveler profiles to apply stored data to a journey. Profiles can be used to:
- Populate a Universal Record or PNR with pre-existing information, such as traveler contact information.
- Indicate preferences and priorities for air, vehicle, and hotel travel options.
- Indicate preferences for payment, loyalty memberships, and many other travel options.
Traveler profiles are created using the ProfileCreateReq. Once created, traveler profiles can be applied to bookings using the AppliedProfile attribute, which is common in all create and modify reservation transactions within UniversalRecordReqRsp.xsd.
Schema
Traveler profiles are created using the Profile Create message that is within uProfileReqRsp.xsd.
- ProfileCreateReq
- For ProfileCreateRsp, refer directly to the uProfile schema.
Request
The steps below provide a high-level overview of creating a traveler profile. For a detailed list of required and optional data, refer to the ProfileCreateReq and ProfileCreateRsp for a full schema definition.
- The only information required to create a travel profile include:
- Given name (ProfileData/TravelerInfo@GivenName)
- Surname (ProfileData/TravelerInfo@Surname)
- ProfileCreateReq@ProfileType="Traveler"
- BillingPointOfSaleInfo attribute
Show sampleThe XML code below contains the minimum required information for creating a traveler profile.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v37_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>7873</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="Thomas" Surname="Traveler" UniqueProfileID="ThomasTraveler525">
</upr:TravelerInfo>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
-
Many optional Traveler data elements can also be included, such as contact information, forms of payment, and travel document information. Refer to the Request Modification section below for more information and samples.
- Optional traveler preferences can be specified, such as preferred suppliers or air seat preferences. Refer to Traveler Preferences below for more information and samples.
-
The response indicates if the request was successful, meaning that the traveler profile was created. Each profile is assigned a unique ProfileID (ProfileCreateRsp/Profile@ProfileID) that can be used in subsequent requests to assign profiles to reservations, as well as modify, retrieve, or delete the profile. Any errors or warnings are also in the response.
-
If a Profile Link was specified in the request, the response contains information about the travel to which the profile is linked.
Show more informationThe Profile/ProfileLink element returns information about the traveler to which this profile is linked. The name and email address information are populated with information provided in the linked traveler's profile. The linked traveler's email address is returned in the ElectronicAddress, if the linked traveler's profile contains an email address. If the linked traveler's profile contains more than one email address, the email with a priority order of 1 is returned; if no priority is assigned, the first email address is returned.
-
If ReturnProfile=true in the request, Policy Reference data is returned in ProfileCreateRsp/Profile/ProfileData.
Show Policy Reference data- Type. Returns the appropriate enumeration, which could include one of:
- HRG Policy Group
- Traversa Policy Group
- Employee Grade
- Value
- Description
- Controlling Policy ID.
- Priority Order
- Key
If the Controlling Policy ID is not within the same agency hierarchy of the traveler, a warning is returned:ControllingPolicyID [XX] is not a valid id for the Policy Reference, where XX is the Profile ID.
- Type. Returns the appropriate enumeration, which could include one of:
-
Request Modifications
When setting up a profile, additional data may be included in the request. Refer to the latest version of the schema for more details about each element.
Unique profile identification (ProfileData/TravelerInfo@UniqueProfileID) is an optional profile identifier.
UniqueProfileID must be unique within an agency.
The AgencyCode attribute of ProfileParent/UniqueProfileID can be used to specify the provisioning code of the parent agency. If the AgencyCode is not submitted, the system determines AgencyCode by the agent's work area branch (WAB) or target branch or from the agent's agency.
- Only one instance of UniqueProfileID is allowed.
- Alphanumeric and special characters are allowed; 6-128 characters are allowed.
Profile parent is used to associate the traveler profile to an account, traveler group, or other profile. The parent profile is specified by profile ID, provisioning code, or UniqueProfileID.
The AgencyCode attribute of ProfileParent/UniqueProfileID can be used to specify the provisioning code of the parent agency. If the AgencyCode is not submitted, the system determines AgencyCode by the agent's work area branch (WAB) or target branch or from the agent's agency.
The parent profile is specified by profile ID or provisioning code. Traveler profiles are allowed more than one immediate parent; however, only one parent can be added during profile creation. More parents can be added by modifying the traveler profile. The parent profile must be a valid type for the new profile. Refer to Profile Relationships for valid parent/child relationships.
TravelerInfo @LocalLanguage is used to indicate the traveler's local language. This attribute is validated against ISO 639-1 codes or IETF BCP-47 codes.
- Format for ISO codes is LocalLanguage="xx" where xx is the two-letter language code.
- Format for IETF BCP-47 codes is LocalLanguage="xx-yy" where xx is the two-letter language code from the IETF BCP-47 list and yy is the two-letter qualifier code.
Traveler personal and contact information (such as address, phone, email, and passenger type code) can be added. Traveler names and addresses can be entered using local language.
- The Address@Type attribute enumeration in ProfileData/TravelerInfo element includes Work and Home values.
- The Phone@Type attribute is required if a Phone element is sent.
- In uProfile, ProfileData/TravelerInfo @JobTitle is available only in traveler profiles and is used to indicate a job title for the traveler.
- Universal API supports the ability to enter local language for the following optional fields:
-
Local Language – 2 letter code supported by ISO-639-1 table
-
Local Language Given Name
-
Local Language Surname
-
Local Language username
-
Address – Traveler, Traveler Group, and Account addresses can be entered in a local language using the LocalLanguageName attribute. If a local language address is transmitted, the following applies:
-
If Other OtherStateProvince is submitted, then Type = LocalLangInvoice
- State and OtherStateProvince are mutually exclusive, and only one can exist in the database.
- When OtherStateProvince is stored using the uProfile.xsd, OtherStateProvince is not returned in a response that uses an old schema.
- If State data is passed using an older schema version, Universal API overrides OtherStateProvince if it is present.
If an address is entered for the traveler, the Address Type attribute is required. The following list contains Create Profile samples with addresses defined.
To accommodate unstructured addresses or international addresses the only additional required address field is a single address line.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>7873</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo Description="Traveler Profile" Title="Mr." Nickname="Tom" GivenName="Thomas" Surname="Traveler" Suffix="III" BirthDate="1960-01-01" Gender="M" VipStatus="false" Disability="None" HomeCityOrAirport="DEN">
<upr:Address Type="Mailing" >
<upr:AddressLine>6901 S Havana St., Centennial, CO, 80112 USA</upr:AddressLine>
</upr:Address>
</upr:TravelerInfo>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>7873</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo Description="Traveler Profile" Title="Mr." Nickname="Tom" GivenName="Thomas" Surname="Traveler" Suffix="III" BirthDate="1960-01-01" Gender="M" VipStatus="false" Disability="None" HomeCityOrAirport="DEN">
<upr:Address City="Centennial" State="CO" Country="US" Postal="80112" Type="Mailing">
<upr:AddressLine>6901 S Havana St.</upr:AddressLine>
</upr:Address>
</upr:TravelerInfo>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The following request contains traveler information in a local language.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="F8CCBE2E-UAPItest"/>
<upr:ProfileParent>
<upr:ProfileID>97934</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test" LocalLanguage="ja" LocalLanguageGivenName="ジュリア" LocalLanguageSurname="カヤッカー" LocalLanguageUsername="カヤック日本">
<upr:Address City="東京" OtherStateProvince="日本" Country="JP" Postal="1600005" Type="LocalLangInvoice" Provisioned="false">
<upr:AddressLine>865富士道路</upr:AddressLine>
<upr:AddressLine>アプト。 B4</upr:AddressLine>
</upr:Address>
</upr:TravelerInfo>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The following request contains a traveler's phone information.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>7873</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo Description="Traveler Profile" Title="Mr." Nickname="Tom" GivenName="Thomas" Surname="Traveler" Suffix="III" BirthDate="1960-01-01" Gender="M" VipStatus="false" Disability="None" HomeCityOrAirport="DEN">
<upr:Address City="Centennial" State="CO" Country="US" Postal="80112" Type="Mailing">
<upr:AddressLine>6901 S Havana St.</upr:AddressLine>
</upr:Address>
<upr:Phone Type="Work" Country="US" AreaCode="303" LocalNumber="397-5000" Extension="123" Description="Work Desk">
</upr:Phone>
</upr:TravelerInfo>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The ElectronicAddress@Name attribute is used for the email address. The Type attribute is also required if an Email element is sent.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>7873</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo Description="Traveler Profile" Title="Mr." Nickname="Tom" GivenName="Thomas" Surname="Traveler" Suffix="III" BirthDate="1960-01-01" Gender="M" VipStatus="false" Disability="None" HomeCityOrAirport="DEN">
<upr:Address City="Centennial" State="CO" Country="US" Postal="80112" Type="Mailing">
<upr:AddressLine>6901 S Havana St.</upr:AddressLine>
</upr:Address>
<upr:Phone Type="Work" Country="US" AreaCode="303" LocalNumber="397-5000" Extension="123" Description="Work Desk">
</upr:Phone>
<upr:ElectronicAddress Name="travelportgdshelp@travelport.com" Type="Business">
</upr:ElectronicAddress>
</upr:TravelerInfo>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Universal Profile supports several different forms of payment (FOP) that can be stored, maintained, or applied as a preference.
- Certificate
- Ticket Number
- Check
- Requisition: Government Requisition, Government Transportation, Special Government Requisition-Cash
- Misc Form Of Payment: Freeform, Miscellaneous, Misc Credit Card, Non-Standard Credit Card, Non-Refundable, Invoice, Credit
- Agency Payment
- United Nations
- Direct Payment
- Agent Voucher
- Cash
Two other forms of payment are also available and can be stored in the profile:
- E-Voucher: A valid payment when booking a car
- Guarantee: A valid payment when guaranteeing a hotel
- To Agency IATA
- To Another Agency IATA
@ExtractIndicator
A credit card extract indicator was added to the credit card form of payment (ProfileData/FormOfPayment/CreditCard) on all Profile Types (Agency, Branch Group, Branch, Agent, Account, Traveler Group, and Traveler). The ExtractIndicator can be used by Mid-Office Systems (MOS) to create a credit card extract. A credit card extract is a corporate agency tool that allows the agency to batch process credit card transactions on a regular basis into a fixed-width text file to upload in to the credit card companies for processing.
Note: Universal API does not create the Credit Card Extract File. It must be created by the MOS.
Set the indicator to "true" to extract the credit card details. The default is "null".
@Active
Active indicates whether the credit card is valid and available for use. If Active is false, the credit card cannot be used but it is available for reporting.
To specify a credit card form of payment in a Create Profile request, set the FormOfPayment@Type="CRECRD" and complete the CreditCard element.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>7873</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo Description="Traveler Profile" Title="Mr." Nickname="Tom" GivenName="Thomas" Surname="Traveler" Suffix="III" BirthDate="1960-01-01" Gender="M" VipStatus="false" Disability="None" HomeCityOrAirport="DEN">
<upr:Address City="Centennial" State="CO" Country="US" Postal="80112" Type="Mailing">
<upr:AddressLine>6901 S Havana St.</upr:AddressLine>
</upr:Address>
<upr:Phone Type="Work" Country="US" AreaCode="303" LocalNumber="397-5000" Extension="123" Description="Work Desk">
</upr:Phone>
<upr:ElectronicAddress Name="test@test.com" Type="Business">
</upr:ElectronicAddress>
</upr:TravelerInfo>
<upr:FormOfPayment Type="CRECRD">
<upr:CreditCard Type="VI" Number="1111222233334444" ExpDate="2013-12">
</upr:CreditCard>
</upr:FormOfPayment>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Traveler Identity Information (ProfileData/TravelerInfo) is an optional element that could be used to further identify a traveler or to verify access to secure data. If the element is transmitted, there are a few relationship rules. A key is required when updating or deleting existing data in TravelerIdentityInformation.
- MaskSecondaryIDCode may not be transmitted without the SecondaryIDCode attribute.
- If the security question is transmitted, then the corresponding security answer is required.
- If the security answer is transmitted then the corresponding security answer is required.
@SecondaryIdCodeA Secondary ID Code can be used to identify or verify a traveler’s profile when there are duplicate traveler names. The code contains 1–50 characters and is case sensitive.
Masking for Secondary ID Codes in the response can be indicated using @MaskSecondaryIdCode. Enumerated values for this attribute permit the ID Code to be unmasked, completely masked, or partially masked specifying which characters in the code sequence will be masked.
Error and Warning ResponsesIf an @MaskSecondaryIdCode is sent without @SecondaryIdCode an error is returned: Secondary Identification Code is required if a masking code has been indicated.
@SecurityQuestion1/SecurityAnswer1
SecurityQuestion2/SecurityAnswer2Security Questions can be used to verify a traveler's access to secured data such as profiles and itinerary data. Security Questions and Answers are 1-128 characters, respectively, and are not case sensitive. Alphanumeric text and special characters permitted.
A Security Question is not processed unless an Answer is also included in the request, and vice versa.
Error and Warning Responses
- If a SecurityQuestion1 or SecurityQuestion2 is sent without the corresponding SecurityAnswer value, an error is returned: Security Question data must be transmitted with corresponding Security Answer data.
- If a SecurityAnswer1 or SecurityAnswer2 is sent without the corresponding SecurityQuestion value, an error is returned: Security Answer data must be transmitted with corresponding Security Question data.
Error and Warning Responses
- Only one instance of TravelerIdentityInformation is supported. If a second set of data is sent, such as more than one secondary identification code or a third security question and answer, an error is returned: Only one instance of TravelerIdentityInformation is permitted.
- TravelerIdentityInformation data is submitted for any profile type other than a traveler, an error returned: Traveler Identity Information may only be applied to a traveler profile.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>255555</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test">
<upr:TravelerIdentityInformation SecondaryIdCode="MartinDX01" MaskSecondaryIdCode="Show First Four" SecurityQuestion1="Favorite Travel Provider" SecurityAnswer1="Travelport" SecurityQuestion2="Favorite Travel Product" SecurityAnswer2="Universal API"/>
</upr:TravelerInfo>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Traveler with a policy reference. This element supports the assignment of external Travel Policy rules. The policy rules applicable to a profile are applied to travel search results to determine if the search results are within or outside of applicable travel policy rules. For the ProfileData/PolicyReference element, the Type and Value attributes are required. Additionally, the Controlling Policy ID, which identifies the Profile ID that owns the policy, can be added to the request.
Attribute Name | Type | Required | Description |
---|---|---|---|
Key |
|
N/A |
|
Type |
String |
Y |
Valid Types are Employee Grade, Traversa Policy Group, and HRG Policy Group. |
Value |
String |
Y |
The value the employer wants associated with the specified type. Alphanumeric from 1-255 characters. |
Desc |
String |
N |
A description of the value. Alphanumeric from 1-255 characters. |
ControllingPolicyID |
Integer |
N |
A specific reference to a particular profile above Traveler. Any Profile ID within the same agency is permitted, with the exception of Traveler. The intent of this attribute is to identify the profile that is defining the policy. Alphanumeric from 0-255 characters. |
PriorityOrder |
restriction of xs:int |
N |
Priority order is the ranking order associated with the policy. If multiple PolicyReferences exist, this attribute is used to rank the priority of a policy (e.g., 1, 2, 3). Numeric from 1-99 characters. |
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:PolicyReference Key="21" Type="Policy Group" Value="AB123456"/>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
For the ProfileData/TravelDocument element, the Type and DocumentNumber attributes are required.
Other than Type and DocumentNumber, the other attributes are optional. However, the following relationships and validation exist.
- If IssuedDate and ExpirationDate are transmitted, then the IssuedDate cannot be a date later than the ExpirationDate.
- IssuedForGeoPoliticalAreaType and IssuedForGeoPoliticalCode must be submitted together or an error will be returned.
The following list contains Create Profile samples with travel documents defined.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:TravelDocument Type="Passport" DocumentNumber="9900000000" IssuedDate="2009-10-01" ExpirationDate="2092-10-31" LocationIssuedDescription="Free form text area" GivenName="JHR" MiddleName="Holl" Surname="Test" Gender="F" BirthDate="1964-07-27" PlaceOfBirth="US" Citizenship="US" IssuedByCountry="US" Residence="Free form text area to document residency." MilitaryStatus="None - This is a free form text area to document military status." PriorityOrder="1" IssuedForGeoPoliticalAreaType="Country" IssuedForGeoPoliticalAreaCode="US">
</upr:TravelDocument>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:TravelDocument Type="Visa" DocumentNumber="9926000000" IssuedDate="2014-02-01" ExpirationDate="2014-08-31" LocationIssuedDescription="Free form text area" GivenName="JHR" MiddleName="Holl" Surname="Test" Gender="F" BirthDate="1964-07-27" PlaceOfBirth="US" Nationality="US" IssuedByCountry="US" Residence="Free form text area to document residency." PriorityOrder="1" IssuedForGeoPoliticalAreaType="Country" IssuedForGeoPoliticalAreaCode="MA">
</upr:TravelDocument>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:TravelDocument Type="Drivers License" DocumentNumber="9926000000" IssuedDate="2009-10-01" ExpirationDate="2092-10-31" GivenName="JHR" MiddleName="Holl" Surname="Test" Gender="F" BirthDate="1964-07-27" Height="6" HeightUnit="Feet" Weight="30" WeightUnit="Kilograms" EyeColor="Blue - This is a free form text area to document eye color">
<upr:Address City="DEN" State="CO" Country="US" Postal="80401">
</upr:Address>
</upr:TravelDocument>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:TravelDocument Type="National Identity Card" DocumentNumber="9926000000" IssuedDate="2009-10-01" ExpirationDate="2092-10-31" LocationIssuedDescription="Free form text area" GivenName="JHR" MiddleName="Holl" Surname="Test" Gender="F" NationalIdentifier="US" BirthDate="1964-07-27" PlaceOfBirth="US" Citizenship="US" IssuedByCountry="US" Height="6" HeightUnit="Feet" Weight="30" WeightUnit="Kilograms" Residence="Free form text area to document residency." EyeColor="Blue - This is a free form text area to document eye color" MilitaryStatus="None - This is a free form text area to document military status.">
<upr:Address City="DEN" State="CO" Country="US" Postal="80401">
<upr:AddressLine>123 Main St</upr:AddressLine>
</upr:Address>
</upr:TravelDocument>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Accounting reference is a code for categorizing a traveler's bookings. Accounting reference codes are often used by the traveler's employer for budgeting, internal billing, or other cost accounting purposes. The Type and Value attributes are required.
-
The Type attribute values can be accessed using Util:ReferenceDataRetrieveReq TypeCode="AccountingReferenceType".
- Optional values include:
- AccountID is used to reference an Account Profile ID.
PriorityOrder is used to prioritize multiple accounting references within the traveler profile.
OwnerID identifies the ID of the profile that owns the Accounting Reference data.
- Active specifies that the accounting reference type is valid and available for use. When an accounting reference type is no longer valid, this attribute can be set to false to deactivate the accounting reference type, which maintains the information for reporting purposes. By default, this attribute is true.
-
Credit cards can be linked to accounting references, which can be used to ensure travelers use corporate credit cards for bookings. To link an accounting reference to a form of payment, the AccountingReference/PaymentDetailsRef@Value attribute should have the same value as the FormOfPayment@Key attribute for the credit card to which you want to link. In the response, an auto-generated key is returned that links the two together. Only credit card forms of payment can be linked to accounting references. One or more credit cards can be linked to one or more accounting references.
Prior to this release, the AccountingReference that contained the Cost Center could be created at the Account level and another one could be created at the Traveler level passing the AccountID, but there was no database check that the Cost Center actually existed at the Account level. With this release, the database is checked to ensure that the AccountingReference Type actually exists for the AccountID that was passed.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:AccountingReference Type="Cost Center" Value="CC123ABD" AccountID="259000" PriorityOrder="1" OwnerID="259000"/>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Commission reference requires the AgentName and/or AgentNumber.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:CommissionReference AgentName="JHR Test" AgentNumber="D105" AgentName="JHR Test" AgentNumber="D105" PriorityOrder="1" OwnerID="259000"/>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Commissions can be tracked per booking, per person, or per ticket. The Type, SupplierType, and Supplier attributes are required. The amount is optional and can be sent as either an amount or percentage.
Request with an amount defined
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:Commission Type="Per Ticket" SupplierType="Air" Supplier="F9" Amount="10.00" PriorityOrder="2"/>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Request with a percentage defined
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:Commission Type="Per Ticket" SupplierType="Air" Supplier="XX" Percentage="5.00" PriorityOrder="2"/>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Loyalty program membership names are supported in the ProgramName attribute of ProfileData/LoyaltyProgramEnrollment. ProgramName is applicable to traveler profile types. When ProgramName is supplied, the name is validated to ensure that the supplier type, supplier, and program name are in sync. For example, if the program name submitted is Marriott Rewards, the supplier type must be Hotel, and the supplier must be BR.
The ExternalIdentifier element is used as another way to identify a profile.
The ExternalIdentifier element is available in all ProfileInfo elements: AgencyInfo, BranchInfo, TravelerInfo, AgencyGroupInfo, BranchGroupInfo, AgentInfo, AccountInfo, TravelerGroupInfo, and TravelerInfo.
If ExternalIdentifier element is sent, the ExtID attribute is required.
Multiple instances of ExternalIdentifier element are allowed; however, only one instance of ExternalIdentifier without a Source value is allowed. An error is returned if two ExternalIdentifier elements without a Source value is sent.
Both ExtID and Source attributes allow alphanumeric text and special characters.
The ProfileCreateReq/ProfileLink element provides a one-way link from one profile to another or many existing traveler profiles, providing that the other traveler profiles are within the same agency.
When a traveler profile is linked to another traveler profile, the relationship must be defined (e.g., Supervisor or Relative). To define a profile link, the following information is required:
- Set the TravelerID attribute to the ID of the profile to which you are linking.
- Set Relationship to an enumerated value listed in the schema.
The other ProfileLink attributes are not used in the request. Rather, these attributes are populated in a create, retrieve, and modify response from the linked traveler's information. See the response for more information.
Traveler profiles can have multiple parent accounts and Override Data functionality allows data for the traveler to be maintained separately for each parent account.
Travelers can have a different Employee Id for more than one parent company. For example, a traveler who consults for both IBM and Microsoft. When an agent modifies the traveler's profile, the agent only sees data for the selected parent account.
Parent-specific overridden data is referred to as Proprietary Data.
Data can be overridden for the following:
- Nick Name
- Description
- External ID
- Additional ID
- Owning Agent Field Group and fields
- Employee ID field group and fields
- Budget Code field group and fields
- Department Code field group and fields
- Project code field group and fields
- Cost Center field group and fields
- Market Code field group and fields
- Authorization code field group and fields
- Custom Fields and Groups
- Phone Number
- Address
- Credit Card (FormOfPayment)
Data override is independent of template override, i.e., the data for any of the fields listed above can be overridden regardless of whether the field itself is overridden in the Traveler template. Proprietary data can be present only at the immediate parent level and tagged to the owner level in the OwnerID attribute. If there is no owner level identified for a particular piece of data, it is considered global data and is not proprietary.
Note: When performing a Profile Search, the data values from both global (ProfileParentID) and proprietary (OwnerID) data are considered.
The OwnerID attribute in available in the FieldData and FieldGroup elements and in the following FixedField elements:
- AccountingReference
- Address
- CommissionReference
- FormOfPayment
- Phone
- ElectronicAddress
The ProprietaryData element reflects the overridden data in the response elements TravelerInfo, ProfileDataAdd, and ProfileDataUpdate.
Traveler Preferences
There are five elements that support a traveler’s preference: Air, Vehicle, Hotel, Rail, and Other. All of the elements support attributes that are common to all preference types. All attributes are optional. However, some attributes or relationships between elements and attributes are validated, and rules exist for currency and money preferences.
- Paired attributes include:
- ArrivalGeopoliticalType/ArrivalGeopoliticalCode
- ConnectionGeopoliticalType/ConnectionGeopoliticalCode
- DepartureGeopoliticalType/DepartureGeopoliticalCode
- CabinTypeMiscTravel/CabinTypeRefCategory (Air Preference)
- SeatTypeMiscTravel/SeatTypeMiscRefCategory (Air Preference)
- SpecialEquipMiscTravel/SpecialEquipRefCategory (Vehicle Preference)
- SpecialRequestMiscTravel/SpecialRequestRefCategory (Vehicle Preference)
- VehicleTypeMiscTravel/VehicleTypeRefCategory
- The relationship between the elements FormOfPayement, LoyaltyProgramEnrollment, and Preference attributes PaymentDeatilsRef and LoyaltyProgramEnrollmentRef:
- It is possible to link FormOfPayment with PaymentDeatilsRef within the Preference elements by submitting the same keys for each attribute. The same relationship exists between LoyaltyProgramEnrollment and LoyaltyProgramEnrollmentRef.
- Currency and money:
- The following attributes are of data type Money: BenchMarkAmount, MaxFareAmount, MaxRoomRateAmount, and MaxCostAmount.
- Data type attributes require a currency code to precede the money value entered (e.g., USD100.00).
- When transmitting a Money attribute in the request, do not transmit the currency code attribute in the same request or an error will be generated. The currency code that is included in the Money data type is stored.
- If multiple Money attributes are transmitted in the same instance of a preference, the same currency code must be used. However, different preference instances can use different currency codes. For example, one hotel preference might specify British Pounds, while another specifies Euros.
The list below contains create traveler profile requests with traveler preferences and an alternate contact specified.
The Create Profile request below includes all attributes associated with Air Preference and includes the example of linking the keys between FormOfPayement and LoyaltyProgramEnrollment elements with Preference attributes PaymentDeatilsRef and LoyaltyProgramEnrollmentRef.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" Status="Active" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="F8CCBE2E-UAPItest"/>
<upr:ProfileParent>
<upr:ProfileID>97934</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo ExternalIdentifier="E123" AdditionalIdentifier="AD543" Description="Testing Preferences" MidOfficeID="MD675G" GivenName="JHR" Surname="Test">
<upr:Address City="Estes Park" State="CO" Country="US" Postal="80765" Type="Mailing" DeliveryDescription="Free form text area" Purpose="All" PriorityOrder="1" Provisioned="false" OwnerID="97934">
<upr:AddressLine>123 Old Fall River Road</upr:AddressLine>
</upr:Address>
<upr:Phone Type="Work" Country="01" AreaCode="303" LocalNumber="397555" Extension="12" Description="Free Form Text area" Location="DEN" Purpose="All" PriorityOrder="1" Provisioned="false" OwnerID="97934">
</upr:Phone>
<upr:ElectronicAddress Name="JHR@Test.com" Type="Business" Format="HTML" Purpose="All" PriorityOrder="1" Provisioned="false" OwnerID="97934">
</upr:ElectronicAddress>
</upr:TravelerInfo>
<upr:FormOfPayment Key="123" Type="CRECRD" Description="Link CC Key to Air Preference " PriorityOrder="1" OwnerID="97934">
<upr:CreditCard Type="AX" Number="370000000000000" ExpDate="2016-12" Name="JHR Test" CVV="115" ApprovalCode="A34CED" ExtendedPayment="Y" CustomerReference="JHR234FD" AcceptanceOverride="true" ThirdPartyPayment="false" BankName="World Bank" BankCountryCode="US" BankStateCode="CO" ExtractIndicator="true">
</upr:CreditCard>
</upr:FormOfPayment>
<upr:AirPreference BookingStartDate="2013-10-31" BookingEndDate="2014-11-15" DepartureGeoPoliticalAreaType="Country" DepartureGeoPoliticalAreaCode="GB" Emphasis="false" GeneralPreference="Freeform Text Area Like a description. 255 charters max length" Inclusive="true" LoyaltyProgramEnrollmentRef="123" OtherLoyaltyProgramNumber="XXX267DDD" PaymentDetailsRef="123" PreferencePaymentMethod="CRECRD" Purpose="Business" PriorityOrder="1" Supplier="BA" TripApproval="false" AccountCode="GBTUSA6754" ArrivalGeoPoliticalAreaCode="DEN" ArrivalGeoPoliticalAreaType="City" BenchMarkAmount="USD250.00" ConnectionGeoPoliticalAreaCode="NYC" ConnectionGeoPoliticalAreaType="City" ContractCode="XX67YAA" CorporateID="C4567" PseudoCityCode="4444" TravelStartDate="2014-01-01" TravelEndDate="2014-12-31" AirFareType="Advance Purchase Fares" CRSCode="1V" CabinTypeMiscTravel="F" CabinTypeRefCategory="ASC" EndingFlightNumber="700" Interline="false" MaxFareAmount="USD2000.00" MaxConnectionMinutes="180" MaxDomesticTripHours="6" MaxEmployeesPerFlight="4" MaxInternationalTripHours="15" SeatNumber="2B" SeatTypeMiscTravel="A" SeatTypeMiscRefCategory="AST" SSRCode="AAML" StartingFlightNumber="500">
</upr:AirPreference>
<upr:LoyaltyProgramEnrollment Key="123" SupplierType="Air" Supplier="XX" Number="XX123" ProgramName="Executive Club" Status="Elite" PriorityOrder="1">
</upr:LoyaltyProgramEnrollment>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The Create Profile request below includes all attributes associated with Vehicle Preference with the exception of the relationship between the elements FormOfPayement, LoyalatyProgramEnrollment, and Preference attributes PaymentDeatilsRef and LoyaltyProgramEnrollmentRef. Refer to the Air Preference example above for a request with this relationship.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" Status="Active" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="F8CCBE2E-UAPItest"/>
<upr:ProfileParent>
<upr:ProfileID>97934</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test">
</upr:TravelerInfo>
<upr:FormOfPayment Key="123" Type="CRECRD" Description="Link CC Key to Air Preference " PriorityOrder="1" OwnerID="97934">
<upr:CreditCard Type="AX" Number="370000000000000" ExpDate="2016-12" Name="JHR Test" CVV="115" ApprovalCode="A34CDE" ExtendedPayment="Y" CustomerReference="JHR234FD" AcceptanceOverride="true" ThirdPartyPayment="false" BankName="Bank" BankCountryCode="US" BankStateCode="CO" ExtractIndicator="true">
</upr:CreditCard>
</upr:FormOfPayment>
<upr:LoyaltyProgramEnrollment Key="123" SupplierType="Vehicle" Supplier="AL" Number="XX6754GyZ" Status="Regular" PriorityOrder="1">
</upr:LoyaltyProgramEnrollment>
<upr:VehiclePreference BookingStartDate="2013-10-21" BookingEndDate="2015-11-15" Currency="USD" DepartureGeoPoliticalAreaType="State/Province" DepartureGeoPoliticalAreaCode="CO" Emphasis="false" GeneralPreference="Free form Text Area like a descrpition fields" Inclusive="true" LoyaltyProgramEnrollmentRef="123" OtherLoyaltyProgramNumber="ABC345RF" PaymentDetailsRef="123" PreferencePaymentMethod="CRECRD" Purpose="Group" PriorityOrder="1" Supplier="AL" TripApproval="false" CorporateID="TP345CDE" PickUpStartDate="2014-01-01" PickUpEndDate="2014-12-31" RateCode="RC12345" SpecialEquipMiscTravel="CSR" SpecialEquipRefCategory="CEQ" SpecialRequestMiscTravel="NVS" SpecialRequestRefCategory="CEQ" VehicleTypeMiscTravel="T" VehicleTypeRefCategory="CCC">
</upr:VehiclePreference>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The Create Profile request below includes all attributes associated with Hotel Preference with the exception of the relationship between the elements FormOfPayement, LoyalatyProgramEnrollment, and Preference attributes PaymentDeatilsRef and LoyaltyProgramEnrollmentRef. Refer to the Air Preference example above for a request with this relationship.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" Status="Active" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="UAPItest"/>
<upr:ProfileParent>
<upr:ProfileID>712722</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test">
</upr:TravelerInfo>
<upr:LoyaltyProgramEnrollment Key="123" SupplierType="Vehicle" Supplier="AL" Number="XX6754GyZ" Status="Regular" PriorityOrder="1">
</upr:LoyaltyProgramEnrollment>
<upr:HotelPreference BookingStartDate="2013-10-31" BookingEndDate="2014-11-15" Currency="USD" DepartureGeoPoliticalAreaType="City" DepartureGeoPoliticalAreaCode="NYC" Emphasis="false" GeneralPreference="Free Form Text area used like a description field" Inclusive="true" OtherLoyaltyProgramNumber="ABCDEF345G3L" PreferencePaymentMethod="CRECRD" Purpose="Meeting" PriorityOrder="1" Supplier="IC" TripApproval="false" BedTypeMiscTravel="CS1" BedTypeRefCategory="HRM" CheckInStartDate="2014-01-01" CheckInEndDate="2014-12-31" CorporateDiscountNumber="TPRM5000" MultiLevelRateCode="Business" PropertyID="1520" RateCode="Corporate" SmokingRoom="false" SpecialRequestMiscTravel="01" SpecialRequestRefCategory="HTY">
</upr:HotelPreference>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The Create Profile request below includes all attributes associated with Rail Preference with the exception of the relationship between the elements FormOfPayement, LoyalatyProgramEnrollment, and Preference attributes PaymentDeatilsRef and LoyaltyProgramEnrollmentRef. Refer to the Air Preference example above for a request with this relationship.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" Status="Active" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="F8CCBE2E-UAPItest"/>
<upr:ProfileParent>
<upr:ProfileID>712722</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test">
</upr:TravelerInfo>
<upr:RailPreference BookingStartDate="2013-10-31" BookingEndDate="2014-11-15" DepartureGeoPoliticalAreaType="Continent" DepartureGeoPoliticalAreaCode="AUSNZC" Emphasis="true" GeneralPreference="Free Form Text Area like a description field." Inclusive="true" OtherLoyaltyProgramNumber="ABCDEFHL9C" PreferencePaymentMethod="CRECRD" Purpose="Group" PriorityOrder="1" Supplier="2V" TripApproval="false" AccountCode="234567" ArrivalGeoPoliticalAreaCode="WORLDW" ArrivalGeoPoliticalAreaType="World" BenchMarkAmount="USD250.00" ConnectionGeoPoliticalAreaCode="AU" ConnectionGeoPoliticalAreaType="Country" ContractCode="5765R" CorporateID="TPR345AAA" PseudoCityCode="XX00" TravelStartDate="2014-01-01" TravelEndDate="2014-12-31" CabinType="First" DomesticTripJourneyHours="20" EndingTrainNumber="821" InternationalTripJourneyHours="36" MaxEmployeesPerTrain="10" MaxFareAmount="USD800.00" GenderCompartmentType="Female" CoachCompartmentType="Reclining" SeatArrangementType="Power Plug" SeatingType="Sleeper" SeatPositionMiscTravel="W" SeatPositionRefCategory="AST" Smoking="false" StartingTrainNumber="659" TicketFulfillmentType="Ticketless">
</upr:RailPreference>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The Create Profile request below includes all attributes associated with Other Preference with the exception of the relationship between the elements FormOfPayement, LoyalatyProgramEnrollment, and Preference attributes PaymentDeatilsRef and LoyaltyProgramEnrollmentRef. Refer to the Air Preference example above for a request with this relationship.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" Status="Active" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="F8CCBE2E-UAPItest"/>
<upr:ProfileParent>
<upr:ProfileID>712722</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test">
</upr:TravelerInfo>
<upr:OtherPreference Purpose="Group" PriorityOrder="1" TripApproval="false" Inclusive="true" OtherSupplierType="Taxi" BookingStartDate="2013-10-15" BookingEndDate="2014-11-15" UsageStartDate="2014-01-01" UsageEndDate="2014-12-31" SupplierName="XX" GeoPoliticalAreaType="Country" GeoPoliticalAreaCode="US" PreferencePaymentMethod="CRECRD" MaxCostAmount="USD200.00" GeneralPreference="Free form text Area">
</upr:OtherPreference>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The AlternateContact element identifies an individual who would be an alternate contact for the traveler. The AlternateContact element and supporting attributes regarding name fields, address, phone, and electronic address function just like the traveler data fields. In addition to the required fields associated with traveler, Type, which indicates the relationship to the traveler, is required.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="F8CCBE2E-UAPItest"/>
<upr:ProfileParent>
<upr:ProfileID>259016</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test">
</upr:TravelerInfo>
<upr:AlternateContact Type="Emergency" GivenName="Maxwell" Surname="Test" OtherName="Douglas" Nickname="Max" PriorityOrder="1">
<upr:Address City="Lancaster" State="SC" Country="US" Postal="23005" Type="Mailing" DeliveryDescription="Free form text area to add additional information." Purpose="All" PriorityOrder="1">
<upr:AddressLine>123 Beach St.</upr:AddressLine>
</upr:Address>
<upr:Phone Type="Mobile" Country="01" AreaCode="202" LocalNumber="1239876" Extension="012" Description="Free form text area to further describe the phone." Location="MDT" Purpose="Business" PriorityOrder="1">
</upr:Phone>
<upr:ElectronicAddress Name="Max@test.com" Type="Home" Format="HTML" Purpose="Personal" PriorityOrder="1">
</upr:ElectronicAddress>
</upr:AlternateContact>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
The LoyaltyProgramEnrollment element stores loyalty program information for Air, Vehicle, Hotel, Rail, and Other. The minimum required data is:
- Supplier Type
- Supplier
- Number
Note: Supplier Type and Supplier are validated. The Type and Supplier must be a valid combination.
The following example includes the minimal required information for a loyalty program information in a create profile request.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" Status="Active" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>97934</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:LoyaltyProgramEnrollment SupplierType="Air" Supplier="XX" Number="XX012AC4"/>
<upr:LoyaltyProgramEnrollment SupplierType="Vehicle" Supplier="11" Number="111CZD45"/>
<upr:LoyaltyProgramEnrollment SupplierType="Hotel" Supplier="22" Number="227865900"/>
<upr:LoyaltyProgramEnrollment SupplierType="Rail" Supplier="33" Number="2V765D4G"/>
<upr:LoyaltyProgramEnrollment SupplierType="Other" Supplier="44" Number="440098F3"/>
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>
Optional loyalty program information includes:
- Program Name is validated and must be a valid match against Type and Supplier
- Status
- Priority Order
The following request includes the required and optional loyalty program information.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<upr:ProfileCreateReq ProfileType="Traveler" Status="Active" ReturnProfile="true" xmlns:upr="http://www.travelport.com/schema/uprofile_v37_0" xmlns:com="http://www.travelport.com/schema/common_v40_0">
<com:BillingPointOfSaleInfo OriginApplication="API"/>
<upr:ProfileParent>
<upr:ProfileID>97934</upr:ProfileID>
</upr:ProfileParent>
<upr:ProfileData>
<upr:TravelerInfo GivenName="JHR" Surname="Test"/>
<upr:LoyaltyProgramEnrollment SupplierType="Air" Supplier="XX" Number="XX012AC4" ProgramName="EarlyReturns" Status="Elite" PriorityOrder="1" />
<upr:LoyaltyProgramEnrollment SupplierType="Vehicle" Supplier="11" Number="A1CZD45" ProgramName="Fastbreak" Status="Premier" PriorityOrder="1" />
<upr:LoyaltyProgramEnrollment SupplierType="Hotel" Supplier="22" Number="227865900" ProgramName="Marriott Rewards" Status="Super Elite" PriorityOrder="3" />
<upr:LoyaltyProgramEnrollment SupplierType="Rail" Supplier="33" Number="33765D4G" ProgramName="Amtrak Guest Rewards" Status="Platinum" PriorityOrder="4" />
<upr:LoyaltyProgramEnrollment SupplierType="Other" Supplier="44" Number="440098F3" ProgramName="Yellow Taxi" Status="Regular" PriorityOrder="5" />
</upr:ProfileData>
</upr:ProfileCreateReq>
</soapenv:Body>
</soapenv:Envelope>