All work

Bippa

Fridge open.

Self-checkout for the fridge in a Danish clubhouse or office. Scan the code, bip what you take, pay with MobilePay. No till, no app, no cash box.

Visit bippa.dk

Free for one fridge

What I did
Everything: product, design, iOS, web, the API, the MobilePay integration and the brand
Runs on
Any phone's browser for members, iPhone and the web for the club
For
Sports clubs, scouts, churches, offices, housing associations and more
Bippa on two phones: the club's app with the week's sales and what is running low, and a member's cart in the browser with two Coca-Colas and a Snickers, ready to pay 36,00 kr with MobilePay.

Two sides of one fridge.

Members want a cold drink and to be on their way. The volunteers who fill the fridge want to know what sold and what to buy on Saturday. Bippa gives each side exactly that, and nothing else.

The member

No app, no account, no queue.

  1. 1
    Scan the code on the fridge
    Every fridge has its own printed QR code. It opens a web page in the phone's browser.
  2. 2
    Bip what you take
    The camera reads each barcode. A torn label? Search for it by name instead.
  3. 3
    Pay with MobilePay
    The receipt lands in MobilePay, and the money in the club's own account.
The poster on Bippa Demo Club's fridge, with its QR code and three Danish steps, next to a phone showing 'Thanks! 36,00 kr paid. The receipt is in MobilePay.'
The club

A stockroom that keeps its own books.

  1. 1
    Scan the crate in
    Hold each barcode up as it goes into the fridge, then save the whole crate in one go.
  2. 2
    Count it, or add to it
    Every sale and every count lands in a ledger for that product, so the stock is never a mystery.
  3. 3
    See the week
    What sold, what is selling, and what to buy before it runs out.
Bippa's club app on two phones: Pepsi Max with 6 in stock and its movements, and the restock screen putting 49 things into the fridge.

“Runs out Thursday” isn't a guess.

Every product gets the same sum. Bippa looks at the last four weeks of sales, works out how many go a day, and how long what is left will last. A product newer than four weeks is divided by its own age instead.

Anything sold out, under its alert level or within a week of running out goes on the Running low list, with how many to buy for the next two weeks. The day it runs out is written as a weekday, in Danish time.

bippa.
Pepsi Max 33cl · Monday
Sold, last 28 days46
Per day1,64
In stock6
Lasts3,7 days
Runs outThursday
Buy for 14 days17
⌈46 ÷ 28 × 14 − 6⌉ = 17

The money never touches Bippa.

Each club connects its own MobilePay account, and members pay the club directly. Bippa takes care of the checkout and the bookkeeping, and stays out of the money.

For a volunteer counting the fridge on a Sunday, that means the numbers in the app match the cans on the shelf and the money in the account.

1
Straight to the club
Members pay the club's own MobilePay account. Bippa never holds the money, so there is no payout to wait for.
2
Checked before it counts
A sale only counts once MobilePay has confirmed it, so a payment that falls through never empties the fridge on paper.
3
Counted once
However the confirmation arrives, each sale comes off the stock exactly once, so the money and the shelves agree.

A flat price, not a cut.

Every feature on every plan. No percentage, no fee per sale.

Free
0 krfor good
  • 5 people running it
  • 25 products
  • 1 fridge
Community
99 kra month
  • Any number running it
  • 500 products
  • 10 fridges
Business
399 kra month
  • Any number running it
  • 500 products
  • 25 fridges

Small things that matter

A scanner in the browser

The phone's own barcode reader where there is one, and a WebAssembly build of ZXing on Safari and Firefox. EAN, UPC and Code 128.

Sure before it says no

A match counts on the first frame, a miss only after three reads in a row, and the same can won't add twice until the camera has looked away.

Names from Open Food Facts

Scanning in something new fills in its Danish name, brand and size. Never its price: that is the club's call.

Today's price, always

Change a price in the app and the very next sale uses it. Nobody pays yesterday's price, whatever their phone had open.

Thursday morning, 07:00

The weekly digest goes out before the weekend shop, and each person only gets the parts they are allowed to see.

One nudge, not ten

A low-stock alert waits two days and is sent once per club, however many cans run low in the meantime.

Built with

TypeScriptNext.jsReact Native and ExpoFastifyPostgresBullMQ and RedisMobilePayOpen Food FactsStripeReact EmailSanityCloudflare R2Fly.io

Got a fridge
without a till?

Print the code, tape it to the door, and the fridge is open. Free for one fridge.

Oscar
Odense, Denmark ·Available now

Got an idea?
Tell me about it.

Big, small, half-baked or a bit weird, I'd love to hear it. One sentence is plenty to start.

Or just email hello@osukacreative.com