Mojave is now Paying.co — same team and expertise, now with a name that reflects our core mission. Learn more →
MDB Software · for Vending, Kiosks & Unattended

Take cashless payments on any vending machine. Skip the protocol engineering.

MDB is the industry-standard protocol that runs vending machines, kiosks, and unattended devices around the world. MDB by Paying.co is the software that brings them into the cashless era — a single clean API in front of a messy serial bus. Skip the state machines, the reverse-engineering, and the 2am debugging. Drop our connector in, talk to your processor, take card.

bolt$29.95 / year / device · Datacap & PAX supported · Plug-and-play install.
mdb-controller · node
// One call. Any MDB device.
await mdb.charge({
  device: "vending-A12",
  amount: 3.50,
  method: "tap"
});

→ approved · Apple Pay
→ vend authorized in 89ms
→ webhook delivered
check_circle
$3.50 approved
Apple Pay · 89ms
1
API Call
0
Firmware To Write
Any
MDB Device
2
Processors Supported
What the Software Does

All the protocol details. None of the headache.

MDB is a finicky little protocol. Master-slave polling, 9-bit serial, address mapping, level 1/2/3 negotiation, cashless device state machines. Our software handles every byte of that for you — so the only thing you write is the business logic for taking a payment.

♦ 01
translate

Protocol translation

We speak MDB to the machine and standard HTTPS to your code. Polling, ACKs, level negotiation, address mapping, state transitions — all hidden behind a clean API call.

♦ 02
hub

Bus orchestration

Up to 32 devices on a single bus, all coordinated from a single controller. We handle device discovery, addressing, prioritization, and conflict resolution — you just send a charge request.

♦ 03
contactless

Cashless payment flow

Card tap, chip insert, mobile wallet, QR — whatever payment your processor supports, we wire end-to-end into the MDB cashless device state machine. The machine vends only after the processor approves.

♦ 04
autorenew

Error recovery

Bus timeouts, device disconnects, processor failures — the software self-heals. Auto-reconnect, retry policies, dead-letter callbacks, and full audit logs. You find out something went wrong via webhook, not a 2am support call.

Why MDB by Paying.co

Six months of protocol engineering, or one license file.

Writing your own MDB stack is doable. It's also a quarter-long detour that pulls your best engineers away from the product they should be building. Here's what that detour looks like — and what licensing instead looks like.

Building it yourself

The six-month detour
  • Reverse-engineer the MDB/ICP spec from PDFs
  • Write a cashless device state machine from scratch
  • Debug serial timing issues at 9-bit on real hardware
  • Build error recovery and self-healing yourself
  • Wire your own processor integration into the bus
  • Ship six months later than you wanted to

License MDB by Paying.co

The same-week ship
  • Drop in the Datacap or PAX connector
  • Call mdb.charge() from your application
  • Webhooks fire on transaction events
  • Full error recovery and audit logging built-in
  • Processor integration already wired and tested
  • Ship the same week you license
For Developers

A clean API in front of a messy protocol.

We exposed everything a normal application actually wants — charge, refund, status, webhooks. The protocol mess stays inside the connector. Your code stays readable.

  • code
    Single-function payment flowOne mdb.charge() call. The connector handles polling, state, payment authorization, vend release, and confirmation — from card tap to product dispense.
  • webhook
    Real-time webhooksTransaction events stream out as JSON the moment they happen on the bus — approved, declined, vend complete, device reset, processor timeout. Subscribe what you want.
  • memory
    Device-level introspectionQuery every device on the bus, get its status, address, level, current state, last transaction. Build operations dashboards on top of it without reverse-engineering anything.
  • verified
    Full audit loggingEvery byte on the bus and every API call you make is logged with sub-millisecond timestamps. Forensics, dispute resolution, and compliance evidence built in.
// charge an MDB device
const result = await mdb.charge({
  device: "vending-A12",
  amount: 3.50,
  method: "tap",
  processor: "datacap"
});

// {
//  status: "approved",
//  method: "apple_pay",
//  authcode: "A8X42K",
//  latency_ms: 89,
//  vend: { released: true, item: "A12" }
// }

// listen for events
mdb.on("transaction", (e) => {
  analytics.track(e);
});
Connectors

Two flavors. Pick your stack.

Same protocol underneath, same install pattern. Pick the connector that matches the processor you already work with.

Available now
credit_card

Datacap connector

The MDB bridge for Datacap-powered terminals. NETePay, dsiEMVUS, and the Datacap processing stack — bus-addressed and ready to vend. Includes webhook callbacks, configurable timeouts, and full audit logging.

Available now
point_of_sale

PAX connector

The MDB bridge for PAX terminals running on BroadPOS or your processor of choice. Same plug-and-play install, same configurable behavior — with full support for PAX A-series and Aries hardware.

Applications

Where MDB actually lives.

MDB isn't theoretical. It's the protocol behind a generation of unattended payment deployments — from snack machines in office breakrooms to access control at the parking gate. If it takes a card without a cashier, there's a bus underneath it.

local_drink

Vending machines

Snack, beverage, coffee, and combo vending with seamless cashless payment integration. The original home of MDB — and still where it does the most work every day.

Learn more arrow_forward
point_of_sale

Self-service kiosks

Order-ahead, ticketing, info display, customer check-in. Anywhere a customer expects to tap their card and get something back. MDB is the wire that makes it instant.

Learn more arrow_forward
lock

Access control

Card readers and entry systems for buildings, parking facilities, secured areas, and gated lots. MDB carries both the credential check and the open-the-gate command.

Talk to us arrow_forward
Pricing

One price per device. Same as last year.

We don't have ten tiers. We have one number per device per year. License the connector that matches your processor — the rest is software.

Datacap connector
$29.95
per device / year
  • Full MDB protocol support
  • Datacap NETePay & dsiEMVUS
  • Up to 32 devices per bus
  • Webhooks & audit logging
  • Plug-and-play install
  • Email support
License Datacap arrow_forward
Fleet & enterprise
Custom
volume pricing
  • Everything in the per-device tier
  • Volume discounts at scale
  • Dedicated account manager
  • Custom SLA
  • Multi-processor licensing
  • Bring-your-own-processor available
Talk to sales arrow_forward
Get Started

Skip the protocol engineering. License the software.

Pick your processor, license the connector, plug it in. You're taking card on any MDB device the same week. No firmware to write. No state machines to debug. No 2am calls.