> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://bcdtravel.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://bcdtravel.ferndocs.com/_mcp/server.

# Pricing

## Overview

The `pricing` endpoint validates whether a flight/fare is still available and retrieves a detailed price breakdown including optional services. This is a required step between fare search and booking.

## Use case

This endpoint must be used on the back-end of your flight booking application to validate whether a flight/fare is still available. It can also be used on a "details" tab to provide users with a list of optional services to add to a flight/fare, such as extra bags. The response contains a detailed breakdown of the fare and optional services (e.g. extra bags) that can be added, including baggage policies, discounts, and basic fare information (similar to the `fare_search` endpoint).

## What's next?

If optional services (i.e. extra bags) are selected by the user, submit a new request via this endpoint with `optional_service_keys` to get an updated total fare price. The `fare_group_key`, `flight_option_keys`, and `optional_service_keys` should be reused in the `book` endpoint's request to book the flight/fare.

## Key parameters

| Parameter               | Type   | Required | Description                                     |
| ----------------------- | ------ | -------- | ----------------------------------------------- |
| `fare_group_key`        | string | yes      | The fare group key from `fare_search` response  |
| `flight_option_keys`    | array  | yes      | Flight option keys from `fare_search` response  |
| `optional_service_keys` | array  | no       | Selected optional services (e.g. extra baggage) |

## Response structure

The response includes:

* `total_price` — updated total price after validation
* `price_breakdown` — detailed breakdown of base fare, taxes, fees, and surcharges
* `optional_services` — available add-ons with pricing:
  * Baggage (extra checked bags, oversize, overweight)
  * Seat selection
  * Meal preferences
  * Priority boarding
* `baggage_policy` — included baggage allowance
* `fare_rules_summary` — basic change/refund eligibility

## Integration notes

> **Warning**
>
> This endpoint is mandatory before booking. Never attempt to book a flight without first validating it through the pricing endpoint — fares can expire within minutes of the original search.

If the fare is no longer available, the endpoint returns an error. Your application should handle this gracefully by redirecting the user back to the search results with an appropriate message.