Vendors / Open source & self-hostable
Open Source Point of Sale
Open Source Point of Sale (opensourcepos / OSPOS)
dossier live legacy rubric
- Claims in scope
- 257
- Scored
- 257
- Assessed
- 251
- Unknown
- 6
- Not applicable
- 57
- Cells challenged
- 22
Identity
- Owner
- Community open-source project on GitHub (opensourcepos/opensourcepos). No single commercial owner identified; no corporate parent or paid edition found. Unlike Floreant/OROCUBE there is no documented vendor upsell.
- Founded
- Project dates to 2010 per the license/footer copyright ("© 2010 - current year · opensourcepos.org"); LICENSE credits contributions since 2012. Current GitHub org: opensourcepos.
- Scale
- unknown. No published install base, ARR, or market share. Only proxies available: ~6,741 commits on master, 221 open issues, 38 open PRs on GitHub; 71 SourceForge reviews averaging 4.6/5. None of these establish deployed store counts.
- Who it is for
- Single-site small retailers, market stalls, workshops and simple counter-service operations with an in-house technical operator willing to run and patch a PHP 8.2+/MySQL server. Not a restaurant product: the only restaurant feature (table mode) is documented as "Currently only works with 2 tables".
- Site
- https://github.com/opensourcepos/opensourcepos
Pricing
transparency: published · unit: free · processor lock-in: no
- Software
- $0. MIT-licensed free download from GitHub; no paid tiers, no editions, no hosted SaaS offering. The only monetization is a donation link. The one non-monetary condition is a license clause: the footer signature ("© 2010 - current year · opensourcepos.org · version - commit") "MUST BE RETAINED, MUST BE VISIBLE IN EVERY PAGE and CANNOT BE MODIFIED."
- Card processing
- N/A — the project is not a payment processor and integrates no card processing. Card sales are run on a standalone terminal and the tender is recorded manually in OSPOS.
- Contract
- None. MIT license, no subscription, no term.
- Early termination
- None — no contract exists.
API posture
public API: none
- Cost to integrate
- $0 in fees — no partner program, no certification, no revenue share, and no commercial terms of any kind exist. The cost is entirely developer time against the source.
- Webhooks
- None documented. The Development Index covers dev environment, error logging, database layout, item attributes, custom reports and translations only — no REST/GraphQL API, no webhooks, no plugin or extension architecture. It is a monolithic CodeIgniter 4 app; integration means writing PHP against the codebase or querying MySQL directly.
- Data export on exit
- Complete and unconditional. The operator holds the MySQL database, so a mysqldump is a full export of orders, line items, payments, customers, employees and inventory. The UI additionally offers spreadsheet export on employees, items, customers and reports, and CSV import for items/customers/employees. No fee, no window, no vendor involvement.
- Notes
- Practical integration surface is direct SQL against a documented schema (wiki "Database Layout") plus the ability to fork the app. That is genuinely more open than any commercial POS on this list, but it is not an API: there is no order-injection endpoint, no menu write API, no OAuth, no rate limits, no versioning/deprecation policy, and no sandbox distinct from just installing the software. Mailchimp and SMS are the only named outbound third-party integrations in the feature datasheet.
Capabilities
Every claim is binary and checkable. Grades: A primary documentation · B product documentation · C pricing or feature page · D marketing claim · E third-party reporting · F inference with no source. A yes on a differentiator claim requires A or B.
Order capture & FOH workflow
order-capture-floor-plan-editor
No floor plan. Tables are text labels on suspended sales; docs say "Currently only works with 2 tables" (issue #1933). https://github.com/opensourcepos/opensourcepos/wiki/Sales-Restaurant · retrieved 2026-08-01
order-capture-seat-level
No seat concept; table is a label attached to a suspended sale. https://github.com/opensourcepos/opensourcepos/wiki/Sales-Restaurant · retrieved 2026-08-01
order-capture-coursing-hold-fire
No kitchen firing path exists at all — no KDS, no course construct in the feature datasheet. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-split-merge
Datasheet enumerates suspend/resume, receipts, invoices, quotes and returns; no split or merge of checks. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-bar-tab-preauth differentiator
No card processing integration exists, so no pre-auth is possible. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
order-capture-transfer-audit
Suspended sales can be resumed by another logged-in employee, but no transfer object or transfer audit log is documented. https://github.com/opensourcepos/opensourcepos/wiki/Sales-Restaurant · retrieved 2026-08-01
order-capture-native-handheld
Responsive browser UI only; docs state "Works on mobile but PC/Mac is recommended" and mobile barcode reading is "not yet" available. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
order-capture-offline-order-entry
Server-rendered CI4 web app with no offline client and no published offline behavior. A LAN-hosted server survives internet loss, but a terminal that loses the server cannot transact. https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
order-capture-qr-same-check differentiator
No guest-facing ordering channel of any kind in the feature datasheet. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-kiosk-first-party differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-drive-thru
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-drive-thru-timers
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-voice-ai differentiator
No AI features and no partner/API program; the project publishes no public API. https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
order-capture-throttling differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-scheduled-orders
Quotes and work orders can be held for later conversion, but there is no fire-time scheduling or make queue. https://github.com/opensourcepos/opensourcepos/wiki/Work-Orders · retrieved 2026-08-01
order-capture-catering
Built from quotes plus invoices with balance due. But the datasheet's POS cannot-do column disclaims exactly the mechanisms a catering deposit flow needs: 'Advanced Transaction Types such as Special Orders, Back Orders and Layaways, Credit accounting sales', and separately 'no A.R. features'. A retail quote-to-invoice path with no deposit, no event date, no BEO and no credit sales is not a rough catering flow. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
order-capture-order-ready-signal differentiator
No marketplace integrations exist. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
order-capture-void-comp-controls
Per-module permissions gate access and payments record employee ID and timestamp, but no reason codes, no manager-approval prompt, no exception report documented. https://github.com/opensourcepos/opensourcepos/wiki/Menu-and-Permissions · retrieved 2026-08-01
Menu, modifiers & pricing engine
menu-pricing-nested-modifiers
No modifier system. Item Attributes are metadata fields on inventory items, not priced selection groups. https://github.com/opensourcepos/opensourcepos/wiki/Item-Attributes · retrieved 2026-08-01
menu-pricing-modifier-price-by-parent-size
https://github.com/opensourcepos/opensourcepos/wiki/Item-Attributes · retrieved 2026-08-01
menu-pricing-fractional-placement differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-half-and-half-rule differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-topping-quantity-tiers
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-size-style-matrix differentiator
Upheld and strengthened. The researcher inferred this from the Items page; the datasheet states it outright in the cannot-do column: 'Inventory Matrix, Track items features, colors, materials'. This is one of the few 'no' scores that is affirmative absence rather than silence, and the confidence should read documented-explicit. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
menu-pricing-included-allowance differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-combos
Item Kits bundle component items at a kit price and deplete components, but no component swap with price delta and no automatic cart-to-combo detection. https://github.com/opensourcepos/opensourcepos/wiki/Item-Kits · retrieved 2026-08-01
menu-pricing-upsell-prompts differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-86-propagation
Stock on hand is checked at point of sale, but there is no second channel to propagate to — no online ordering, kiosk or marketplace. https://github.com/opensourcepos/opensourcepos/wiki/Sales · retrieved 2026-08-01
menu-pricing-countdown-auto-86 differentiator
Stock quantity is validated at sale time for stock-tracked items, and reorder levels exist, but no auto-86/auto-restore behavior is documented. https://github.com/opensourcepos/opensourcepos/wiki/Sales · retrieved 2026-08-01
menu-pricing-dayparting
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-channel-price-books
The partial rests on 'customer price tiers'. I found no customer price tiers in any first-party doc. What the datasheet actually says is 'VAT and multi tiers taxation' under Customers, and the homepage says 'Multiple taxation options (VAT, GST, customer, multi-tier)'. That is tax tiering, not a price book. Item pricing is a single 'Items Price Management' entry with one Retail Price field per item (Items wiki: 'UPC/EAN/ISBN, Item Name, Category, Supplier, Cost Price, Retail Price, Tax 1, Tax 2, Quantity in stock'). This looks like a misreading of 'multi tiers taxation' as tiered pricing. https://github.com/opensourcepos/opensourcepos/wiki/Items · retrieved 2026-08-01 adversarially verified
menu-pricing-dual-pricing differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-allergen-nutrition
Item Attributes allow arbitrary custom fields that could hold allergens, but nothing is purpose-built, nothing publishes to any channel, and no recipe-derived nutrition exists. https://github.com/opensourcepos/opensourcepos/wiki/Item-Attributes · retrieved 2026-08-01
menu-pricing-recipe-linkage differentiator
Item Kits link a sold item to component inventory items so a sale depletes components; this is a flat BOM, not a costed recipe with theoretical food cost reporting. https://github.com/opensourcepos/opensourcepos/wiki/Item-Kits · retrieved 2026-08-01
menu-pricing-3p-menu-push
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
menu-pricing-dynamic-pricing
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
Payments & money movement
payments-processor-choice differentiator
Maximally open in that nothing is bundled, but there is no integrated processing and no documented gateway list — card runs on a standalone terminal and the tender is keyed in manually. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-published-rates differentiator
Project is not a processor and publishes no card rates. https://opensourcepos.org/ · retrieved 2026-08-01
payments-dual-pricing differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
payments-surcharge-guardrails differentiator
No BIN-level card data is ever seen by the application. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-emv-nfc
Hardware datasheet lists "Credit Card Readers" under not supported; there are no first-party terminals. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-softpos-tap-to-pay differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-pay-at-table
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-qr-guest-pay differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
payments-tip-adjust
No tip handling appears in the feature datasheet or payment processing docs. https://github.com/opensourcepos/opensourcepos/wiki/Payment-Processing · retrieved 2026-08-01
payments-tip-pooling differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
payments-offline-store-and-forward differentiator
No card path at all, therefore no store-and-forward. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-offline-decline-liability differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-gift-cards
Native gift cards with balance tracking are in the feature datasheet; single install means one shared balance pool, but there is no online channel to redeem through. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
payments-house-accounts
The project's own feature datasheet lists this under 'What cannot do' verbatim: 'Accounts Receivable / House Accounts, OSPOS has CRM features but no A.R. features'. The researcher built a partial from the Payment-Processing page's balance-due mention, but that page itself admits balance-due tracking is still under development (#3072). Vendor-affirmed absence beats an inferred partial. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
payments-split-tender
Upheld, but not from the cited source. The Payment-Processing wiki page does not document split or multiple payments at all. The support is in the datasheet: 'apply multiple payments (inclusivelly different types) to the sale'. Partial is correct — multiple tenders yes, no split by seat, item or even shares. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
payments-refund-void-controls
Payments record amount, refunded amount, timestamp and employee ID; permissions are per-module. No approver-attributed override flow and the log is a mutable app table, not immutable. https://github.com/opensourcepos/opensourcepos/wiki/Payment-Processing · retrieved 2026-08-01
payments-chargeback-tooling differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Payment-Processing · retrieved 2026-08-01
payments-card-on-file differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
payments-payout-timing differentiator
Not a processor; funds never flow through the project. https://opensourcepos.org/ · retrieved 2026-08-01
payments-p2pe-pci4
No P2PE, no AOC, no vendor entity to attest. PCI scope sits entirely with the merchant and its separate card terminal. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
Kitchen & production
kitchen-station-routing
No KDS in the product. Printing docs cover receipt/label/PDF/fiscal printing only. https://github.com/opensourcepos/opensourcepos/wiki/Printing · retrieved 2026-08-01
kitchen-expo-consolidation
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-course-firing differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-prep-time-pacing differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-order-throttling differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-channel-pause-propagation differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-order-ready-callback differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-bump-bar-hardware
Hardware datasheet names only scanners, receipt printers and browsers; no KDS or bump bar. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
kitchen-all-day-counts
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-sla-alerts
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-printer-fallback differentiator
Printing is browser/OS-mediated per the hardware datasheet; no routing engine and therefore no failover. https://github.com/opensourcepos/opensourcepos/wiki/Printing-support · retrieved 2026-08-01
kitchen-offline-operation differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-item-build-screens differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-pizza-fractional-display differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-recall-refire
Receipts can be reprinted, but there is no kitchen ticket lifecycle to recall or refire. https://github.com/opensourcepos/opensourcepos/wiki/Printing · retrieved 2026-08-01
kitchen-order-modification-alerts differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-guest-ready-notification differentiator
SMS messaging to customers exists as a platform feature, but it is not wired to any kitchen/order-ready state — there is no KDS to bump. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-waste-logging
Partial credit was given for the Expenses module 'absorbing' waste. The datasheet says expenses are for 'basic expenses, no accounting needs' and that 'Accounting with expenses over the sales are out of scope'. There is no kitchen surface, no reason codes, no waste record type. This is a workaround, not a feature. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
kitchen-speed-of-service-reporting
No ticket-time capture exists. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
kitchen-prep-forecasting
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
Digital ordering & guest-facing channels
digital-first-party-web
OSPOS is a back-of-house/register web app for staff; there is no guest ordering site. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-menu-single-source
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-native-app differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-account-saved-payment
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-upsell-engine differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-scheduled-pacing
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-fulfillment-modes
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-qr-table
https://github.com/opensourcepos/opensourcepos/wiki/Sales-Restaurant · retrieved 2026-08-01
digital-kiosk differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-group-ordering
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-catering-portal differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-voice-ai-phone differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-drivethru-ai
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-sms-ordering
SMS messaging exists as outbound customer messaging only; no conversational ordering. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-google-order differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-apple-business-connect
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-loyalty-attach
Customer rewards exist in-store only; there is no digital channel to attach them to. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-subscriptions
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-promo-parity
Single channel only, so parity is vacuous rather than achieved. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-guest-data-ownership differentiator
Self-hosted: operator holds the MySQL database and the UI offers customer CSV import and spreadsheet export. No vendor, no fee, no approval. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
digital-checkout-pci-sca
No digital checkout exists and no PCI DSS attestation is published. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
digital-surcharge-transparency differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
Guest data, loyalty & marketing
guest-loyalty-unified-profile
Single customer table for one in-store channel; no cross-channel identity merge because no other channel exists. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-thirdparty-identity-attach differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-accrual-models
"Customer rewards" is listed as a shipped feature, but the wiki does not document configurable accrual models; only one scheme appears to exist. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-tiers differentiator
Customer price/tax tiers exist but are not loyalty status tiers with automatic promotion/demotion. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-offline-behavior differentiator
No offline mode exists and none is documented. https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
guest-loyalty-offer-stacking-rules differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-targeted-offers differentiator
Mailchimp integration means audiences can be built in Mailchimp; nothing rules-based exists inside OSPOS itself. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-rfm-segmentation differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-lifecycle-automation
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-native-email-sms differentiator
Native SMS messaging and email (receipt/invoice email) ship; bulk email marketing is delegated to Mailchimp rather than sent natively. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-consent-management
Customer profiles capture GDPR registration consent. No per-channel consent, timestamp/source record or revocation workflow is documented. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-10dlc-registration
SMS is sent through the operator's own gateway credentials; 10DLC registration is entirely the operator's problem and is not documented. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-campaign-attribution differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-data-export-portability differentiator
Customers module supports spreadsheet export including PII, and the operator has direct MySQL access to full transaction history. No fee, no ticket. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-review-capture-routing differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-referral-program
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-wallet-pass differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-privacy-rights-tooling
GDPR consent capture is documented and the operator can delete/export records directly in the database, but no in-app DSAR tooling exists. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-redemption-fraud-controls
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-ai-offer-recommendation differentiator
No AI/ML features anywhere in the product. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
guest-loyalty-stored-value-gift
Native gift cards ship; single-install so balances are shared across all stock locations, but no documented binding to a guest loyalty profile. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
Labor & workforce
labor-clock-in-at-pos
No time clock. The Employees module manages user accounts and permissions only. https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-photo-punch-verification differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-offline-time-punch differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-granular-rbac
Permissions are granted per menu module (Office/Home grouping) per employee, and grants are independent of menu visibility — but not per discrete action or per location. https://github.com/opensourcepos/opensourcepos/wiki/Menu-and-Permissions · retrieved 2026-08-01
labor-manager-override-audit
No manager-override construct documented; sale and payment rows carry an employee ID but there is no approver field or immutable trail. https://github.com/opensourcepos/opensourcepos/wiki/Payment-Processing · retrieved 2026-08-01
labor-native-scheduling differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-demand-labor-forecast differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-realtime-labor-percent differentiator
No labor cost data exists in the system. https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-overtime-prevention differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-break-compliance-by-state differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-minor-labor-rules
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-tip-pooling-rules
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
labor-tip-distribution-audit-trail
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
labor-qualified-tips-w2-reporting differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
labor-native-payroll differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-payroll-export-formats
Employees export to a generic spreadsheet, but there are no hours to export and no named payroll provider format or integration. https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-shift-swap-workflow differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
labor-server-performance-metrics differentiator
Scored partial on 'derivable via SQL' reasoning with confidence 'inferred'. The vendor explicitly states there is no Top Sales / Best Selling / Top Customers reporting. Derivable-from-the-database is not a capability; by that standard nearly every cell in this dossier would be partial. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
Inventory, purchasing & cost control
inventory-recipe-bom-costing
Item Kits give a one-level BOM whose sale depletes component stock. No sub-recipes and no documented automatic plate-cost recalculation on ingredient cost change. https://github.com/opensourcepos/opensourcepos/wiki/Item-Kits · retrieved 2026-08-01
inventory-unit-conversion-yields
Unknown is right, but the researcher missed the relevant evidence and used the wrong page. The Items wiki documents work-in-progress pack selling with 'Quantity per Pack', pack names such as CASE or CARTON, and a low-sell-unit reference — a real purchase-to-sell conversion, but explicitly under development and with no recipe units and no yield percentages. Unknown remains the honest score; the note should cite this rather than weighted barcodes. adversarially verified
inventory-theoretical-vs-actual differentiator
Stocktake records counts against system on-hand, producing a variance at count time; no theoretical-usage-from-recipe vs actual report in units and currency. https://github.com/opensourcepos/opensourcepos/wiki/Stocktake · retrieved 2026-08-01
inventory-realtime-depletion differentiator
Challenged as the dossier's most load-bearing 'yes' and it survives. Sales wiki, verbatim: 'At the point of sale all stock items are checked to see if there is sufficient quantity on hand to satisfy the sale', and 'If the Item Type is set to non-stock then the validation will not take place'. Item Kits wiki confirms components stay individually tracked ('The quantity of each item in the package can continue to be tracked as if it were not in the package'). Native, first-party, no add-on. https://github.com/opensourcepos/opensourcepos/wiki/Sales · retrieved 2026-08-01 adversarially verified
inventory-86-auto-sync differentiator
Stock shortfall is flagged at the register, but there are no other channels to sync to. https://github.com/opensourcepos/opensourcepos/wiki/Sales · retrieved 2026-08-01
inventory-count-modes
A dedicated Stocktake module supports full and partial counts; scheduled recurring cycle counts and per-count variance history retention are not documented. https://github.com/opensourcepos/opensourcepos/wiki/Stocktake · retrieved 2026-08-01
inventory-mobile-count-offline
Hardware datasheet states mobile barcode reading "isn't yet available"; the app is online-only web with no offline count capture. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
inventory-vendor-catalogs-edi differentiator
Purchasing supports suppliers and purchase orders, but no named distributor EDI catalogs or electronic PO transmission. https://github.com/opensourcepos/opensourcepos/wiki/Purchasing · retrieved 2026-08-01
inventory-invoice-ocr differentiator
CSV import is the only bulk ingest path; no OCR or invoice parsing. https://github.com/opensourcepos/opensourcepos/wiki/Import-data-from-CSV-file · retrieved 2026-08-01
inventory-price-change-alerts differentiator
Receivings record cost price per receipt so history exists in the data, but no alerting on price deviation is documented.
inventory-par-auto-suggest differentiator
Upheld on the fact but the citation is wrong and should be corrected. The cited Inventory-Items wiki page contains nothing about reorder levels — it covers module access and CSV import only. The supporting text is on the Items page, which lists 'reorder level' among item settings. Partial stands (reorder level exists, no forecast-driven suggested PO quantities). https://github.com/opensourcepos/opensourcepos/wiki/Items · retrieved 2026-08-01 adversarially verified
inventory-waste-logging
Manual inventory adjustments with a comment and the Expenses module can absorb waste, but there is no structured reason-coded waste workflow or separate waste-cost report. https://github.com/opensourcepos/opensourcepos/wiki/Expenses · retrieved 2026-08-01
inventory-shelf-life-expiry
Item Attributes support date-type custom fields, but no expiring-soon report or alert is documented.
inventory-bar-partial-bottle
Hardware datasheet names no scale support; scales are absent from the supported-device list. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
inventory-cogs-gl-export
Reports export to generic spreadsheets only; no QuickBooks/Sage/NetSuite format and no GL account mapping. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
inventory-native-not-partner differentiator
Inventory, item kits, stocktake and purchasing are core first-party modules — inventory is arguably the product's primary purpose, not an add-on. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
inventory-menu-margin-linkage differentiator
Upheld, wrong citation again. Inventory-Items says nothing about cost. The Items page does enumerate 'Cost Price, Retail Price' per item, so per-item gross margin is computable; no packaged contribution-margin report exists, consistent with the vendor's own 'no dashboard / no Best Selling Items' admission. https://github.com/opensourcepos/opensourcepos/wiki/Items · retrieved 2026-08-01 adversarially verified
Reporting, BI & data access
reporting-realtime-dashboard
Datasheet cannot-do column, verbatim: 'There are reports, but no dashboard that shares Top Sales, Top Suppliers, Best Selling Items, Top Customers, etc. See #1433'. That is an affirmative statement of absence, not merely undocumented. Reports existing is not a dashboard, and there is no mobile app. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
reporting-eod-closeout
Sales, payment and tax reports exist, but the wiki does not document a single reconciled EOD close-out document with expected cash deposit.
reporting-pmix-modifier-level
Item-level sales reporting exists; there are no modifiers to report on, and daypart/revenue-center filtering is not documented. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-comps-voids-audit
Sales are logged with employee attribution and returns are tracked, but no dedicated discount/void/override audit report with reason codes is documented.
reporting-cash-over-short
Payment records by tender exist in the data model; no drawer/shift cash over-short report is documented and there is no shift/drawer construct in the wiki.
reporting-labor-productivity
No clocked hours exist in the system, so sales-per-labor-hour cannot be computed. https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
reporting-server-scorecards differentiator
No packaged per-employee scorecard report documented. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-channel-profitability differentiator
Only one fulfillment channel exists. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-scheduled-delivery
Reports are exported manually to spreadsheet; no scheduling or recipient lists documented. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-public-api differentiator
Held to the highest bar as instructed and confirmed. No API controllers or endpoints are documented anywhere in the wiki, and a REST API remains an open, unimplemented feature request on the tracker (issue #2463, plus #1400 requesting an outbound REST call on card payment). The related no-scores (webhooks, order-injection, menu-write, OAuth, rate limits, headless) all follow. https://github.com/opensourcepos/opensourcepos/issues/2463 · retrieved 2026-08-01 adversarially verified
reporting-webhooks differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
reporting-api-not-upcharged differentiator
No API exists to charge for, but raw data access is total and free via direct database access — nothing is paywalled because there is no paywall. https://github.com/opensourcepos/opensourcepos/wiki/Database-Layout · retrieved 2026-08-01
reporting-tier-paywall differentiator
Single free edition; every report and module ships in the same MIT-licensed build with no tiers or add-on SKUs. https://opensourcepos.org/ · retrieved 2026-08-01
reporting-history-retention differentiator
Self-hosted, so retention is unlimited and operator-controlled with no truncation or archive fee — but the project publishes no retention commitment because there is no service. https://github.com/opensourcepos/opensourcepos/wiki/Database-Layout · retrieved 2026-08-01
reporting-anomaly-alerts differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-nl-query
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-guest-cohorts differentiator
Customer records and sales history exist in the database but no packaged new-vs-returning or LTV cohort reporting is documented. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-sales-forecast differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reporting-tip-tax-compliance
No tip capture exists. Tax reporting exists for sales tax/VAT/GST, not tips. https://github.com/opensourcepos/opensourcepos/wiki/Taxes · retrieved 2026-08-01
Multi-location, franchise & enterprise governance
multi-location-org-hierarchy
One install = one business. "Multi-location" in the datasheet means stock locations for inventory, not an org hierarchy. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
multi-location-central-menu-publish
No corporate tier and no publish/version history; item changes are edited or CSV-imported in place. https://github.com/opensourcepos/opensourcepos/wiki/Import-data-from-CSV-file · retrieved 2026-08-01
multi-location-price-zones
Same misreading as channel-price-books: the only documented tiering is taxation tiering, and one item carries one Retail Price. There is additionally no location construct to zone against — the datasheet states 'No multi tenancy with one deployment'. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
multi-location-consolidated-reporting
Separate installs mean separate databases with no aggregation layer. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
multi-location-cross-location-giftcard
Scored partial by inference from 'one shared database'. The criterion is cross-location, and OSPOS has no locations: 'No multi tenancy with one deployment'. Separate stores mean separate installs and separate gift-card tables. The vendor also disclaims 'Management of accounting gift cards', so no liability reporting exists either. A single-store install trivially sharing its own balances is not cross-location support. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
multi-location-cross-location-loyalty
Identical inference chain, identical refutation: 'No multi tenancy with one deployment'. One customer table inside one store is not cross-location loyalty, and the vendor further disclaims 'expired dates on rewards'. https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md · retrieved 2026-08-01 adversarially verified
multi-location-multi-brand differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
multi-location-multi-tax-jurisdiction
Strong single-location tax engine: multiple simultaneous rates, VAT/GST modes, customer tax tiers/exemptions, India GST support. Configuration is per-install, not per-location. https://github.com/opensourcepos/opensourcepos/wiki/Taxes · retrieved 2026-08-01
multi-location-central-labor-policy
No labor module exists. https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
Hardware & physical footprint
hardware-commodity-devices differentiator
"Any hardware running Firefox or a modern web browser. Works on mobile but PC/Mac is recommended." No proprietary terminal exists or is sold. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-os-platforms
Partial stands but two details in the note are wrong. Client requirements ARE version-named on the Minimum Server Requirements page (Firefox/Pale Moon 34+ ESR recommended, Chrome/Chromium 40+ supported, Safari/Edge 'Modern' may work), contradicting 'only a modern browser with no named versions'. Conversely the dossier's best_at overstates deployment breadth: IIS is documented as 'May work', not supported, and Apache 2.4+ is the only 'officially supported' web server. Still partial: no client OS versions or device specs. https://github.com/opensourcepos/opensourcepos/wiki/Minimum-Server-Requirements · retrieved 2026-08-01 adversarially verified
hardware-handheld-purpose-built
No devices are sold and no handheld is named; mobile is a responsive browser view. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-handheld-battery-swap differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-handheld-lte
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-offline-mode
Browser client with no offline store; the project publishes no offline degradation matrix. A LAN-hosted server keeps working during an internet outage, but that is a deployment property, not a documented feature. https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
hardware-kds
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-kiosk differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-drive-thru
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-printer-compatibility
Multi-vendor by design: Star TSP 1431IU and Epson TM-88VI are the named recommendations, with printing mediated by browser/OS so any driver-installed printer works. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-peripherals
Scanners: "Any scanner will work if programmed to hit return after scanning" (Datalogic QuickScan recommended). Cash drawers: "out of scope due to the system being web based", only via printer kick. No scales, no customer display. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-p2pe-terminal
Credit card readers are listed as not supported; card entry happens entirely outside the application on the merchant's own terminal, and no SAQ guidance is published. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-tap-to-phone differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-pricing-transparency differentiator
No hardware is sold, so no SKU prices are published; recommended models are named without prices. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-ownership-vs-lease differentiator
Ownership is the only model — the operator buys commodity hardware from any third party. No lease, rental or subscription-bundled hardware exists. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-usable-after-churn differentiator
Nothing to churn from: no vendor account, no device activation, no remote kill. Hardware is generic browser/printer/scanner gear the operator already owns. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-rma-sla differentiator
No hardware program, so no warranty or exchange SLA. Operator relies on the OEM's own warranty. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-byod
Responsive UI runs in any phone browser and permissions are per-employee, but no BYOD security model (device trust, MDM, session policy) is documented and mobile scanning is unavailable. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-remote-device-management differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-selfpour-scales
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
hardware-callerid-integration
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
Integrations, API & extensibility
extensibility-public-api-docs
Developer docs are code-contribution oriented; no API reference exists. The substitute is the published database schema and MIT source. https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
extensibility-api-access-cost differentiator
No API to price. Nothing in the product is fee-gated, but the criterion asks about API access, which does not exist. https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
extensibility-free-sandbox differentiator
The stated reason for partial is factually wrong: 'it is a local install, not a hosted sandbox with seeded data'. A free hosted demo instance is live at demo.opensourcepos.org with published credentials (admin/pointofsale) and seeded data, plus dev.opensourcepos.org tracking master, both advertised on the project homepage and README. I loaded the demo login page myself. Nothing is gated, no sales contact, no cost. (No API credentials exist because no API exists — that is the API cell's problem, not the sandbox cell's.) https://opensourcepos.org/ · retrieved 2026-08-01 adversarially verified
extensibility-oauth-partner-apps
Authentication is local employee username/password with reCAPTCHA; no OAuth, no scoped third-party grants. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
extensibility-webhooks-push
https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
extensibility-webhook-reliability differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
extensibility-order-injection-api
https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
extensibility-menu-write-api differentiator
No API, but items and customers can be bulk-created and updated via documented CSV import, and directly via SQL against a published schema. https://github.com/opensourcepos/opensourcepos/wiki/Import-data-from-CSV-file · retrieved 2026-08-01
extensibility-doordash-preferred differentiator
Absent from DoorDash's live Preferred Integrations roster. The merchant integrations page enumerates its Preferred Partners by name - Qu, Toast, ChowNow (Cuboh), Chowly, Deliverect, PAR, Square, Checkmate, Stream, Otter, UrbanPiper, OrderOut, MYR, Crisp, RPOWER, Peppr, MOBI, SpotOn, FoodTec, Meal.co - and Open Source POS is not among them; the string does not appear on the page. DoorDash's own criteria page states a Preferred Integration must 'have at least 250 DoorDash stores using their integration' and support all eight high-quality features (order ready signal, real-time menu syncing, self-guided store setup, self-serve store activation, real-time item 86ing, item polling, integrated promotions, detailed order error reporting), none of which this project documents. https://merchants.doordash.com/en-us/integrations · retrieved 2026-08-09
extensibility-first-party-delivery-integrations differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
extensibility-middleware-compatibility
OSPOS is not a listed endpoint for Deliverect, Chowly, Otter or Checkmate; it exposes no API for middleware to target. https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
extensibility-accounting-connectors
Only Mailchimp and SMS are named third-party integrations; accounting export is generic spreadsheet. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
extensibility-payroll-export
No hours are captured and no payroll provider is named. https://github.com/opensourcepos/opensourcepos/wiki/Employees · retrieved 2026-08-01
extensibility-app-marketplace
No marketplace. Community extensions, where they exist, are forks. https://opensourcepos.org/ · retrieved 2026-08-01
extensibility-headless-embedded
Monolithic CI4 app with server-rendered views; no headless transaction engine. https://github.com/opensourcepos/opensourcepos/wiki/Development-Index · retrieved 2026-08-01
extensibility-data-portability-exit differentiator
There is no exit — the operator already holds the source and the MySQL database. Full machine-readable export is a mysqldump, plus per-module spreadsheet exports in the UI. https://github.com/opensourcepos/opensourcepos/wiki/Database-Layout · retrieved 2026-08-01
Reliability, offline & operations
reliability-offline-order-entry
No browser-side offline mode. A LAN-hosted install keeps registers working through an internet outage, but a lost LAN or server means no order entry. Not documented as an offline feature. https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
reliability-offline-card-auth differentiator
No card processing path exists at all. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
reliability-offline-decline-liability differentiator
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
reliability-lan-degraded-multi-terminal differentiator
All terminals are thin browsers against one LAN server, so shared check/table state survives an internet outage by construction — but the project does not document this as a degraded-mode feature and the server is a single point of failure. https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
reliability-local-transaction-engine differentiator
The entire transaction engine is on-premise by default: PHP/CodeIgniter 4 plus MySQL on hardware the operator runs (documented for LAMP, LEMP, XAMPP, IIS, Docker and Raspberry Pi). https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
reliability-offline-kds-printing
No KDS; receipt printing depends on the browser session reaching the server. https://github.com/opensourcepos/opensourcepos/wiki/Printing-support · retrieved 2026-08-01
reliability-printer-fallback
No printer routing engine, therefore no failover or alerting. https://github.com/opensourcepos/opensourcepos/wiki/Printing-support · retrieved 2026-08-01
reliability-sync-conflict-handling
Architecture makes it moot — a single central MySQL server means no partitioned edits to reconcile. No conflict policy is documented because none is needed. https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
reliability-offline-feature-matrix
No offline feature matrix is published anywhere in the 50-page wiki. https://github.com/opensourcepos/opensourcepos/wiki · retrieved 2026-08-01
reliability-public-status-page
No hosted service exists to have a status page; uptime is the operator's own server. https://opensourcepos.org/ · retrieved 2026-08-01
reliability-247-live-support
Support is community-only: GitHub issues/PRs, Element/Gitter chat, wiki FAQ. No phone support at any price. https://opensourcepos.org/ · retrieved 2026-08-01
reliability-onsite-install differentiator
Self-install only, via written wiki guides for Docker/LAMP/LEMP/XAMPP/IIS/Ubuntu/Windows/Raspberry Pi. No first-party or dealer install network. https://github.com/opensourcepos/opensourcepos/wiki/Getting-Started-installations · retrieved 2026-08-01
reliability-menu-build-service differentiator
Operator builds the item catalog, optionally via documented CSV import. https://github.com/opensourcepos/opensourcepos/wiki/Import-data-from-CSV-file · retrieved 2026-08-01
reliability-hardware-replacement-sla
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
reliability-pci-dss-4-attestation
No AOC, no P2PE listing, no vendor entity to attest. Card data never enters the app because card readers are unsupported. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
reliability-mfa-role-based-access
Role/module permissions per employee plus reCAPTCHA brute-force protection are documented; no MFA is documented for back-office or POS logins. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
reliability-self-serve-training
Free public wiki with ~50 pages including Getting Started usage; no video/LMS library and no terminal training mode. Several wiki pages are marked "work in progress". https://github.com/opensourcepos/opensourcepos/wiki/Getting-Started-usage · retrieved 2026-08-01
reliability-failover-terminal-role differentiator
Terminals are browsers; the single web/DB server is the master with no documented automatic failover. https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview · retrieved 2026-08-01
reliability-cellular-backup
https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
Commercial, compliance & data ownership
commercial-month-to-month-contract differentiator
No subscription exists. MIT license, free download, stop using it at any time with zero notice or cost. https://raw.githubusercontent.com/opensourcepos/opensourcepos/master/LICENSE · retrieved 2026-08-01
commercial-no-early-termination-fee differentiator
No contract, no term, no fee of any kind. https://raw.githubusercontent.com/opensourcepos/opensourcepos/master/LICENSE · retrieved 2026-08-01
commercial-autorenew-terms-published
Publicly published terms (the MIT license) contain no renewal or cancellation-notice mechanism because there is no subscription. https://raw.githubusercontent.com/opensourcepos/opensourcepos/master/LICENSE · retrieved 2026-08-01
commercial-processing-not-bundled differentiator
No processing is bundled or available; the operator uses whatever merchant account and standalone terminal it likes. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
commercial-interchange-plus-published differentiator
Not a processor; publishes no rates of any structure. https://opensourcepos.org/ · retrieved 2026-08-01
commercial-rate-increase-clause differentiator
No processing agreement exists to contain such a clause. https://opensourcepos.org/ · retrieved 2026-08-01
commercial-pricing-published
$0, published: free MIT download with unlimited terminals and users. Only donations are solicited. https://opensourcepos.org/ · retrieved 2026-08-01
commercial-module-unbundling differentiator
Every module ships in one free build and can be hidden per employee via Menu and Permissions; the Office menu can be toggled off entirely. Nothing to reprice. https://github.com/opensourcepos/opensourcepos/wiki/Menu-and-Permissions · retrieved 2026-08-01
commercial-hardware-purchase-outright
All hardware is commodity gear bought outright from third parties; no lease or rental exists. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
commercial-hardware-not-locked differentiator
Everything is non-proprietary: any modern browser on PC/Mac/tablet, any return-programmed barcode scanner, Star or Epson ESC/POS receipt printers. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
commercial-data-export-self-serve
Spreadsheet export on employees, items, customers and reports, plus unrestricted mysqldump against a documented schema. No support ticket, no fee. https://github.com/opensourcepos/opensourcepos/wiki/Database-Layout · retrieved 2026-08-01
commercial-export-customer-and-loyalty differentiator
Customer records export to spreadsheet; rewards and gift-card balances are operator-owned tables in the operator's own MySQL database. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
commercial-post-termination-export-window differentiator
Not applicable in the operator's favor: there is no termination and no cutoff — the data never leaves the operator's server. https://raw.githubusercontent.com/opensourcepos/opensourcepos/master/LICENSE · retrieved 2026-08-01
commercial-data-ownership-clause differentiator
Self-hosted MIT software with no vendor telemetry or hosted service; the project never receives transaction or customer data and so cannot use or resell it. https://raw.githubusercontent.com/opensourcepos/opensourcepos/master/LICENSE · retrieved 2026-08-01
commercial-pci-p2pe-tokenization
No P2PE, no tokenization, no SAQ guidance. Card readers are explicitly unsupported, so PCI scope determination is entirely the merchant's own responsibility. https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet · retrieved 2026-08-01
commercial-pci-dss-4-controls
No MFA is documented for application logins and no script-integrity or PCI DSS 4.0.1 control documentation exists. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
commercial-privacy-dsar-tooling
GDPR registration consent is captured on customer profiles and the operator can locate/export/delete records directly in MySQL, but no in-app DSAR workflow and no DPA (there is no processor to execute one with). https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
commercial-wcag-kiosk-accessibility differentiator
No kiosk or consumer ordering surface exists, and no VPAT/ACR is published for the Bootstrap-based staff UI. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
commercial-dual-pricing-compliant differentiator
No surcharge or cash-discount engine, and no card data in the app to classify debit vs credit. https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet · retrieved 2026-08-01
Adversarial verification
An independent pass was instructed to refute this record, defaulting to downgrade when uncertain. It challenged 22 values — 12 upheld, 9 downgraded, 1 upgraded. This is published in full because a reader who can see which values were contested, on what evidence, and which way they moved has something no affiliate-funded comparison offers.
Pricing and identity
| Field | Verdict | What the verifier found |
|---|---|---|
| pricing.software | upheld | Verified directly against the LICENSE file and the project homepage, not a roundup. Free under MIT, only a donation ask, no commercial edition and no paid support SKU found anywhere on opensourcepos.org. The footer-signature clause is correctly reported and is the only non-monetary condition. source |
| pricing.processing_rate | upheld | Verified verbatim in the hardware datasheet table: 'Credit Card Reader | Not supported' (and 'Digital Signature Capture | Not supported yet'). This is affirmative absence from first-party docs, so every downstream payments/offline-card no-score is properly grounded rather than merely undocumented. source |
| pricing.hardware | upheld | Verified. Note one unreported nuance: the recommended-hardware links are Amazon affiliate links ('Use our referral links to support the project!'), which is a small monetization channel the dossier's 'the only monetization is a donation link' claim misses. No prices are published and no hardware is sold, so the score is unaffected. source |
Capability claims
| Claim | As first scored | Verdict | What the verifier found |
|---|---|---|---|
| payments-house-accounts | partial | downgrade-to-no | The project's own feature datasheet lists this under 'What cannot do' verbatim: 'Accounts Receivable / House Accounts, OSPOS has CRM features but no A.R. features'. The researcher built a partial from the Payment-Processing page's balance-due mention, but that page itself admits balance-due tracking is still under development (#3072). Vendor-affirmed absence beats an inferred partial. source |
| reporting-realtime-dashboard | partial | downgrade-to-no | Datasheet cannot-do column, verbatim: 'There are reports, but no dashboard that shares Top Sales, Top Suppliers, Best Selling Items, Top Customers, etc. See #1433'. That is an affirmative statement of absence, not merely undocumented. Reports existing is not a dashboard, and there is no mobile app. source |
| labor-server-performance-metrics | partial | downgrade-to-no | Scored partial on 'derivable via SQL' reasoning with confidence 'inferred'. The vendor explicitly states there is no Top Sales / Best Selling / Top Customers reporting. Derivable-from-the-database is not a capability; by that standard nearly every cell in this dossier would be partial. source |
| menu-pricing-channel-price-books | partial | downgrade-to-no | The partial rests on 'customer price tiers'. I found no customer price tiers in any first-party doc. What the datasheet actually says is 'VAT and multi tiers taxation' under Customers, and the homepage says 'Multiple taxation options (VAT, GST, customer, multi-tier)'. That is tax tiering, not a price book. Item pricing is a single 'Items Price Management' entry with one Retail Price field per item (Items wiki: 'UPC/EAN/ISBN, Item Name, Category, Supplier, Cost Price, Retail Price, Tax 1, Tax 2, Quantity in stock'). This looks like a misreading of 'multi tiers taxation' as tiered pricing. source |
| multi-location-price-zones | partial | downgrade-to-no | Same misreading as channel-price-books: the only documented tiering is taxation tiering, and one item carries one Retail Price. There is additionally no location construct to zone against — the datasheet states 'No multi tenancy with one deployment'. source |
| multi-location-cross-location-giftcard | partial | downgrade-to-no | Scored partial by inference from 'one shared database'. The criterion is cross-location, and OSPOS has no locations: 'No multi tenancy with one deployment'. Separate stores mean separate installs and separate gift-card tables. The vendor also disclaims 'Management of accounting gift cards', so no liability reporting exists either. A single-store install trivially sharing its own balances is not cross-location support. source |
| multi-location-cross-location-loyalty | partial | downgrade-to-no | Identical inference chain, identical refutation: 'No multi tenancy with one deployment'. One customer table inside one store is not cross-location loyalty, and the vendor further disclaims 'expired dates on rewards'. source |
| order-capture-catering | partial | downgrade-to-no | Built from quotes plus invoices with balance due. But the datasheet's POS cannot-do column disclaims exactly the mechanisms a catering deposit flow needs: 'Advanced Transaction Types such as Special Orders, Back Orders and Layaways, Credit accounting sales', and separately 'no A.R. features'. A retail quote-to-invoice path with no deposit, no event date, no BEO and no credit sales is not a rough catering flow. source |
| kitchen-waste-logging | partial | downgrade-to-no | Partial credit was given for the Expenses module 'absorbing' waste. The datasheet says expenses are for 'basic expenses, no accounting needs' and that 'Accounting with expenses over the sales are out of scope'. There is no kitchen surface, no reason codes, no waste record type. This is a workaround, not a feature. source |
| extensibility-free-sandbox | partial | upgrade-to-yes | The stated reason for partial is factually wrong: 'it is a local install, not a hosted sandbox with seeded data'. A free hosted demo instance is live at demo.opensourcepos.org with published credentials (admin/pointofsale) and seeded data, plus dev.opensourcepos.org tracking master, both advertised on the project homepage and README. I loaded the demo login page myself. Nothing is gated, no sales contact, no cost. (No API credentials exist because no API exists — that is the API cell's problem, not the sandbox cell's.) source |
| menu-pricing-size-style-matrix | no | upheld | Upheld and strengthened. The researcher inferred this from the Items page; the datasheet states it outright in the cannot-do column: 'Inventory Matrix, Track items features, colors, materials'. This is one of the few 'no' scores that is affirmative absence rather than silence, and the confidence should read documented-explicit. source |
| inventory-par-auto-suggest | partial | upheld | Upheld on the fact but the citation is wrong and should be corrected. The cited Inventory-Items wiki page contains nothing about reorder levels — it covers module access and CSV import only. The supporting text is on the Items page, which lists 'reorder level' among item settings. Partial stands (reorder level exists, no forecast-driven suggested PO quantities). source |
| inventory-menu-margin-linkage | partial | upheld | Upheld, wrong citation again. Inventory-Items says nothing about cost. The Items page does enumerate 'Cost Price, Retail Price' per item, so per-item gross margin is computable; no packaged contribution-margin report exists, consistent with the vendor's own 'no dashboard / no Best Selling Items' admission. source |
| payments-split-tender | partial | upheld | Upheld, but not from the cited source. The Payment-Processing wiki page does not document split or multiple payments at all. The support is in the datasheet: 'apply multiple payments (inclusivelly different types) to the sale'. Partial is correct — multiple tenders yes, no split by seat, item or even shares. source |
| inventory-realtime-depletion | yes | upheld | Challenged as the dossier's most load-bearing 'yes' and it survives. Sales wiki, verbatim: 'At the point of sale all stock items are checked to see if there is sufficient quantity on hand to satisfy the sale', and 'If the Item Type is set to non-stock then the validation will not take place'. Item Kits wiki confirms components stay individually tracked ('The quantity of each item in the package can continue to be tracked as if it were not in the package'). Native, first-party, no add-on. source |
| inventory-unit-conversion-yields | unknown | upheld | Unknown is right, but the researcher missed the relevant evidence and used the wrong page. The Items wiki documents work-in-progress pack selling with 'Quantity per Pack', pack names such as CASE or CARTON, and a low-sell-unit reference — a real purchase-to-sell conversion, but explicitly under development and with no recipe units and no yield percentages. Unknown remains the honest score; the note should cite this rather than weighted barcodes. source |
| hardware-os-platforms | partial | upheld | Partial stands but two details in the note are wrong. Client requirements ARE version-named on the Minimum Server Requirements page (Firefox/Pale Moon 34+ ESR recommended, Chrome/Chromium 40+ supported, Safari/Edge 'Modern' may work), contradicting 'only a modern browser with no named versions'. Conversely the dossier's best_at overstates deployment breadth: IIS is documented as 'May work', not supported, and Apache 2.4+ is the only 'officially supported' web server. Still partial: no client OS versions or device specs. source |
| reporting-public-api | no | upheld | Held to the highest bar as instructed and confirmed. No API controllers or endpoints are documented anywhere in the wiki, and a REST API remains an open, unimplemented feature request on the tracker (issue #2463, plus #1400 requesting an outbound REST call on card payment). The related no-scores (webhooks, order-injection, menu-write, OAuth, rate limits, headless) all follow. source |
| extensibility-doordash-preferred | no / B, cites get.doordash.com preferred-integration-partners: "Not in DoorDash's 2026 Preferred Integration Partner cohort (Checkmate, Chowly, De..." | upheld | The cited URL is dead: it redirects to merchants.doordash.com and returns HTTP 404 at 428,095 bytes, byte-identical in size to a fabricated path in the same directory, so the large body is a soft-404 shell rather than the article. I located the successors via merchants.doordash.com/sitemap-0.xml: the program is now documented at /en-us/learning-center/doordash-preferred-integrations-program (HTTP 200, real body) and it directs readers to the integrations page for the roster. The integrations page payload names its Preferred Partners explicitly (Qu, Toast, ChowNow/Cuboh, Chowly, Deliverect, PAR, Square, Checkmate, Stream, Otter, UrbanPiper, OrderOut, MYR, Crisp, RPOWER, Peppr, MOBI, SpotOn, FoodTec, Meal.co); Open Source POS is absent and no case-insensitive form of its name occurs. That is a live enumeration, which is the positive evidence of absence a `no` requires. Value unchanged; citation re-pointed and the note's stale ten-name cohort corrected. source |
Sources
Every URL this record cites. 32 in total.
- https://github.com/opensourcepos/opensourcepos/wiki/Sales-Restaurant
- https://github.com/opensourcepos/opensourcepos/wiki/Complete-feature-datasheet
- https://github.com/opensourcepos/opensourcepos/wiki/Supported-hardware-datasheet
- https://github.com/opensourcepos/opensourcepos/wiki/Webserver-Overview
- https://github.com/opensourcepos/opensourcepos/wiki/Development-Index
- https://github.com/opensourcepos/opensourcepos/wiki/Work-Orders
- https://raw.githubusercontent.com/wiki/opensourcepos/opensourcepos/Complete-feature-datasheet.md
- https://github.com/opensourcepos/opensourcepos/wiki/Menu-and-Permissions
- https://github.com/opensourcepos/opensourcepos/wiki/Item-Attributes
- https://github.com/opensourcepos/opensourcepos/wiki/Item-Kits
- https://github.com/opensourcepos/opensourcepos/wiki/Sales
- https://github.com/opensourcepos/opensourcepos/wiki/Items
- https://opensourcepos.org/
- https://github.com/opensourcepos/opensourcepos/wiki/Payment-Processing
- https://github.com/opensourcepos/opensourcepos/wiki/Printing
- https://github.com/opensourcepos/opensourcepos/wiki/Printing-support
- https://github.com/opensourcepos/opensourcepos/wiki/Employees
- https://github.com/opensourcepos/opensourcepos/wiki/Stocktake
- https://github.com/opensourcepos/opensourcepos/wiki/Purchasing
- https://github.com/opensourcepos/opensourcepos/wiki/Import-data-from-CSV-file
- https://github.com/opensourcepos/opensourcepos/wiki/Expenses
- https://github.com/opensourcepos/opensourcepos/issues/2463
- https://github.com/opensourcepos/opensourcepos/wiki/Database-Layout
- https://github.com/opensourcepos/opensourcepos/wiki/Taxes
- https://github.com/opensourcepos/opensourcepos/wiki/Minimum-Server-Requirements
- https://about.doordash.com/en-us/news/doordash-preferred-integrations-program-2026
- https://github.com/opensourcepos/opensourcepos/wiki
- https://github.com/opensourcepos/opensourcepos/wiki/Getting-Started-installations
- https://github.com/opensourcepos/opensourcepos/wiki/Getting-Started-usage
- https://raw.githubusercontent.com/opensourcepos/opensourcepos/master/LICENSE
- https://merchants.doordash.com/en-us/integrations
- https://merchants.doordash.com/en-us/learning-center/doordash-preferred-integrations-program