AddisFly - Confirming Partner Calculations — PNR Codes, Fares and Fees
Partners send us lines like J23Y4V = 10293+200 and a grand total, and ask us to confirm. Two of these sat open for weeks because nobody knew where to look. This is the check, and it takes about three minutes.
The formula
Every booking is:
system fare + service fee = total
Those are three fields on the Booking: system_fare, service_fee_amount, total_amount. Nothing else enters a partner's line.
Why one PNR can hold several bookings
This is what makes a list look wrong when it is right. A PNR with three passengers, or a trip booked in parts, is three Booking records, each with its own fare and its own fee. The partner sums them and sends one line.
Real example from a settlement list (September 2026):
| Partner's line | What we hold | Why |
|---|---|---|
J25C0R = 32,553+600 |
3 bookings × (10,851 + 200) | three passengers |
J25K4F = 22,597+400 |
20,507+200 and 2,090+200 | two bookings on one PNR |
J249Q8 = 83,521+1,200 |
one booking, matches exactly | — |
So sum by PNR before comparing. A line that does not match on the first booking usually matches once the rest are added.
The three-minute check
- Open the Booking list, filter PNR by the code in the partner's line.
- Read
system_fare,service_fee_amount,total_amounton every row that comes back. - Add the fares, add the fees, compare with their line.
- Repeat per line, then compare grand totals.
When a line really does differ
Check, in this order:
- Route type and band. The fee follows the route: Domestic 200, Regional 1,000 up to 70,000, International 1,500 up to 70,000, Regional 70,001–100,000 2,200. Void, Exchange, Reissue and Refund are flat 1,000 on the standard card. Full tables: Ticketing Service Fees.
- Which rate card applied —
service_fee_rule_applied. Partners are often on Non-IATA Standard Rates, not the retail card, and the numbers differ. - Was the fee set by hand —
service_fee_is_manual. A manual fee overrides the band, and the reason should be inservice_fee_note. - Was it corrected —
fee_corrected,fee_correction_reason.
The partner is not automatically wrong. In the September list above, six of seven lines matched to the birr. The seventh, J25PN7, was a domestic ticket of 1,100 carrying a 1,000 fee where the domestic band is 200 — the partner's figure was right and ours was the error. The 800 difference was the entire gap between their total and ours.
Replying
Say which lines matched, name the one that did not, state which figure is correct, and say what happens next. For example:
Six of the seven lines match our records exactly. On J25PN7 we show a service fee of 1,000 against a domestic ticket of 1,100; the domestic fee is 200, so your figure is correct and ours is being corrected. Your total of 184,143 stands.
Never adjust a fee to make a list balance. Correct the booking, with a reason, and let the total follow.