Second-Hand Fashion and Kids' Goods Marketplace for the Baltics
Designed a resale marketplace for second-hand fashion and kids' goods shipped locker to locker across Estonia, Latvia and Lithuania, and built a clickable back office for it: listing moderation with AI suggestions checked by people, counterfeit and recall checks, trader detection and buyer protection disputes.
Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.
Dashboard, moderation queue, listing review, trader detection and disputes with the dispute panel. Every one of the 20 listings in the moderation queue opens its own review page.
Prohibited item classifier, keyword matches, price against the typical price, duplicate photos across accounts and an EU Safety Gate recall lookup, shown next to the AI suggestions and the seller's final values.
Each removal names its ground: trademark law for counterfeits, the General Product Safety Regulation for recalls, DSA trader traceability, or the clause of Kirbu's terms, with the statement previewed before it is sent.
20 queued listings, 18 members across Estonia, Latvia and Lithuania, 14 trader cases, 12 disputes, 4 parcel locker carriers and 7 staff users.
Kadakaranna Kaubad started as Tallinn parents running three large Facebook groups for children's clothes, prams and school uniforms. Buyers paid strangers by bank transfer, a fifth of the moderators' time went on "I paid and nothing came" posts nobody could resolve, fake designer bags and recalled cots appeared weekly, and some "private" sellers were shops clearing stock. At 90,000 members across the Baltics, the moderators could no longer keep up.
Kirbu puts every sale on one record: the listing and its photos, messages and offers, the payment held until the buyer confirms receipt, the locker label and tracking, and the evidence if something goes wrong. Buyer protection gives buyers a reason to pay a stranger, and the back office gives the team queues for moderation, trader detection and disputes instead of comment threads.
Kirbu is a small Estonian start-up, but as an online platform selling across three countries it carries the duties of the Digital Services Act, EU tax reporting and consumer law, while most of its sellers are parents clearing out a wardrobe.
Sales between private individuals are generally not covered by consumer contract law, so buyer protection is Kadakaranna's own promise, not a legal right. Payment has to be held until the buyer confirms receipt, and every claim needs evidence both sides can see.
Fake designer bags and recalled cots reached the old groups every week. High-risk brands need an authenticity photo set, used car seats, cots and cot mattresses are restricted categories, and reported kids' items are checked against EU Safety Gate alerts.
A person who sells regularly for profit may be a trader even if they call themselves private, and a trader's buyers generally get a 14-day right of withdrawal. Under the DSA traders must be traceable before they list, but Kirbu records declarations and evidence rather than making the legal call.
Notice and action, a statement of reasons for every removal or restriction, appeals reviewed by someone other than the original decider, submissions to the DSA Transparency Database, and DAC7 reporting to the Estonian Tax and Customs Board for sellers above the de minimis threshold.
Mapped 8 roles, from buyer and private seller to moderator, finance and admin, and 52 screens: 24 mobile-first member screens and 28 back office screens. Modelled listings, offers, orders, shipments, claims, the wallet ledger, notices, decisions, appeals, trader signals and DAC7 records. Wrote down the rules the design follows: GDPR, the DSA, consumer law for trader sales, DAC7, PSD2 SCA, product safety, and Kadakaranna's own policies on fees, offers, shipping and withdrawals.
Built the operator back office's 5 key screens on a production dashboard kit: the dashboard with KPIs, queues and carrier health, the moderation queue with bulk approve for low-risk triggers only, the listing review with its decision form, trader detection with tab actions that move a seller between stages, and disputes with a decision panel. Decisions move rows between tabs on local state.
The 24 member app screens and the remaining back office screens (notices, members, appeals, orders, refunds, wallet ledger, payouts, DAC7 reporting and audit log). Integration with a marketplace payment provider such as Stripe Connect or Adyen for Platforms, Omniva, DPD Pickup, Smartpost and LP Express, identity verification such as Veriff, Baltic business registers, VIES, the photo classification model, EXIF stripping, the DSA Transparency Database API and the DAC7 export. Staff SSO with two-step sign-in and logged personal data views.
The photo model's suggestion and the seller's final value are both stored and shown side by side, with changes highlighted: a bag the model read as "Unbranded" at 87% that the seller listed as a high-risk designer brand stands out at once. Suggestions never decide moderation on their own.
Seller photos sit next to the brand's required reference set, with the automatic checks, seller account age and prior removals, earlier decisions and related notices. The moderator picks an action and reason code, sees the statement of reasons before it is sent, and the decision is recorded with an audit line.
Each case shows a signal score with concrete examples, such as 131 sales in 83 days or the same jacket in 6 sizes, plus declaration history and register, VIES and identity results. Staff ask the seller to confirm, and new listings pause only after the deadline passes.
A claim's age turns red once it passes the 3 working day target. The panel shows the listing as sold next to the buyer's claim, the seller's response and carrier tracking, and the decision sets the outcome, any partial amount and who bears the cost: seller balance, Kirbu goodwill or a carrier claim.

Designed and built a clickable back office for a Montevideo marketplace where customers book vetted plumbers, electricians, cleaners and 11 more trades: a jobs board with the full record of every job, payment held until the customer confirms, a vetting queue for pro documents and a disputes desk that decides with the held money in view.

Designed and built a clickable buyer workspace for a Hanoi sourcing marketplace that connects electronics, furniture, food and garment plants with verified component and packaging suppliers: RFQs with versioned drawings, sealed quotes, a weighted comparison in one currency and one delivery term, awards inside approval limits, and supplier disputes with a path to escalation.
Enterprise Software Engineering - Human + AI
Contact Us
© 2026 - Copyright. All Rights reserved Oceanlab
Location
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
Enterprise Software Engineering - Human + AI
Contact Us
Locations
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
© 2026 - Copyright. All Rights reserved Oceanlab