▸ Payments Integration · Payment-Gateway Engineering
The fuel-payment layer I built for Iraq.
Three Iraqi rails — FIB QR, QI Card, NassWallet — reconciling into one in-app wallet, paid at the pump. Inside WAQOOD, a Tornet team product.
- FIB QR
- QI Card
- NassWallet
- In-app wallet
WAQOOD's payment layer: a station QR authorizes a fuel payment across three Iraqi rails — FIB QR, QI Card and NassWallet — settling into one in-app wallet.
The brief
Buying fuel in Iraq and the Kurdistan Region meant cash — exact change at the pump, no record, no choice of how to pay. A Tornet team, led by a colleague, built WAQOOD to fix the whole journey: find a station, compare live prices, and pay from your phone.
My part was the paying. I built WAQOOD's payment layer — three Iraqi rails (FIB QR, QI Card and NassWallet) and an in-app wallet — so a tank of fuel settles digitally, with the bank confirmations and reconciliation that make it trustworthy. The app, maps and comparison views around it are the team's; the rails underneath are mine.
The payment layer
Three rails, one wallet.
Each rail clears differently — FIB's bank QR, QI Card's redirect, NassWallet's gateway — so I built one reconciliation path: a signed webhook confirms the charge, the in-app wallet settles in IQD, and a pending transaction that never confirms times out cleanly instead of stranding a driver's money.
✓ signed webhook · payment.confirmed · pending-tx timeout
The in-app wallet I built — a running IQD balance, quick top-ups, and the transaction history every rail reconciles into.
The team's product
The product the payments serve.
The rails live inside WAQOOD — a Tornet team product, led by a colleague. The app, the maps, the station and comparison views, the multilingual experience and the design are the team's work; this is the context my payment layer runs in.
- 4
- fuel types
- 5
- payment methods
- 3
- locales · en/ar/ku
- 24
- data models
- 32
- migrations
- 112
- API routes
Platform built by the Tornet team.
Day and night
The team's app follows the driver day or night — the dark map swaps to muted tiles so station pins and availability stay legible. (Verified live on waqood.co.)
What I take from it
Three live payment rails and a wallet, built for how Iraq actually pays — bank QR, card redirects and a local gateway reconciled into one balance a driver can trust. It's a small, sharp slice of a bigger team product, and the slice that turns a forecourt full of cash into a tap.







