Two sides, one Table
You're always on the left. They're always on the right.
Each side shows exactly what that person is putting up. Amber is the bottle the deal started from, green is cash, purple is any extra bottles, and the little green + lines are samples or decants thrown in. Both usernames and faces sit right on it, so there's never a question of who's offering what.
While you're typing, the Table folds into a slim bar so you can see the conversation. Tap the little green tab on top to open it back up. When it's your move, it pulses YOUR TURN.
Tap a side to change the terms
No counter-offer forms. No new cards. The Table is the form.
Tap your side
It lights up, the other side dims. You're now changing what you put up.
Tap their side
Same thing, but now you're asking. Their listed bottles show up so you can point at the one you want.
Three little buttons live inside the lit side
+ adds a bottle โ a strip of that person's listed frags with photos, or new to type one they mentioned. 2ml throws in (or asks for) samples. ๐ฐ puts cash on top when it makes sense.
Red โ removes anything
Even the original bottle. Even the cash. If the conversation drifted somewhere new, the Table can follow it.
Put it on the Table โ
Your new version replaces the old one. The other person sees it instantly and gets the Shake button โ nobody can accept their own edit. Under the halves, edited by rggg ยท 2m always tells you whose version you're looking at.
Sale or Trade
Two small pills at the top. The deal follows what's on the Table.
๐ต Sale
Cash for what's on the seller's side. Add a second bottle over there and the buyer just pays for the pair. Add one of the buyer's bottles and it becomes cash + bottle โ automatically.
โ Trade
Bottles for bottles. Cash clears when you flip to Trade; ๐ฐ brings it back as "cash on top" if one side needs to even it out.
You never pick a deal type up front. Whatever ends up on the two sides is the deal.
Shake on it
One green button. That's the agreement.
When the Table looks right to the person who didn't make the last change, they shake. Until then either of you can keep editing, keep talking, or walk away. An offer nobody responds to expires after 48 hours (we nudge you at 8 and 36 hours so it doesn't slip). Every version stays in the thread as a small chip, so the whole negotiation is on record.
After the shake
The Table turns into a progress rail and walks you both through it.
- Paid โ the buyer pays right on the Table: the price, shipping (unless the seller included it), and a small card-processing fee. Sniffy holds the full amount in escrow; the seller doesn't get a cent until the bottle arrives and checks out, or the 48-hour inspection window passes. (Trades: each side pays a refundable deposit instead โ $25 by default, or set your own from $10 to $2,000 โ plus a $2 swap fee and an $10.95 prepaid insured label.)
- Shipped โ the seller films a boxing video if one is required (it's on by default for swaps), which unlocks a prepaid, insured USPS ground label in-app, then drops it off. Buyers pay $10.95 for full bottles or $4.95 for decants โ or nothing when the seller's price includes shipping, in which case the label cost comes out of the seller's payout.
- Arrived โ the buyer confirms delivery, filming an unboxing if it was asked for, and a 48-hour inspection window opens. Release early, or open a dispute if something's off. Those videos are what protect both of you.
- Done โ escrow releases to the seller, deposits return, ratings unlock.
What protects you
The Table is friendly. The rails under it are strict.
- Money never moves person-to-person. Sniffy holds it until the buyer confirms.
- Boxing videos are on by default for swaps, and either side can require or request videos on any deal โ they're the evidence disputes are decided on.
- Keep it on Sniffy. Deals paid outside the app aren't protected, and the Table only works here.
- A bottle that was never listed shows up as UNVERIFIED โ it skipped the photo and AI checks. Here's how to check it yourself before you shake.
- Problems? Tap the ? in any thread to talk to Jenny, or reach the team.