If you run a shop
Start with the customer menu, the shop-side catalog, and the simple pay-at-pickup lane. Read modules as optional tools around the order flow, not as protocol theory.
Module pages / plain-language stack reading
This is the human module catalog for the current Pizza4People proof. Start here if you want to understand what the customer sees, what the shop controls, and where payment or trust boundaries sit before opening raw manifests.
Current scope
18 module pages across 1 shared provider layer.
Readable first. Raw manifest and GitHub references only when you need the developer-facing view.
New here?
P4P core is the road. Modules are optional tools around the road.
Good examples are menus, kitchen screens, pickup boards, alerts, and payment adapters. Bad examples are the registry itself or the direct node order endpoint itself.
Start with the customer menu, the shop-side catalog, and the simple pay-at-pickup lane. Read modules as optional tools around the order flow, not as protocol theory.
Start with the dumb-safe module explanation, then the community builder guide, then one small hardware lane so you can see what a narrow module looks like before reading the heavier contracts.
Start with the review packet, then inspect the payment boundary and the two new pilot hardware lanes. The useful question is whether the core stays small while the extras stay honest and optional.
Start here
If you want to understand the visible public proof first, start with the menu and status pages the customer actually sees.
If you want to understand what a pizzeria actually controls, jump to the catalog editor and kitchen queue before the deeper technical layers.
If you want the practical edge of the current proof, read the simple payment path and the provider page together.
Catalog
The grouped list below is still the same narrow proof story. It is just arranged in the order a normal reader can use: customer surfaces first, then shop tools, then payment/trust edges, then internal tests.
If you want the exact technical language, GitHub remains the source of truth. This page is the public human layer above it.
Current module pages
What the customer sees
These are the public surfaces a customer can actually open during discovery and ordering.
Customer side
A customer opens a normal menu list and sends the order directly to the restaurant.
For a pizzeria: You keep the menu basics on your own node instead of relying on a marketplace-owned list.
p4p.menu.listMore info: Open full module page / Open provider page / Open manifest
Customer side
A customer taps a paper-menu style surface instead of a plain item list.
For a pizzeria: Useful if you want the customer surface to feel closer to a printed flyer or visual takeaway menu.
p4p.menu.photo-mapMore info: Open full module page / Open provider page / Open manifest
Customer side
A customer can check whether the order was accepted, rejected, or is ready for pickup.
For a pizzeria: Reduces the need for status phone calls when the restaurant updates the order state.
p4p.customer.statusMore info: Open full module page / Open provider page / Open manifest
What the shop uses behind the counter
These are the restaurant-side tools for menu control, kitchen flow, stock, printing, and fallback alerts.
Owner / operator side
The restaurant can change names, prices, categories, and whether an item is active.
For a pizzeria: This is the control surface that lets the shop own its own menu instead of waiting for a platform back office.
p4p.catalog.editorMore info: Open full module page / Open provider page / Open manifest
Owner / operator side
The restaurant can scan a paper menu into draft catalog rows before a human review.
For a pizzeria: Useful when a shop starts from a printed takeaway card instead of rebuilding the whole menu by hand.
p4p.catalog.import.ocrMore info: Open full module page / Open provider page / Open manifest
Owner / operator side
Staff can see incoming orders and move them through kitchen states.
For a pizzeria: Lets the restaurant turn direct orders into an actual working queue behind the counter.
p4p.kitchen.screenMore info: Open full module page / Open provider page / Open manifest
Owner / operator side
The system can do one last local stock check before the next order step continues.
For a pizzeria: Helps stop the flow before the kitchen commits to something the shop no longer has.
p4p.stock.basicMore info: Open full module page / Open provider page / Open manifest
Owner / operator side
Accepted orders can later be printed or forwarded to a restaurant-owned printer or POS surface.
For a pizzeria: This is the bridge from a direct online order to a paper ticket or POS flow inside the shop.
p4p.order.printMore info: Open full module page / Open provider page / Open manifest
Counter / hardware side
If the first printer path fails, the order can be rerouted to a second print target or local spool.
For a pizzeria: Useful when a shop wants hardware redundancy before trusting direct orders during busy service.
p4p.order.print.backupMore info: Open full module page / Open provider page / Open manifest
Owner / operator side
The system can send an email when an order needs attention or a printer flow fails.
For a pizzeria: Useful as a fallback alert so the shop is not blind if another operator-side step fails.
p4p.notify.emailMore info: Open full module page / Open provider page / Open manifest
Owner / operator side
The system can send a short phone alert when an order or printer problem needs fast attention.
For a pizzeria: Useful if the test hardware is noisy or partially unattended and the operator still needs a direct phone fallback.
p4p.notify.smsMore info: Open full module page / Open provider page / Open manifest
Counter / hardware side
A local box can ring, beep, or flash when a new order or hardware problem needs attention.
For a pizzeria: Lets the hardware give an audible or visible cue without turning the alert layer into the actual order queue.
p4p.order.alert.basicMore info: Open full module page / Open provider page / Open manifest
Counter / pickup side
A simple local screen can show which direct orders are accepted or ready at the counter.
For a pizzeria: Gives the shop a cheap customer-facing pickup signal without exposing the full operator dashboard.
p4p.pickup.board.basicMore info: Open full module page / Open provider page / Open manifest
Payment and business trust
This is where payment stays intentionally simple and where identity or business verification can later become reviewable.
Customer + operator side
The restaurant can keep payment simple by taking cash or direct in-person payment outside the protocol.
For a pizzeria: This is the easiest first live shape: order online, pay when the customer arrives.
p4p.payment.cashMore info: Open full module page / Open provider page / Open manifest
Customer + operator side
A future external adapter can expose a familiar MobilePay-style pay-at-pickup instruction without making P4P the payment processor.
For a pizzeria: Lets pilot restaurants say whether an external MobilePay-style adapter is worth adding after cash-first feedback.
p4p.payment.mobilepayMore info: Open full module page / Open provider page / Open manifest
Trust layer
A later trust layer can connect a node identity claim to a Danish CVR lookup or trust claim.
For a pizzeria: This is meant to make a restaurant identity more reviewable later without turning the registry into the authority.
p4p.trust.cvr-basicMore info: Open full module page / Open provider page / Open manifest
Internal tests and future extras
These modules are not the live restaurant offer today. They are internal test scaffolding or planned next-step pieces.
Internal debug
An internal mock can randomly accept or reject a test payment during local debugging.
For a pizzeria: Not something a restaurant should read as a live offer. It exists to test ugly edge cases before any real payment direction exists.
p4p.payment.godpay-mockMore info: Open full module page / Open provider page / Open manifest
Internal debug
An internal mock for timeouts, wrong amounts, duplicate callbacks, and other payment chaos scenarios.
For a pizzeria: This exists to break things safely in local testing before any broader payment layer is discussed.
p4p.payment.chaospay-mockMore info: Open full module page / Open provider page / Open manifest
Contact
Questions about module meaning, provider ownership, or the live-pilot boundary: hedegreen.research@gmail.com.
Public proof front door: https://pizza4people.com/.
Broader protocol-family direction: https://protocols4people.com/.