Skip to content
TripStream
Collaborative group travel

For the group that
actually makes
it past the
planning chat.

TripStream is the platform Bangladesh's Facebook-organised travel groups should have had a decade ago. Co-edit the itinerary in real time. Vote on the food. Collect deposits through bKash and bank transfer, held in Hold.bd escrow. Settle expenses without the spreadsheet. Come home to an album that built itself.

Services
13
Stack
.NET 10, Next 16
Maps
OSM + ORS 9.7
Domain
tripstream.net
Itinerary
Sylhet, 3 nights, group of 10
Budget
12,000 BDT
  • Day 1, FriDhaka to Sylhet via train, Pansi for dinnerRouted
  • Day 2, SatRatargul boat tour, Jaflong, tea estate sunsetVoted
  • Day 3, SunSreemangal rainforest, seven-layer teaVoted
  • Day 4, MonSylhet to Dhaka, late train, expenses settledAuto album
Organiser
Anika R.
Joined
8 of 10
Deposit
Hold.bd
Trip 042
Mock-up
Definition

What is TripStream?

TripStream is a community-first social platform for group travel, built for Bangladesh first. It lets anyone become a tour operator, lets a group co-edit the itinerary in real time, and holds the deposit in escrow until the trip clears the review window.

It is a KaritKarma product, launching at tripstream.net. Wenme owns authentication. Darwan enforces RBAC at the YARP gateway. bKash and bank-transfer collection feed the Payment service. Hold.bd custodes the escrowed deposit until the review window closes. BitsPath delivers the 18 notification templates over push, SMS, email, and WhatsApp. Thirteen .NET 10 microservices and a Next.js 16 PWA are the TripStream team's own work on that shared spine.

13
Microservices
Auth, Community, Trip, Planning, Chat, Payment, Review, Media, Discovery, AI, Notification, Content, Gateway
155
HTTP endpoints
Mapped across the services behind the YARP gateway. Planning alone exposes 24, Trip 18, Payment 16
48
Event types in the contract
Raw RabbitMQ.Client 7.2.1, topic exchanges, three saga patterns, 5-level retry with DLQ, 46 idempotent consumers
18
Notification templates
Dispatched through BitsPath across push, SMS, email, and WhatsApp
Four pillars

Built for the trips that almost never happened.

Group trips die in the planning chat. TripStream removes the four reasons. The community, the route, the money, the trust.

Launching at tripstream.net
01
Community

Travel communities, not Facebook pages.

Tenant equals community. Audiences move from a Facebook timeline into a purpose-built workspace with roles, invitations, member directories, PostGIS-indexed locations, and full-text search over PostgreSQL tsvector. Anyone organises, anyone joins, ratings keep both sides honest.

02
Plan together

Itineraries co-edited in real time.

SignalR over a Redis backplane keeps every organiser on the same draft. Routes drawn through OpenRouteService 9.7.1 on OpenStreetMap, polylines stored as PostGIS geography, and single, multiple, or ranked-choice polls to settle food, dates, and the route itself.

03
Pay safely

bKash and escrow on the deposit.

bKash and bank-transfer collection feed the Payment service. Hold.bd holds the deposit in escrow until the seven-day review window closes. An append-only double-entry ledger records every movement. Expense splitting with greedy debt simplification at trip's end.

04
Trust both ways

Blind-reveal mutual ratings.

Both organiser and travellers rate each other after the trip, but neither side sees the other's score until the seven-day window closes. Reputation tiers run Newcomer to Legend across five steps. Trust without gatekeeping, so first-time organisers can climb without being locked out.

The trust rail

Money that cannot go missing.

Deposits collected through bKash and bank transfer, held in Hold.bd escrow, released only after the seven-day blind-reveal review window closes, on top of an append-only double-entry ledger.

Payment service, ledger excerptAppend-only
SeqEventDebit, creditBDT
0181
Deposit.Collected
bKash, traveller 04
traveller-04
escrow:holdbd
1,500.00
0182
Deposit.Collected
bank transfer, traveller 05
traveller-05
escrow:holdbd
1,500.00
0214
Expense.Recorded
boat hire, Ratargul, split 10
trip:expenses
organiser:float
3,200.00
0241
ReviewWindow.Closed
T+7d, blind reveal
escrow:holdbd
organiser:payout
15,000.00
0242
Settlement.Simplified
9 balances netted to 3 transfers
traveller-07
traveller-02
640.00
Every event writes a debit plus credit pair. Nothing is edited, nothing is deleted.

Hold.bd escrow on the deposit

Rail 01

The trip deposit sits in Hold.bd escrow while planning happens. Release to the organiser is gated on one event only: the close of the post-trip review window. No more deposits vanishing with a missing organiser.

7-day blind-reveal reviews

Rail 02

Organiser and travellers rate each other after the trip, and neither side sees the other's score until the seven-day window closes. No retaliation ratings, no score-trading, and the escrow release waits for the same clock.

Append-only double-entry ledger

Rail 03

Every payment event writes a debit and credit pair into the Payment service's ledger. Entries are never edited and never deleted, so the trip's money has a complete, replayable history from first deposit to final settlement.

Greedy debt simplification

Rail 04

At settlement the platform matches the largest debtor with the largest creditor and repeats until the graph clears, so a group of ten settles the whole trip in the fewest possible transfers instead of a web of IOUs.

What ships

Five surfaces a travel group actually uses.

Not a feature dump. Five daily-use surfaces, each behind the YARP gateway with Darwan RBAC enforced per route.

Trip discovery feed

01

Browse open trips by destination, dates, budget, and group size. Full-text search over PostgreSQL tsvector indexes, geo via PostGIS, and materialised views ranking popular destinations.

Expense splitting

02

Per-trip ledger inside the Payment service. Add an expense, tag who shared it, watch the platform resolve everyone to a minimal-transfer settlement using greedy debt simplification.

AI trip assistant

03

Groq-powered completions on llama-3.3-70b-versatile. Ask for a three-day Sylhet plan for ten people under 12,000 BDT and get a costed draft to vote on, inside the same workspace as the itinerary.

Auto photo albums

04

EXIF extraction, WebP thumbnails in three sizes, and an album assembled automatically the moment the trip completes. The memory engine that brings the group back to plan the next one.

Public trip reports

05

The Content service publishes trip reports as public pages with Schema.org markup at tripstream.net/reports. Communities recruit the next trip from the last one.

Trip flow

From idea to album, in four steps.

The lifecycle the Trip service actually runs. Seven internal states, four visible steps for the human in the group.

  1. 01

    Find a community or start one

    Join a travel community, or spin one up for your university group, photography circle, or weekend friends. PostGIS-tagged location, public or invite-only, with roles and invitations built in.

  2. 02

    Propose a trip, or join an open one

    Pick dates, a destination, a budget band, a group ceiling. The trip moves through a seven-state lifecycle, draft to open to booking to active to completed to cancelled to archived, with a booking saga reserving seats.

  3. 03

    Plan it together in real time

    Co-edit the itinerary, vote on the food stops with ranked choice, draft the route through OpenRouteService, let the AI assistant cost the day. Group chat in the same workspace, no separate WhatsApp scrollback.

  4. 04

    Pay, travel, remember

    Deposit through bKash or bank transfer, held in Hold.bd escrow. On the trip, expense splitting tracks the group's cash. After the trip, GPS-grouped photo albums and a SEO trip report close the loop.

Comparison

TripStream vs Wanderlog vs TripIt vs the WhatsApp group.

Wanderlog is the closest western analogue, built around the itinerary rather than the group's money. TripIt aggregates a solo business traveller's bookings. The WhatsApp group is where most Bangladeshi trips start, and stall.

CapabilityTripStreamWanderlogTripItWhatsApp group
Real-time itinerary co-editingAsync edits
Group voting on route, food, datesRanked choiceComments onlyReactions
bKash and bank transfer collection
Deposit held in escrowHold.bd
Expense splitting with debt simplificationManual
Mutual blind-reveal ratings
Auto photo albums by GPS and timeManual
Open-source maps, no Google lock-inOSM + ORS
Installable PWA, no app store

Scroll for full table

KaritKarma footprint

Standing on the spine the rest of KaritKarma already operates.

Wenme for sign-in. Darwan for gateway-enforced RBAC. bKash and bank-transfer collection for the money. Hold.bd for the escrowed deposit. BitsPath for the 18 notification templates. TripStream focuses on what only it can do.

Questions

What people ask before they organise a trip.

Missing a question? Email [email protected].

01What is TripStream?
TripStream is a community-first social platform for group travel in Bangladesh, built by KaritKarma. It bundles travel communities, real-time itinerary co-editing, group voting, bKash and bank-transfer collection with Hold.bd escrow on the deposit, expense splitting, mutual blind-reveal ratings, an AI trip assistant powered by Groq, and auto photo albums assembled when the trip completes. Thirteen .NET 10 microservices run behind a YARP gateway, with a Next.js 16 PWA frontend that installs without an app-store gate. Launching at tripstream.net.
02How is TripStream different from a WhatsApp group, Wanderlog, or TripIt?
A WhatsApp group has no purpose-built planning tools, so the route, the money, and the decisions all drown in the scrollback. Wanderlog and TripIt centre on the itinerary for an individual traveller. TripStream is built around the group: real-time co-editing over SignalR, single, multiple, and ranked-choice polls, bKash and bank-transfer collection with Hold.bd escrow on the deposit, blind-reveal mutual ratings, and auto photo albums that bring the group back for the next trip.
03Can TripStream actually split expenses for a group?
Yes. Every trip has a Payment-service ledger that records expenses against contributors. At settlement the platform runs greedy debt simplification, matching the largest debtor with the largest creditor until the graph clears, so a group of ten settles with the fewest possible transfers. The same ledger sits next to bKash and bank-transfer collection, so the trip can run cashless end to end.
04Does TripStream work offline?
TripStream is a Next.js 16 PWA with a Serwist service worker, so it installs from a shared link and keeps its app shell without an app store. Real-time co-editing through SignalR, AI suggestions through Groq, and payments require a connection; the PWA reconnects when you come back online.
05How does TripStream protect the trip deposit?
Deposits are collected through bKash and bank transfer and held in Hold.bd escrow. Release to the organiser is gated on a single event: the close of the seven-day post-trip review window. Underneath, the Payment service keeps an append-only double-entry ledger, so every taka is recorded as a debit and credit pair that nothing can silently edit. At settlement, greedy debt simplification nets the group's balances into the fewest possible transfers.
06Why Bangladesh first?
Bangladesh's travel communities already organise real trips with real money through Facebook groups and chat threads, with no purpose-built tooling underneath. TripStream makes bKash and bank-transfer collection first-class rails in its Payment service and builds for the way those groups actually plan: together, in one thread, around a shared budget. The team knows the market, the cultural calendar (Eid, Puja, monsoon windows), and the payment habits. South Asia follows once the Bangladesh playbook ships.
Launching at tripstream.net

The next trip should not
die in the chat.

Pull the group out of WhatsApp. Co-edit the route. Hold the deposit safely. Settle the expenses without the spreadsheet. Come home with an album that built itself.

Escrowed depositsbKash + bank transferReal-time PWABuilt by KaritKarma