Travel Agency Service Fee API Reference
|
POST |
documents/reservationworkbench/{reservationWorkBenchID}/agencyservicefees/list/ Base path: Pre-production https://api.pp.travelport.net/11/air/ Production https://api.travelport.net/11/air/ |
Related Content: Air Booking Guide
GDS only, not supported for NDC.
Travel Agent Service Fees (TASF) can be added to a PNR within a workbench. Up to 5 TASFs entries are supported per PNR. Any request exceeding this limit will be rejected with the error: "AGENCY SERVICE FEE LIST REQUEST CANNOT EXCEED A MAXIMUM OF FIVE AGENCY SERVICE FEES".
Refer to the TASF section of the Air Booking Guide for more information about agency service fees.
Travel Agent Service Fees workflow
|
Step # |
Booking Workflow Step |
Description and Notes |
API Reference |
|---|---|---|---|
|
1 |
Post-Commit Workbench |
Initiate a workbench for the existing booking. |
|
|
2 |
Form of Payment |
Add Form of Payment that will be used to pay for TASF fees. |
|
|
3 |
TASF |
Specify the amount of the fee and the traveler to which the fee belongs. |
Below |
|
4 |
Payment |
Specify the amount to be charged to the form of payment. |
|
|
6 |
Commit |
Commit changes to the booking. |
Commit Workbench API Reference
|
Request
As part of the request requirements, also see Authentication and Common Flights API Headers.
Query Parameters
None.
Request Body
|
Object |
Description |
Required/Optional |
|---|---|---|
|
AgencyServiceFees |
Wrapper object for request. Send with @type value AgencyServiceFee. Multiple TASFs can be added per passenger, but a maximum of 5 TASFs can be added per booking |
Required |
|
Amount |
Top level object for amount of TASF. |
Required |
|
Currency code that applies to the payment. |
Required |
|
The smallest unit of currency for the currency in code. For example; the smallest denomination in USD is the cent, which is 1/100 of a USD, and the minor unit value is 2. Not all currencies have a minor unit. |
Required |
|
Enum. The system requesting or returning the currency code. Supported values are Supplier, Charged, Requested. |
Required |
|
true indicates the charge is approximate, false indicates the charge is an exact price. |
Required |
|
The amount of the charge for this TASF, in the currency noted in the code object. |
Required |
|
TravelerRef |
String array. Send the TravelerRef id of the traveler to which this TASF applies. |
Required |
Response
|
Object |
Description |
|---|---|
|
AgencyServiceFeeListResponse |
Top-level object for response. Includes the AgencyServiceFees object. |
|
AgencyServiceFees |
Array. One instance returned for each TASF. Includes the Amount object. Key value pairs: id: Internal ID for this service fee. Description: Text returned from the GDS. |
|
Amount |
Returns the Amount information sent in the request. |
|
TravelerRef |
Returns the traveler ref ID sent in the request. |
Errors
Below are possible errors returned:
-
REFERENCED TRAVELER DOES NOT EXIST - Traveler ref not found (TRAVELER_NOT_PRESENT)
-
NEED PASSENGER NAME - Missing person name on traveler
-
FORM OF PAYMENT REQUIRED - No formOfPayment on reservation
-
DOCUMENT ISSUANCE FAILED. PAYMENT DATA IS INVALID. - No payment, or FOP link missing (PAYMENT_INVALID)
-
INTERNAL_SERVER_ERROR (constant) - KLR transformation failures (request/response)
Example Request
{
"AgencyServiceFees": [
{
"@type": "AgencyServiceFee",
"Amount": {
"value": 145.67,
"code": "AUD",
"minorUnit": 2,
"currencySource": "Supplier",
"approximateInd": true
},
"TravelerRef": "travelerRefId_1"
},
{
"@type": "AgencyServiceFee",
"Amount": {
"value": 133.56,
"code": "AUD",
"minorUnit": 2,
"currencySource": "Supplier",
"approximateInd": true
},
"TravelerRef": "travelerRefId_1"
}
]
}
Example Response
{
"AgencyServiceFeeListResponse": {
"AgencyServiceFees": [
{
"@type": "AgencyServiceFee",
"id": "agencyServiceFee_1",
"Description": "COMPLETE",
"Amount": {
"value": 145.67,
"code": "AUD",
"minorUnit": 2,
"currencySource": "Supplier",
"approximateInd": true
},
"TravelerRef": "travelerRefId_1"
},
{
"@type": "AgencyServiceFee",
"id": "agencyServiceFee_2",
"Description": "COMPLETE",
"Amount": {
"value": 133.56,
"code": "AUD",
"minorUnit": 2,
"currencySource": "Supplier",
"approximateInd": true
},
"TravelerRef": "travelerRefId_1"
}
]
}
}