def verify_signature(payload, signature_header, secret): computed = hmac.new(secret.encode(), payload, hashlib.sha256).hexdigest() return hmac.compare_digest(computed, signature_header) The payload wraps the native NDC OrderView inside an APTRA envelope. This standardization means you can write one handler for multiple airlines. Chapter 5: Error Handling and Debugging The APTRA Advance NDC Developer’s Guide includes an exhaustive 50-page appendix of error codes. This is arguably its most valuable section. 5.1 Common Error Classes | HTTP Status | APTRA Code | Description | Developer Action | |-------------|------------|-------------|------------------| | 400 | NDC-1001 | Missing mandatory element (e.g., PTC ) | Validate request against JSON schema (provided in /schemas folder) | | 409 | NDC-2015 | Offer expired | Re-run AirShopping | | 402 | NDC-3010 | Payment authorization failed | tokenize card again or use different FOP | | 500 | NDC-8005 | Airline NDC gateway timeout | Implement retry with exponential backoff (max 3 retries) | 5.2 Debugging with Audit Logs Enable audit.logging=true in the configuration. The guide explains how to export raw NDC XML/JSON requests and responses sent to the airline’s endpoint. This is critical for airline dispute resolution.
Introduction In the rapidly evolving landscape of airline retailing, the shift from traditional EDIFACT messaging to New Distribution Capability (NDC) is no longer a luxury—it is a necessity. For developers working within the NCR Corporation ecosystem, the APTRA Advance NDC Developer’s Guide is the definitive blueprint for building, testing, and deploying next-generation travel commerce solutions. aptra advance ndc developer-s guide
The guide provides a mapping table showing how to translate your internal SearchCriteria object into the NDC AirShoppingRQ . APTRA Advance auto-injects the PartyID and Sender details from the tenant configuration. This is arguably its most valuable section
The guide mandates that you validate the X-APTRA-Signature header on every incoming webhook. The signature is an HMAC-SHA256 of the raw payload, using your tenant secret as the key. This is critical for airline dispute resolution
APTRA Advance is NCR’s flagship airline retailing platform, designed to act as a modern Point-of-Sale (POS) and booking engine for travel agencies, call centers, and airport kiosks. The "Advance NDC" component bridges the gap between legacy passenger servicing systems and the XML-driven, API-centric world of IATA’s NDC standard.
"core": "travelers": [ "id": 1, "type": "ADT", "count": 1 ], "slices": [ "origin": "JFK", "destination": "LHR", "departureDate": "2025-06-15" ] , "shoppingCriteria": "lowestFareOnly": false
APTRA Advance returns a normalized Offer object. The guide emphasizes how to handle OfferItems with bundled ancillaries (bags, seats, wifi). Use the offerId from this response in the next step. 3.2 Workflow B: Offer Price (Revalidation) Endpoint: POST /v1/ndc/offer-price