How to Add Markup and Commission in a B2B Travel Portal in 2026
By Arjun Kapoor (Arjun Kapoor tracks error fares, mileage runs and award-chart sweet spots for Indian travellers. He moderates two Telegram fare-alert channels and has booked Europe round-trips at sub-₹25,000 four times in the last 24 months.) · Published · Last updated · 9 min read
Markup is the single biggest lever you control in a B2B portal, and most agents either leave money on the table or price themselves out of a sale. Here's how to set it right in 2026 — fixed vs percentage, global vs per-booking, what your client actually sees, and how GST sits on top.
Quick answer
In a B2B travel portal you control your selling price through markup — an amount you add on top of the net (wholesale) fare you're shown. You can set it as a fixed rupee value or a percentage, and apply it either as a global rule across all bookings or override it per booking at the time of issue. Commission, by contrast, is what a supplier or airline pays you out of their price; service fee is a separate line you charge the client for your effort. As of 2026, GST applies to your earning (markup/commission/fee), not the whole ticket — confirm the exact treatment with your CA.
Markup vs commission vs service fee — stop mixing them up
These three words get used interchangeably on the trade floor, and that's exactly why agents undercharge or over-promise. They are not the same thing.
- Markup: Money you add on top of the net fare the portal shows you. You see a Delhi–Mumbai net fare of, say, a certain amount; you add your markup; the client pays net + markup. You set it, you control it, and it's invisible to the customer as a separate line unless you choose to show it.
- Commission: Money a supplier pays you from their own price. In the classic published-fare world an airline paid the agent a cut; today most domestic carriers have moved to net/zero-commission, so your margin usually comes from markup on net fares, not from airline commission. Some series and consolidator deals still carry a built-in commission baked into the net rate.
- Service fee (convenience/handling fee): A flat charge you levy for your work — issuing, re-issuing, after-hours support. It's transparent, shows on the invoice, and is the cleanest way to protect margin on thin fares where a percentage markup would look ugly.
The practical takeaway: in 2026 most of your money on flights comes from markup on net fares plus a service fee, not airline commission. Read our deeper breakdown in net fares vs published fares if the net-fare model is new to you.
Fixed vs percentage: which to use and when
Every decent B2B portal lets you express markup two ways. Picking the wrong one quietly costs you on every transaction.
Fixed (flat rupee): The same amount on every ticket regardless of fare. Predictable, easy to explain, and it protects you on cheap fares — a flat fee on a low-cost domestic hop is still real money. The downside: on an expensive international ticket a flat amount can leave a lot on the table.
Percentage: Markup scales with fare value. Great on high-value international and premium-cabin bookings where a percentage captures more margin. The risk: on a sudden cheap fare a percentage gives you peanuts, and on a very expensive fare it can blow your price past the client's budget and lose the sale.
| Scenario | Better choice | Why |
|---|---|---|
| Low-cost domestic (single sector) | Fixed | Protects a minimum margin on cheap fares |
| International / long-haul | Percentage (with a floor) | Scales margin with ticket value |
| Corporate / volume client | Lower fixed or % + service fee | Stay price-competitive, recover effort via fee |
| Premium cabin | Percentage | Higher fares justify proportional margin |
The pros run a hybrid: a percentage markup with a minimum floor (e.g., “5% or a flat minimum, whichever is higher”) and sometimes a cap so a freak high fare doesn't price you out. Most modern portals support exactly this floor-and-cap logic.
Global rules vs per-booking overrides
This is where a portal earns its keep. You should not be typing a markup by hand on every single booking.
Global markup rules are set once and apply automatically. The good portals let you slice these rules by:
- Supplier / source: different markup on series fares vs GDS vs LCC net fares
- Airline: a different rule for IndiGo vs Air India vs Akasa vs SpiceJet
- Route or sector type: domestic vs international, or specific high-traffic routes
- Sub-agent / staff tier: a head agent sets a base markup, then allows sub-agents to add their own on top
- Booking class / cabin: economy vs premium
Per-booking override lets the person issuing the ticket bump the markup up or down for a specific deal — to match a competitor's quote, reward a loyal client, or grab extra margin on a desperate last-minute booking. The smart setup is a sensible global default that handles 90% of bookings on autopilot, with a controlled override for the exceptions. Lock down who can override and by how much, or your margin discipline evaporates the moment a junior staffer wants to win a booking.
If you run sub-agents, this layering matters a lot — see how the sub-agent model works and how agency wallets and credit tie into who can issue and at what price.
What the client actually sees on the fare
One of the first portal settings to get right: does the customer see your markup as a separate line, or rolled into the fare?
Most B2B portals default to net rates hidden from the end customer — the client sees one all-in selling price and never sees the wholesale fare you bought at. That's usually what you want. If a leisure client sees a net fare next to your selling price, you'll spend the whole call defending your margin.
You typically have three display modes:
- All-in (markup hidden): client sees a single fare. Cleanest for leisure and walk-in business.
- Base + fee shown: fare on one line, your service/convenience fee on another. Honest and common for corporate clients who want the breakup.
- Full breakup: base fare, taxes, fees, your charge — used where the client (often corporate or GST-registered) needs every component for their own accounting and input-tax-credit claims.
Corporate and GST-registered clients increasingly want the breakup so they can claim input tax credit, so don't assume hiding everything is always right. For walk-in leisure, all-in keeps things simple. Match the display to the client, not to habit.
GST on your markup — the part agents get wrong
Here's the rule that trips people up: GST applies to what you earn, not to the whole ticket. As of 2026, an air travel agent charges 18% GST on their earning — the commission, markup or service fee — not on the full fare the passenger pays. The full ticket value passes through; only your slice is your taxable supply.
The trade commonly uses the deemed-value method under the GST valuation rules for air travel agents: the value of your service is taken as 5% of the basic fare for domestic bookings and 10% of the basic fare for international, with 18% GST charged on that deemed value. Alternatively, if you bill as a pure agent, the ticket cost is shown as a reimbursement and only your service fee carries 18% GST. (As of Budget 2026 — confirm the exact method and rate that applies to you with your CA or against CBIC notifications, because the rules do change.)
What this means for portal setup:
- Decide whether your markup is treated as part of the fare or as a separate taxable service fee — it changes how GST is computed and invoiced.
- Make sure your portal generates a GST-compliant invoice that shows the right value, your GSTIN, and the correct tax line. A portal that auto-produces this saves you a monthly headache.
- If your client is GST-registered and wants input tax credit, the breakup on the invoice has to be clean.
Selling overseas tour packages? Note the separate TCS rule: as of Budget 2026, TCS on overseas tour packages is a flat 2% from 1 April 2026 — the earlier threshold slabs were removed. That's collected on top, separate from your GST, and again, verify with your CA. We go deeper in GST and TCS on air tickets.
Best practices: stay competitive without bleeding margin
Setting markup is easy. Setting it so you win bookings and keep margin is the actual skill. A few hard-won rules:
- Always have a floor. Never let a percentage markup drop you below a minimum rupee value per ticket. Cheap fares are where agents accidentally work for free.
- Separate the fee from the markup on thin fares. On a rock-bottom LCC fare, a visible flat service fee looks more honest than a fat percentage and is easier to defend.
- Tier by client, not by mood. Build markup rules for leisure, corporate and sub-agent traffic and let the portal apply them automatically. Don't re-decide on every call.
- Match the route's competition. On hyper-competitive metro routes, thinner markup + volume wins; on thin regional or last-minute sectors you have room. Check live pricing on our routes pages to see where competition is fierce.
- Review monthly. Pull a report of average margin by airline and route, and adjust the global rules. A markup you set in January may be losing you bookings by June.
- Don't forget ancillaries. Seats, bags and meals carry their own margins — know each carrier's fare families before you quote. See IndiGo fare types, Air India fare types, Akasa fare types and SpiceJet fare types.
And the obvious one agents still miss: your markup is only as good as the net fare under it. A 2% markup on a genuinely cheaper net fare beats a 6% markup on an inflated one. Sourcing the lowest net fare across suppliers is half the battle — which is exactly the case for consolidating your suppliers.
How FlightGPT Partner helps
Most agents juggle a separate login per airline and a separate one per consolidator, then re-key markup into each. That's where margin and time leak. FlightGPT Partner is FlightGPT's B2B portal — one login that aggregates series fares, group fares, fixed departures and wholesale/net fares across IndiGo, Air India, Akasa and SpiceJet, so you compare net rates side by side and add your markup once.
On the pricing side it gives you what this whole article is about: markup control — fixed or percentage, global rules or per-booking overrides, with an agency wallet for advance-based issuing, GST invoicing built in, and white-label options so your own brand sits on the customer-facing fare. The end customer never sees the net rate; they see your price.
It's one strong option, not the only one — weigh it against the broader B2B portal field and the TBO vs Riya vs EaseMyTrip comparison before you commit. The point is to consolidate suppliers and set markup in one place, whichever portal you choose.
Frequently asked questions
What's the difference between markup and commission in a B2B portal?
Markup is money you add on top of the net fare the portal shows you — you set it and you control the final selling price. Commission is money a supplier or airline pays you out of their own price. In 2026, with most domestic carriers on net/zero-commission, your margin on flights usually comes from markup on net fares plus a service fee, not from airline commission.
Should I set markup as a fixed amount or a percentage?
Use fixed (flat rupee) on cheap domestic fares so you always keep a minimum margin, and percentage on high-value international or premium bookings where margin should scale with fare. The best setup is a hybrid: a percentage with a minimum floor (and sometimes a cap) so you're never working for free on cheap fares or priced out on expensive ones.
Does my customer see the markup I added?
Usually no — most B2B portals hide the net rate by default and show the client a single all-in selling price. You can switch to showing your service fee on a separate line, or give a full base-plus-tax-plus-fee breakup, which corporate and GST-registered clients often want so they can claim input tax credit. Match the display mode to the client.
How is GST charged on my markup or service fee?
As of 2026, GST is 18% on your earning — the markup, commission or service fee — not on the full ticket. The trade commonly uses a deemed value of 5% of basic fare for domestic and 10% for international with 18% GST on that, or bills as a pure agent so only the service fee carries GST. Rules change, so confirm the exact method with your CA or against CBIC notifications.
Can I set different markup for different sub-agents or staff?
Yes, on most modern portals. A head agent sets a base markup, then allows sub-agents to layer their own markup on top, with limits on how far anyone can override at the time of issue. This lets you keep margin discipline across a team while still letting individual agents flex to win a specific booking.
Is TCS the same as GST on my markup?
No — they're separate. GST (18%) applies to your earning on the service. TCS is a tax collected on certain transactions; as of Budget 2026, TCS on overseas tour packages is a flat 2% from 1 April 2026, with the earlier threshold slabs removed. It's collected on top of the package and is separate from your GST. Verify both with your CA, since rates and rules are revised periodically.