Vendors / Mobile & food truck
Zettle by PayPal
Zettle by PayPal (US: PayPal Point of Sale)
PayPal's reader-plus-app micro-merchant POS, renamed PayPal Point of Sale in the US — the pricing transparency is genuinely best-in-class (published rates, zero monthly fee, hardware from $29 outright) but the restaurant-operations surface is essentially absent: no KDS, no delivery, no recipe costing, no multi-unit governance.
scored live legacy rubric
- Claims in scope
- 226
- Scored
- 40
- Assessed
- 30
- Unknown
- 196
- Not applicable
- 88
- Cells challenged
- 7
unknown, never as no.Identity
- Owner
- PayPal Holdings, Inc. — PayPal's own US business page states 'PayPal Zettle is now PayPal Point of Sale. Your account will not undergo any changes.' The Zettle brand persists in Europe (zettle.com/gb).
- Parent
- PayPal
- Who it is for
- Food trucks, market stalls, pop-ups and micro-cafes taking card payments from a phone or tablet; strongest in Europe, sold in the US under the PayPal POS brand
- Site
- https://www.zettle.com/us/pos
Pricing
transparency: unknown · unit: per transaction (% + fixed fee) plus one-time hardware purchase; no software subscription · processor lock-in: yes
- Software
- US: no monthly or setup fee. 2.29% + $0.09 card-present and QR code; 3.49% + $0.09 keyed/manual entry; invoicing 3.49% + $0.49 (PayPal) or 2.99% + $0.49 (cards). Hardware bought outright: Card Reader $29 first / $79 additional, Terminal $199 or $239 with barcode scanner. UK: first PayPal Reader GBP 29 ex VAT, additional GBP 69.
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-split-merge
Micro-merchant checkout; split-check behaviour is not documented on the US product or pricing pages.
order-capture-offline-order-entry
The vendor's only published offline article excludes its own POS app: 'Offline payments are currently only available through select Point of Sale (POS) Apps that have integrated PayPal's POS SDK and enabled the Offline Payments feature. This functionality is not available for standard PayPal POS App.' Offline card acceptance is therefore a capability the SDK grants to third-party apps built on Zettle, not a capability of the Zettle/PayPal Point of Sale app being scored (developer.zettle.com/docs/payment-integrations/android-sdk/user-guides/manage-offline-card-payments, retrieved 2026-08-08). The product overview article states the connectivity requirement directly: 'For PayPal Point of Sale to work, you need to be connected to a 3G, 4G or wifi network' (https://www.zettle.com/gb/help/articles/1083274-what-is-paypal-point-of-sale, retrieved 2026-08-08). I retrieved all 91 articles in the GB help centre and grepped them for offline / no internet / connection lost; the only substantive hits are the offline-payments article above and the 'Repeat Payments' article's advice to keep 'a stable internet connection'. No article describes creating orders, applying modifiers, routing to a kitchen or tendering cash while the connection is down, and none publishes a degraded-mode matrix. Cash tender itself is documented only as an in-app payment method with no offline behaviour stated (https://www.zettle.com/gb/help/articles/1084756-taking-cash-payments, retrieved 2026-08-08). https://www.zettle.com/gb/help/articles/7102116-offline-payments · retrieved 2026-08-08 adversarially verified
order-capture-kiosk-first-party differentiator
Not scored by this record.
order-capture-drive-thru
Not scored by this record.
order-capture-drive-thru-timers
Not scored by this record.
order-capture-voice-ai differentiator
Not scored by this record.
order-capture-throttling differentiator
Not scored by this record.
order-capture-scheduled-orders
No make-queue or fire-time concept in the product.
order-capture-order-ready-signal differentiator
Not scored by this record.
order-capture-void-comp-controls
Not scored by this record.
Menu, modifiers & pricing engine
menu-pricing-nested-modifiers
Product variants and options exist; three-level nesting with per-level min/max and forced selection is not documented.
menu-pricing-modifier-price-by-parent-size
The Product library help article is the complete product-model reference and contains no modifier entity of any kind. The only compositional construct is variants: 'You can add multiple variants to a product that comes in more than one option, such as size, colour and style. You can add up to three options per product... A product can have up to 100 variants in total.' Variant prices are per-product only ('these attributes are editable on variant-level'); there is no shared modifier reusable across parent items, so no parent-by-size price matrix exists. Corroborated at grade A: the Purchase API reference (https://developer.zettle.com/docs/api/purchase/api-reference-md, retrieved 2026-08-04) line-item model has variant fields and zero occurrences of 'modifier' or 'addon'. The one Zettle article that ever documented modifiers, 2388639-using-product-modifiers-with-zettle-food-and-drink, now 30x-redirects to paypal.com/uk/business/pos-system/restaurants — that surface belonged to the retired Zettle Food & Drink product. https://www.zettle.com/gb/help/articles/1165263-product-library · retrieved 2026-08-04
menu-pricing-topping-quantity-tiers
No modifier construct exists to tier. The Product library article enumerates the whole model — products, up to three variant options per product, categories, folders, discounts, Pages — with no modifiers, no add-ons and no quantity or multiplier field. Variant option values are discrete named values ('The size option has three values: Small, Medium, Large'), a selection not a quantity tier, and each carries a flat price rather than a multiplier. Corroborated at grade A by the Purchase API reference (https://developer.zettle.com/docs/api/purchase/api-reference-md, retrieved 2026-08-04), whose line-item schema contains no modifier or multiplier field. Light/regular/extra pricing is therefore only reachable by creating separate variant values or separate products. https://www.zettle.com/gb/help/articles/1165263-product-library · retrieved 2026-08-04
menu-pricing-size-style-matrix differentiator
Not scored by this record.
menu-pricing-included-allowance differentiator
Not scored by this record.
menu-pricing-combos
Not scored by this record.
menu-pricing-upsell-prompts differentiator
Not scored by this record.
menu-pricing-86-propagation
Not scored by this record.
menu-pricing-countdown-auto-86 differentiator
Not scored by this record.
menu-pricing-dayparting
Not scored by this record.
menu-pricing-channel-price-books
Not scored by this record.
menu-pricing-dual-pricing differentiator
Not scored by this record.
menu-pricing-allergen-nutrition
Not scored by this record.
menu-pricing-3p-menu-push
Not scored by this record.
menu-pricing-dynamic-pricing
Not scored by this record.
Payments & money movement
payments-processor-choice differentiator
Not scored by this record.
payments-published-rates differentiator
Not scored by this record.
payments-dual-pricing differentiator
Not scored by this record.
payments-surcharge-guardrails differentiator
Not scored by this record.
payments-emv-nfc
Accepted payment methods names the devices and the wallets: 'The PayPal Reader, Zettle Reader 2 and Terminal allow you to accept contactless and card payments as well as transactions with mobile wallets such as Apple, Samsung, and Google Pay', with Apple Pay, Google Pay and Samsung Pay listed individually. Chip is documented procedurally in Taking card & contactless payments - 'For contactless cards: Tap the card on the screen. For chip card payments: Insert the card in the card slot' followed by 'Enter PIN or sign (if applicable)' (https://www.zettle.com/gb/help/articles/1084729-taking-card-and-contactless-payments, retrieved 2026-08-08). The shortfall is the other direction: magstripe is gone, not EMV/NFC - 'Our latest card readers do not support swipe transactions with magnetic stripe cards.' https://www.zettle.com/gb/help/articles/1084715-accepted-payment-methods · retrieved 2026-08-08
payments-softpos-tap-to-pay differentiator
Not scored by this record.
payments-qr-guest-pay differentiator
Not scored by this record.
payments-offline-store-and-forward differentiator
Not scored by this record.
payments-offline-decline-liability differentiator
Not scored by this record.
payments-gift-cards
Gift cards exist in some Zettle markets; not confirmed for the US PayPal Point of Sale product.
payments-split-tender
Not scored by this record.
payments-refund-void-controls
Refunds are supported; role-based approval and an immutable approver audit log are not documented.
payments-chargeback-tooling differentiator
Not scored by this record.
payments-card-on-file differentiator
Not scored by this record.
payments-payout-timing differentiator
Not scored by this record.
payments-p2pe-pci4
Not scored by this record.
Kitchen & production
kitchen-station-routing
No KDS product in the lineup.
kitchen-expo-consolidation
Migrated from the 2026-08-01 research pass; no source URL was recorded.
kitchen-prep-time-pacing differentiator
Not scored by this record.
kitchen-order-throttling differentiator
Not scored by this record.
kitchen-channel-pause-propagation differentiator
Not scored by this record.
kitchen-order-ready-callback differentiator
Not scored by this record.
kitchen-bump-bar-hardware
Migrated from the 2026-08-01 research pass; no source URL was recorded.
kitchen-all-day-counts
Not scored by this record.
kitchen-sla-alerts
Not scored by this record.
kitchen-printer-fallback differentiator
Not scored by this record.
kitchen-offline-operation differentiator
Not scored by this record.
kitchen-item-build-screens differentiator
Not scored by this record.
kitchen-recall-refire
Not scored by this record.
kitchen-order-modification-alerts differentiator
Not scored by this record.
kitchen-guest-ready-notification differentiator
Not scored by this record.
kitchen-waste-logging
Not scored by this record.
kitchen-speed-of-service-reporting
Not scored by this record.
kitchen-prep-forecasting
Not scored by this record.
Delivery, dispatch & third-party channels
delivery-dispatch-board
Migrated from the 2026-08-01 research pass; no source URL was recorded.
delivery-address-validation
Not scored by this record.
delivery-daas-dispatch
Not scored by this record.
delivery-3p-direct-integration differentiator
Not scored by this record.
delivery-3p-injection
Not scored by this record.
delivery-menu-push
Not scored by this record.
delivery-86-sync
Not scored by this record.
delivery-store-pause
Not scored by this record.
delivery-3p-reconciliation differentiator
Not scored by this record.
delivery-injection-error-visibility differentiator
Not scored by this record.
delivery-tracking-page
Not scored by this record.
delivery-promise-time differentiator
Not scored by this record.
Digital ordering & guest-facing channels
digital-first-party-web
PayPal sells online checkout and invoicing separately; a branded restaurant ordering site writing into the POS is not documented.
digital-menu-single-source
There is no first-party digital ordering channel to single-source. The help centre's 'Getting started with integrations' article presents online selling solely as connecting a third-party e-commerce platform — Adobe Commerce, BigCommerce, ePages Now, PrestaShop, Shopify, Shopware or WooCommerce — with data synced between the Zettle product library and the external store; no Zettle-owned web or app ordering channel, online menu or first-party checkout appears in the article or anywhere in the help centre. The Product library reference (1165263, retrieved 2026-08-04) likewise contains no digital-menu or online-channel concept in the product model. A digital menu therefore always lives in a third-party platform as a separate build kept aligned by integration sync — exactly what the claim's 'first-party digital channels ... without a separate digital menu build' excludes. The former zettle.com/gb/integrations/e-commerce page now 301-redirects to paypal.com/uk/zettle. https://www.zettle.com/gb/help/articles/2645279-getting-started-with-integrations · retrieved 2026-08-04
digital-native-app differentiator
Not scored by this record.
digital-account-saved-payment
PayPal wallet identity exists at the consumer layer; a merchant-branded guest account with reorder is not a POS feature here.
digital-upsell-engine differentiator
Not scored by this record.
digital-scheduled-pacing
Not scored by this record.
digital-fulfillment-modes
Not scored by this record.
digital-qr-table
Not scored by this record.
digital-kiosk differentiator
Not scored by this record.
digital-voice-ai-phone differentiator
Not scored by this record.
digital-drivethru-ai
Not scored by this record.
digital-sms-ordering
Not scored by this record.
digital-google-order differentiator
Not scored by this record.
digital-apple-business-connect
Not scored by this record.
digital-loyalty-attach
Not scored by this record.
digital-subscriptions
Not scored by this record.
digital-promo-parity
Not scored by this record.
digital-guest-data-ownership differentiator
Not scored by this record.
digital-checkout-pci-sca
Not scored by this record.
digital-surcharge-transparency differentiator
Not scored by this record.
Guest data, loyalty & marketing
guest-loyalty-unified-profile
The documented linking mechanism is manual, per sale, in-store only - the opposite of automatic cross-channel merge. Per the Customer lists article (renamed 'PayPal Point of Sale Customer lists'; all quotes re-verified verbatim on 2026-08-08): 'You can only create new customers in your Customers menu in the app, or add them to the sale in the receipt view after taking payment', and both documented sign-up paths - 'Pass the device to your customer and ask them to enter their information' and 'Click Sign-up via QR code and ask your customer to scan the code with their smartphone camera' - begin with the same manual step, 'After taking payment, click Add or search for customer.' Insights accrue only to sales staff attach this way: 'To view analytics, customers must be added to your customer list. This is done during check-out by: Adding your products to the cart and check-out as usual. Click Add Customer and search for the customer shopping with you. This sale will now be logged under customer insights.' No dedup or merge behaviour is documented anywhere in the article - the only identity operations described are create and delete ('Open their profile and click the Delete button') - and there are no other first-party channels to merge in any case: Zettle offers no first-party web/app ordering or kiosk, the help centre's Integrations section being third-party e-commerce platforms only (Adobe Commerce, BigCommerce, ePages, PrestaShop, Shopify, Shopware, WooCommerce). https://www.zettle.com/gb/help/articles/2442005-paypal-point-of-sale-customer-lists · retrieved 2026-08-08
guest-loyalty-thirdparty-identity-attach differentiator
Not scored by this record.
guest-loyalty-accrual-models
One accrual model, not the required two. The loyalty article enumerates the entire configuration surface: signup vouchers (discount of 5%, 10%, 15% or 20%; validity 30, 90 or 365 days) and loyalty vouchers earned 'by spending a certain amount with your business, pre-defined by you in your loyalty settings' (a milestone amount; percentage or fixed-amount discount; validity 30, 90 or 365 days). Spend-milestone vouchers are the only accrual mechanism — there is no points-per-dollar balance and no visit/punch-count option anywhere in the documented settings, and vouchers 'can only be redeemed in full'. The claim requires at least two of points-per-dollar, visit/punch-count and spend-tier as configuration; Zettle's native program offers exactly one. https://www.zettle.com/gb/help/articles/6502151-loyalty-program-for-your-customers · retrieved 2026-08-04
guest-loyalty-offline-behavior differentiator
Not scored by this record.
guest-loyalty-offer-stacking-rules differentiator
Not scored by this record.
guest-loyalty-targeted-offers differentiator
Not scored by this record.
guest-loyalty-rfm-segmentation differentiator
Not scored by this record.
guest-loyalty-lifecycle-automation
Two always-on triggered automations exist, but not the three the claim names. Enrolment and milestone emails fire automatically once configured: 'each time you add a new customer to your Customer List, they'll receive the welcome email with the discount code. The codes are automatically generated', and 'Your customers receive the voucher in email every time they earn one (signup action, or milestone reached).' The automatic signup welcome covers the first-visit thank-you. SHORTFALL: no birthday automation and no lapsed win-back — the loyalty settings expose only the signup and spend-milestone triggers, and the help centre documents no campaign builder or other native marketing automation that could add them. https://www.zettle.com/gb/help/articles/6502151-loyalty-program-for-your-customers · retrieved 2026-08-04
guest-loyalty-native-email-sms differentiator
Not scored by this record.
guest-loyalty-consent-management
Not scored by this record.
guest-loyalty-10dlc-registration
Not scored by this record.
guest-loyalty-campaign-attribution differentiator
Not scored by this record.
guest-loyalty-data-export-portability differentiator
Not scored by this record.
guest-loyalty-review-capture-routing differentiator
Not scored by this record.
guest-loyalty-referral-program
Not scored by this record.
guest-loyalty-wallet-pass differentiator
Not scored by this record.
guest-loyalty-privacy-rights-tooling
Not scored by this record.
guest-loyalty-redemption-fraud-controls
Not scored by this record.
guest-loyalty-ai-offer-recommendation differentiator
Not scored by this record.
guest-loyalty-stored-value-gift
Not scored by this record.
Labor & workforce
labor-clock-in-at-pos
Staff accounts exist in Zettle in some markets; PIN/badge time clock is not documented for the US product.
labor-photo-punch-verification differentiator
Not scored by this record.
labor-geofenced-mobile-punch
Not scored by this record.
labor-offline-time-punch differentiator
Not scored by this record.
labor-granular-rbac
Two fixed tiers, owner and staff, with a hard-coded capability list the operator cannot alter. The My staff article enumerates the staff role exhaustively by section: staff CAN check out, use all activated payment methods, view all products and stock, view and search all receipts, 'Issue a refund of a sale they made', and 'Get an overview of their own sales only'; staff CAN'T add, edit or remove products, edit stock quantity, 'Issue a refund of a sale made by someone else', 'Access Sales reports', 'Access Product reports', invite other staff, or sign in to my.zettle.com at all. The only per-staff controls documented are rename and Inactivate — no per-action grants for void, comp, discount, drawer open or price change, and no per-location scoping. PayPal's US article (https://www.paypal.com/us/cshelp/article/how-do-i-add-staff-to-my-paypal-zettle-account-help664, retrieved 2026-08-04) gives the same fixed 'Staff users can: / Staff users can't:' pair, and the single permission toggle at creation is the all-or-nothing 'Use Zettle by PayPal tools'. https://www.zettle.com/gb/help/articles/1084768-my-staff · retrieved 2026-08-04
labor-manager-override-audit
There is no override to audit. The My staff article enumerates the staff permission model section by section and every restriction is a hard block, not a manager-approvable action — a staff member simply 'can't' issue a refund of someone else's sale, edit products, or open Sales reports, and no approval, escalation or manager-PIN path is offered anywhere in the article. Attribution that does exist is sale-level, not override-level: 'The staff member's first and last name are displayed on the receipt' and 'you can see which of your staff members made a specific transaction' in the my.zettle.com transaction download. That is a sales ledger, not a queryable immutable approvals trail attributing an approver to an override event. A site-scoped search of zettle.com, paypal.com help and the PayPal community for manager approval, override or PIN authorisation on Point of Sale returned no such feature. https://www.zettle.com/gb/help/articles/1084768-my-staff · retrieved 2026-08-04
labor-native-scheduling differentiator
Not scored by this record.
labor-demand-labor-forecast differentiator
Not scored by this record.
labor-realtime-labor-percent differentiator
Not scored by this record.
labor-overtime-prevention differentiator
Not scored by this record.
labor-minor-labor-rules
Not scored by this record.
labor-qualified-tips-w2-reporting differentiator
Not scored by this record.
labor-native-payroll differentiator
Not scored by this record.
labor-payroll-export-formats
Not scored by this record.
labor-shift-swap-workflow differentiator
Not scored by this record.
labor-server-performance-metrics differentiator
Not scored by this record.
Inventory, purchasing & cost control
inventory-recipe-bom-costing
Simple product/stock tracking only; no recipe or sub-recipe costing.
inventory-unit-conversion-yields
Migrated from the 2026-08-01 research pass; no source URL was recorded.
inventory-theoretical-vs-actual differentiator
Not scored by this record.
inventory-realtime-depletion differentiator
Not scored by this record.
inventory-86-auto-sync differentiator
Not scored by this record.
inventory-count-modes
No count workflow of any kind exists — the only documented stock adjustment is a direct quantity overwrite. The Inventory help article covers the entire feature: a per-product 'Inventory tracking' toggle, entering a starting number per variant, and updating stock from the Inventory view by tapping products, entering the new quantity and saving. Low-stock alerts ('By default, you'll be notified when you only have 3 left of a product. You can set your own low-stock limits') and oversell behaviour ('Inventory will never prevent you from selling... the inventory count will show as negative (-1)') complete the article. There is no full physical count session, no ad-hoc spot count, no scheduled recurring cycle count, and no variance record — a manual quantity edit replaces the prior number rather than logging a counted-vs-expected variance history. https://www.zettle.com/gb/help/articles/2771896-inventory · retrieved 2026-08-04
inventory-mobile-count-offline
Not scored by this record.
inventory-vendor-catalogs-edi differentiator
Not scored by this record.
inventory-invoice-ocr differentiator
Not scored by this record.
inventory-price-change-alerts differentiator
Not scored by this record.
inventory-par-auto-suggest differentiator
Not scored by this record.
inventory-waste-logging
Not scored by this record.
inventory-cogs-gl-export
Not scored by this record.
inventory-native-not-partner differentiator
Not scored by this record.
inventory-menu-margin-linkage differentiator
Not scored by this record.
Reporting, BI & data access
reporting-realtime-dashboard
Both surfaces are documented. In the app: 'The reports section in the app is designed to give you a quick overview of your business. When you first enter the reports section, you can see a list of your last day's sales amount, number of sales and returns', with 'sales amount, sales, returns, fees, average sale, cash, redeemed gift cards' and top-selling products. On the web: 'Reports on my.zettle.com... The Reports overview page shows the summary of your daily, weekly and monthly sales', plus a Sales by hour graph for the selected day and sales/payments breakdowns by channel and payment method. Shortfall: the article never states refresh latency - no 'real time', no 'within minutes', and the finest documented granularity is an hourly bar for the current day - so 'reflecting transactions within minutes of the sale' is undocumented. The article also warns that behaviour differs for PayPal Business account users: 'If you are using Zettle with your PayPal Business account, the features differ slightly from what is described in this article.' https://www.zettle.com/gb/help/articles/1084803-about-reports · retrieved 2026-08-08
reporting-eod-closeout
A printable per-day sales report exists; a close-out reconciling to an expected cash deposit does not. 'About reports' documents daily/weekly/monthly reports in the app and at my.zettle.com covering sales amount, number of sales, returns, fees, average sale, payment-method breakdown, and VAT — 'collected VAT per VAT rate and what your sales are excluding and including VAT' — plus sales by product, category and staff member, printable ('Print the overview of your sales report on your receipt printer or a standard printer') and exportable ('choose between PDF or Excel report'). SHORTFALL: nothing reconciles the drawer — no expected cash deposit, float, paid-in/paid-out or counted-vs-expected cash section appears anywhere in the article, and tips and discount totals are not among the documented report contents, so the single end-of-day close-out document the claim describes is not among the enumerated reports. https://www.zettle.com/gb/help/articles/1084803-about-reports · retrieved 2026-08-04
reporting-pmix-modifier-level
Product-level sales reporting is expected; modifier-level PMIX with daypart and revenue-center filters is not documented.
reporting-comps-voids-audit
Not scored by this record.
reporting-cash-over-short
Not scored by this record.
reporting-labor-productivity
Not scored by this record.
reporting-channel-profitability differentiator
Not scored by this record.
reporting-scheduled-delivery
Not scored by this record.
reporting-public-api differentiator
Not scored by this record.
reporting-webhooks differentiator
Not scored by this record.
reporting-api-not-upcharged differentiator
Not scored by this record.
reporting-tier-paywall differentiator
Not scored by this record.
reporting-history-retention differentiator
Not scored by this record.
reporting-anomaly-alerts differentiator
Not scored by this record.
reporting-nl-query
Not scored by this record.
reporting-guest-cohorts differentiator
Not scored by this record.
reporting-sales-forecast differentiator
Not scored by this record.
reporting-tip-tax-compliance
Not scored by this record.
Multi-location, franchise & enterprise governance
multi-location-multi-brand differentiator
Not scored by this record.
Hardware & physical footprint
hardware-commodity-devices differentiator
Not scored by this record.
hardware-os-platforms
The Compatible smartphones and tablets article names the client platforms and states minimum versions and device requirements: 'Our card readers have been developed for compatibility with smartphones and tablets that run iOS or Android and have Bluetooth and an internet connection', then gives the floor per device - PayPal Reader, Zettle Reader 2 and Zettle Reader each 'Requires you to run Apple iOS 14 and higher or Android 8.1 and higher.' The Terminal is documented as its own client rather than a paired one: 'The PayPal Terminal is an all-in-one solution, which means it both runs the Zettle by PayPal app and accepts payments... the Terminal cannot be connected to other smartphones or tablets.' The back office is browser-based at my.zettle.com (About reports). No Windows or Linux register client exists, which is a scope fact rather than a shortfall. https://www.zettle.com/gb/help/articles/1084705-compatible-smartphones-and-tablets · retrieved 2026-08-08
hardware-handheld-purpose-built
Not scored by this record.
hardware-handheld-battery-swap differentiator
Not scored by this record.
hardware-handheld-lte
Not scored by this record.
hardware-offline-mode
No published matrix of what works with the internet down.
hardware-kds
Migrated from the 2026-08-01 research pass; no source URL was recorded.
hardware-kiosk differentiator
Not scored by this record.
hardware-drive-thru
Not scored by this record.
hardware-printer-compatibility
Not scored by this record.
hardware-peripherals
Not scored by this record.
hardware-p2pe-terminal
Not scored by this record.
hardware-tap-to-phone differentiator
Not scored by this record.
hardware-pricing-transparency differentiator
Not scored by this record.
hardware-ownership-vs-lease differentiator
Not scored by this record.
hardware-usable-after-churn differentiator
Not scored by this record.
hardware-byod
Not scored by this record.
Integrations, API & extensibility
extensibility-public-api-docs
developer.zettle.com is fully public: no login, no partner agreement, no gating. The reference pages embed the machine-readable spec itself - the Product Library reference page's payload begins '"spec":{"openapi":"3.0.1","info":{"title":"Product Library API","description":"The Product Library API is used for managing merchant's product information and product images.","version":"1.0.0"}' - retrieved anonymously with an ordinary browser user agent. developer.zettle.com/sitemap-0.xml lists 179 URLs, of which roughly 170 are docs: OAuth, Finance, Purchase, Product Library, Inventory (v1 and v2), Pusher webhooks, Gift Card, Image and Card Payments API sections each with an overview, concept pages, task guides and a reference, plus iOS SDK, Android SDK and Reader Connect integration docs, a changelog, a glossary, an FAQ and a downloadable Postman collection at /docs/api/get-postman-collection. A developer account is needed to create app credentials (/docs/get-started/user-guides/sign-up-for-a-developer-account), but not to read any of the above. https://developer.zettle.com/docs/api/product-library/reference · retrieved 2026-08-08 adversarially verified
extensibility-api-access-cost differentiator
Not scored by this record.
extensibility-free-sandbox differentiator
Not scored by this record.
extensibility-oauth-partner-apps
'The OAuth API handles merchants authentication and authorisation of external integrators... The OAuth API implements the OAuth 2.0 protocol.' Three documented flows: authorisation code grant with PKCE (the default, 'This flow should be used by all apps by default'), authorisation code grant for partner-hosted apps, and JWT assertion grant for self-hosted apps. The grant is merchant-issued — 'Redirect the merchant to the Zettle authorisation flow. The merchant will authorise the access request from the app' — and scoped: the OAuth API reference (https://developer.zettle.com/docs/api/oauth/api-reference, retrieved 2026-08-04) shows per-endpoint scopes in READ:/WRITE: form, e.g. READ:PRODUCT and WRITE:PAYMENT. Revocation is individual and operator-side both ways: a documented 'Disconnect app from user' endpoint — 'Remove a Zettle merchant from your app by disconnecting them from the app... clean up registered webhooks and remove access' — plus 'The API key may be revoked by your app users at my.zettle.com.' No shared static key or credential-sharing pattern is offered. https://developer.zettle.com/docs/api/oauth/overview · retrieved 2026-08-04
extensibility-webhooks-push
Genuine server push, not polling: 'The Pusher API provides events for you to listen to certain activities of the Zettle Go app at a working HTTPS endpoint on your server... the Pusher API sends the event in a POST request to the HTTPS endpoint', payload 'in real time', with a 10-second response timeout and a documented retry policy. Subscriptions are CRUD-managed. SHORTFALL: only one of the five order-lifecycle events in this claim is emitted. The event-payloads reference (https://developer.zettle.com/docs/api/pusher/concepts/event-payloads, retrieved 2026-08-04) enumerates the complete available set as nine events — PurchaseCreated, InventoryBalanceChanged, InventoryTrackingStarted, InventoryTrackingStopped, ProductCreated, ProductUpdated, ProductDeleted, OrganizationUpdated, ApplicationConnectionRemoved. There is no modified, paid, voided or refunded event, so refunds and cart changes still require polling the Purchase API. https://developer.zettle.com/docs/api/pusher/overview · retrieved 2026-08-04
extensibility-webhook-reliability differentiator
Not scored by this record.
extensibility-order-injection-api
Not scored by this record.
extensibility-doordash-preferred differentiator
Not scored by this record.
extensibility-first-party-delivery-integrations differentiator
Not scored by this record.
extensibility-middleware-compatibility
Not scored by this record.
extensibility-accounting-connectors
Not scored by this record.
extensibility-payroll-export
Not scored by this record.
extensibility-app-marketplace
Not scored by this record.
extensibility-headless-embedded
Not scored by this record.
extensibility-data-portability-exit differentiator
Not scored by this record.
Reliability, offline & operations
reliability-offline-order-entry
Checked 2026-08-04 and still unresolvable from readable vendor pages. The help centre's compatible-smartphones-and-tablets article (1084705) states the app needs a device with 'Bluetooth and an internet connection' but no help article describes which functions survive a dropped connection, and there is no offline-mode article in the help centre. The developer portal documents an 'Offline Card Payments' beta for the PayPal Reader via SDK integrations, but those pages (developer.zettle.com/docs/payment-integrations/ios-sdk/concepts/offline-card-payments and the Android equivalent) render client-side and returned empty to the fetcher — and they concern card capture, not on-terminal order entry, ticket routing or check printing. PayPal community threads that search results indicate state 'Zettle does not have an offline mode' were unreachable: connect ECONNREFUSED to www.paypal-community.com:443 on 2026-08-04, and a search-index snippet is not a page read. Absent a readable vendor statement either way, order entry behaviour offline stays unknown.
reliability-offline-card-auth differentiator
Not scored by this record.
reliability-offline-decline-liability differentiator
Not scored by this record.
reliability-offline-kds-printing
No KDS; kitchen printing is not a documented first-party function.
reliability-printer-fallback
Migrated from the 2026-08-01 research pass; no source URL was recorded.
reliability-offline-feature-matrix
Not scored by this record.
reliability-public-status-page
Not scored by this record.
reliability-247-live-support
Not scored by this record.
reliability-menu-build-service differentiator
Not scored by this record.
reliability-hardware-replacement-sla
Not scored by this record.
reliability-pci-dss-4-attestation
Not scored by this record.
reliability-mfa-role-based-access
Not scored by this record.
reliability-self-serve-training
Not scored by this record.
reliability-cellular-backup
Not scored by this record.
Commercial, compliance & data ownership
commercial-month-to-month-contract differentiator
Not scored by this record.
commercial-no-early-termination-fee differentiator
Not scored by this record.
commercial-autorenew-terms-published
There is no software subscription, so no auto-renewal term exists; nothing is published on notice windows.
commercial-processing-not-bundled differentiator
Not scored by this record.
commercial-interchange-plus-published differentiator
Not scored by this record.
commercial-rate-increase-clause differentiator
Not scored by this record.
commercial-pricing-published
Exact US rates and hardware prices published: 2.29% + $0.09 card-present, no monthly or setup fee, reader $29/$79, terminal $199/$239. https://www.paypal.com/us/business/pos-system/pricing · retrieved 2026-08-01
commercial-module-unbundling differentiator
Not scored by this record.
commercial-hardware-purchase-outright
Reader and Terminal sold outright at published prices; no lease or rental requirement stated. https://www.paypal.com/us/business/pos-system/pricing · retrieved 2026-08-01
commercial-hardware-not-locked differentiator
Not scored by this record.
commercial-data-export-self-serve
Not scored by this record.
commercial-export-customer-and-loyalty differentiator
Not scored by this record.
commercial-post-termination-export-window differentiator
Not scored by this record.
commercial-data-ownership-clause differentiator
Not scored by this record.
commercial-pci-p2pe-tokenization
Not scored by this record.
commercial-pci-dss-4-controls
Not scored by this record.
commercial-privacy-dsar-tooling
Not scored by this record.
commercial-wcag-kiosk-accessibility differentiator
Not scored by this record.
commercial-dual-pricing-compliant differentiator
Not scored by this record.
Adversarial verification
An independent pass was instructed to refute this record, defaulting to downgrade when uncertain. It challenged 20 values — 5 upheld, 0 downgraded, 2 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.
Capability claims
| Claim | As first scored | Verdict | What the verifier found |
|---|---|---|---|
| menu-pricing-modifier-price-by-parent-size | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | Read the Product library help article end to end. It is the full product-model reference and the model is products, up to three variant options per product (max 100 variants), categories, folders, discounts and Pages. There is no modifier entity, so there is nothing to price by parent item, and variant prices are editable only at variant level within one product — never shared across parents. Confirmed against the Purchase API reference at grade A: the line-item schema has variant fields and zero occurrences of 'modifier' or 'addon'. The only Zettle article that ever documented modifiers (2388639-using-product-modifiers-with-zettle-food-and-drink) now redirects to paypal.com/uk/business/pos-system/restaurants; it covered the retired Zettle Food & Drink product, not today's app. Enumerated model with the capability absent is positive evidence of absence, so no rather than unknown. source |
| menu-pricing-topping-quantity-tiers | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | Same enumerated product model, same absence. Quantity tiering presupposes a modifier to tier and a multiplier field to tier it with; Zettle has neither. Variant option values are discrete named selections ('The size option has three values: Small, Medium, Large') carrying flat prices, not light/regular/extra tiers with a configurable multiplier. The Purchase API line-item schema likewise carries no multiplier or modifier field. Extra-cheese pricing is reachable only by creating additional variant values or separate products, which is exactly the duplication the claim tests for. source |
| labor-granular-rbac | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | The My staff article enumerates the staff role exhaustively, section by section, and the list is fixed rather than configurable. Staff can check out, use activated payment methods, view products and stock, view all receipts, refund only their own sales, and see only their own sales overview. Staff cannot add/edit/remove products, edit stock, refund anyone else's sale, open Sales or Product reports, invite staff, or sign in to my.zettle.com. The only per-staff controls the article documents are rename and Inactivate. PayPal's US article gives the same fixed can/can't pair and exposes exactly one permission toggle at creation, the all-or-nothing 'Use Zettle by PayPal tools'. No per-action grants for void, comp, discount, drawer open or price change, and no per-location scoping. The claim requires the opposite of a fixed tier model, and the docs establish a fixed tier model. source |
| labor-manager-override-audit | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | There is no override mechanism in the product, so there is no override audit trail. Every restriction the My staff article lists is a hard block with no approval or escalation path — a staff member simply cannot refund another's sale or open Sales reports, and no manager PIN, approval prompt or authorisation step appears anywhere in the article. What Zettle does provide is sale attribution, not approval attribution: the staff member's name prints on receipts of their own sales, and the my.zettle.com transaction download shows which staff member made a given transaction. That is a sales ledger, not a queryable immutable record attributing an individual approver to an override event. Site-scoped searching of zettle.com, PayPal help and the PayPal community for manager approval, override or PIN authorisation on Point of Sale surfaced no such feature. source |
| extensibility-oauth-partner-apps | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-yes | Grade A primary API documentation, retrieved directly. 'The OAuth API implements the OAuth 2.0 protocol.' Three documented flows — authorisation code grant with PKCE (the stated default for all apps), authorisation code grant for partner-hosted apps, JWT assertion grant for self-hosted apps. The grant is merchant-issued: 'Redirect the merchant to the Zettle authorisation flow. The merchant will authorise the access request from the app.' Scopes are per-endpoint and typed READ:/WRITE: (e.g. READ:PRODUCT, WRITE:PAYMENT) in the OAuth API reference. Revocation is individual from both directions — a 'Disconnect app from user' endpoint that removes access and cleans up registered webhooks, and merchant-side revocation: 'The API key may be revoked by your app users at my.zettle.com.' No shared static key or credential-sharing pattern is offered as an alternative. Every element of the claim is documented, so yes on grade A rather than partial. source |
| extensibility-webhooks-push | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-partial | Real push exists and is documented at grade A: the Pusher API POSTs subscribed events to a merchant HTTPS endpoint 'in real time', with a 10-second response timeout and a published retry policy, and subscriptions are created/viewed/updated/deleted through the API. It is not a polling substitute. But the event-payloads reference enumerates the complete catalogue as nine events — PurchaseCreated, InventoryBalanceChanged, InventoryTrackingStarted, InventoryTrackingStopped, ProductCreated, ProductUpdated, ProductDeleted, OrganizationUpdated, ApplicationConnectionRemoved — and only one of them is an order event. Named shortfall: no modified, paid, voided or refunded event, so refunds and cart changes still require polling the Purchase API. That is four of the five lifecycle events in the claim missing, which is a material limit, not a yes. source |
| digital-menu-single-source | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | Zettle has no first-party digital ordering channel, so no menu can single-source into one. The help centre's 'Getting started with integrations' article enumerates the online-selling routes and every one is a third-party e-commerce platform — Adobe Commerce, BigCommerce, ePages Now, PrestaShop, Shopify, Shopware, WooCommerce — synced to the Zettle product library by integration; no Zettle-owned web or app ordering, online menu or first-party checkout appears there or anywhere else in the help centre, and the Product library reference has no digital-menu or online-channel concept. Any digital menu is by construction a separate build in an external platform kept aligned by sync, which the claim's 'first-party digital channels without a separate digital menu build' excludes. Enumerated routes with the capability absent is positive evidence of absence, so no rather than unknown. source |
| guest-loyalty-unified-profile | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | The Customer lists article documents the only mechanism that links a transaction to a profile, and it is manual, per sale, at the register: staff 'Click Add Customer and search for the customer shopping with you. This sale will now be logged under customer insights', or attach after payment via 'Add or search for customer'. Insights accrue only to sales attached this way; customers must be added to the list before any analytics exist. No dedup or merge behaviour is documented, and the multi-channel half of the claim has nothing to attach to — Zettle offers no first-party web/app ordering and no kiosk, with online selling handled entirely by third-party e-commerce integrations. A documented mechanism that is the opposite of automatic merge is positive evidence, so no rather than unknown. source |
| guest-loyalty-accrual-models | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | Zettle does ship a native loyalty program, which the blank cell would never have revealed — but its accrual surface is enumerated in full by the loyalty help article and contains exactly one model. Merchants configure signup vouchers (5/10/15/20% discount, 30/90/365-day validity) and loyalty vouchers earned by spending a pre-defined milestone amount (percentage or fixed discount, same validity choices). There is no points-per-dollar balance and no visit/punch-count option anywhere in the documented settings. The claim requires at least two of points, visit-count and spend-tier as configuration without a bolt-on vendor; one documented model against an enumerated settings surface is positive evidence of absence of a second. source |
| guest-loyalty-lifecycle-automation | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-partial | Genuine always-on triggered automations exist and are documented: the welcome email with an automatically generated discount code fires each time a customer is added to the Customer List, and voucher emails send 'every time they earn one (signup action, or milestone reached)'. These are configurable, persistent campaigns, not one-off manual sends, and the signup welcome covers the claim's first-visit thank-you. The shortfall is named and grounded in the same enumeration: the loyalty settings expose only signup and spend-milestone triggers — no birthday automation, no lapsed win-back, and no native campaign builder anywhere in the help centre to add them. Two of the three named automations missing is a material limit: partial, not yes and not no. source |
| inventory-count-modes | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-no | The Inventory help article documents the feature end to end — per-product tracking toggle, per-variant starting quantities, stock updates by tapping a product and entering the new quantity, default low-stock alert at 3 units, and negative counts when overselling — and no count construct appears anywhere in it. There is no full physical count session, no spot count of a subset, no scheduled recurring cycle count, and no variance history: the sole documented adjustment is a direct quantity overwrite, which replaces the prior number rather than recording counted-vs-expected variance. An enumerated feature surface whose only stock-adjustment mechanism is the overwrite the claim distinguishes itself from is positive evidence of absence. source |
| reporting-eod-closeout | unknown / F, placeholder rationale 'No public documentation located during the 2026-08-01 research pass' — never examined | resolve-to-partial | The 'About reports' article enumerates the reporting surface: daily/weekly/monthly reports in app and at my.zettle.com with sales amount, sales, returns, fees, average sale, payment-method breakdown, collected VAT per rate with sales in/ex VAT, and sales by product, category and staff, printable on a receipt printer and exportable to PDF/Excel. That is a real per-day report covering gross/net, tax, refunds and tenders, so not unknown and not no. But the claim asks for a close-out reconciling to an expected cash deposit in one document, and no expected-cash, float, paid-in/paid-out or counted-vs-expected section appears anywhere in the enumerated reports, nor do tips or discount totals. A daily sales report without drawer reconciliation is materially short of an EOD close-out packet: partial, with the missing cash-deposit reconciliation as the named shortfall. source |
| commercial-pricing-published | yes, grade B - Exact US rates and hardware prices published: 2.29% + $0.09 | upheld | Grade only, value untouched. Corpus-wide mechanical pass (workflows/regrade-marketing-pages.mjs): the cited page is a first-party pricing/feature/product page, which atlas-evidence-rules grades C ("vendor pricing page or feature page - first-party, but written to sell"), not B ("vendor product documentation - the manual, the help centre, the admin guide"). No claim was re-researched in this pass and no evidence was re-read; only the grade was brought into line with the source type. source |
| commercial-hardware-purchase-outright | yes, grade B - Reader and Terminal sold outright at published prices; no le | upheld | Grade only, value untouched. Corpus-wide mechanical pass (workflows/regrade-marketing-pages.mjs): the cited page is a first-party pricing/feature/product page, which atlas-evidence-rules grades C ("vendor pricing page or feature page - first-party, but written to sell"), not B ("vendor product documentation - the manual, the help centre, the admin guide"). No claim was re-researched in this pass and no evidence was re-read; only the grade was brought into line with the source type. source |
| guest-loyalty-unified-profile | no / B, 'The documented linking mechanism is manual, per sale, in-store only - the opposit' | upheld | The cited URL 301s to .../2442005-paypal-point-of-sale-customer-lists. I fetched the destination and checked each quotation character by character rather than carrying it over: 'in your Customers menu in the app', 'After taking payment, click Add or search for customer', 'Click Add Customer and search for the customer shopping with you', 'This sale will now be logged under customer insights' and 'To view analytics, customers must be added to your customer list' are all present verbatim. The rename added a QR-code sign-up route, but it too starts from 'After taking payment, click Add or search for customer', so it is another manual per-sale attach, not an automatic merge. The article's only identity operations are create and delete; there is still no dedup or merge language. Value stands at no; citation re-pointed and the note re-evidenced against the live page. source |
| payments-emv-nfc | yes / D, 'Card Reader and Terminal are sold as chip and contactless devices; the explicit A' | upheld | The cited paypal.com/us/business/pos 301s to /pos-system, and a marketing page was never the right evidence for this anyway - the researcher's own note conceded the wallet list 'was not extractable'. I went to the help centre instead. Accepted payment methods states 'The PayPal Reader, Zettle Reader 2 and Terminal allow you to accept contactless and card payments as well as transactions with mobile wallets such as Apple, Samsung, and Google Pay' and lists Apple Pay, Google Pay and Samsung Pay under Mobile wallets; Taking card & contactless payments gives the chip and contactless flows separately at the register. That is every element of the claim on first-party documentation across all three current readers, so the value is upheld and the grade moves D to B on evidence I retrieved. source |
| reporting-realtime-dashboard | partial / D, "Marketed as 'take payments and track every sale, all in one place' with app and we" | upheld | The cited https://www.zettle.com/us/pos 301s to https://www.zettle.com/gb - a homepage, which supports nothing, so the marketing quote in the note is now unsourceable and I withdrew it. Replacement found in the help centre: About reports documents the in-app reports section (last day's sales amount, number of sales and returns; KPI set; top selling products) and the my.zettle.com web reports (overview of daily/weekly/monthly sales, sales by hour, sales and payments breakdowns), which is the browser-plus-mobile half of the claim on grade B evidence. What is still missing is exactly what was missing before: no statement of refresh latency, and the tightest documented time bucket is an hour. Partial is upheld with the shortfall named and the grade corrected from D to B. source |
| hardware-os-platforms | partial / B, 'iOS and Android apps confirmed via App Store and Google Play links; minimum OS ve' | upgrade-to-yes | The cited https://www.zettle.com/us/pos 301s to the https://www.zettle.com/gb homepage, so the original evidence is dead and the note's stated gap - 'minimum OS versions and device specs not stated on the page' - was an artefact of scoring off a product page. The help centre states them plainly: 'smartphones and tablets that run iOS or Android and have Bluetooth and an internet connection', and each of PayPal Reader, Zettle Reader 2 and Zettle Reader 'Requires you to run Apple iOS 14 and higher or Android 8.1 and higher.' The Terminal is separately documented as running the app itself and not connectable to other devices. Named platforms, stated minimum versions and stated device requirements is the whole claim, on first-party documentation, so this goes up rather than merely being re-cited. source |
| order-capture-offline-order-entry | unknown / F, rationale 'An offline card mode exists in some Zettle markets; nothing verified for the US produ' | resolve-to-no | The prior rationale was right that an offline card mode exists somewhere in the Zettle estate and wrong about where. The dedicated help article carries the exclusion in its opening 'Good to know' block: 'Offline payments are currently only available through select Point of Sale (POS) Apps that have integrated PayPal's POS SDK and enabled the Offline Payments feature. This functionality is not available for standard PayPal POS App. Check with your POS provider to confirm whether they support Offline Payments.' The developer portal corroborates the direction of the dependency - offline card payments are an iOS/Android SDK concept and user guide for integrators building their own app. Against that, the vendor's own product overview states the app needs a live network to work at all. To be sure this was a stated limitation and not absence of mention, I fetched every one of the 91 articles linked from the GB help index and searched them; nothing documents offline order entry, offline cash tender or an offline kitchen send. The published offline document exists and positively excludes this product, which is what 'no' requires. Market caveat: zettle.com/us/help 301s to the global help centre, so the GB articles are the vendor's help centre for this app rather than a foreign-market variant, but the transaction limits quoted there are GBP. source |
| extensibility-public-api-docs | partial / D, note 'A public developer portal exists at developer.zettle.com; its content could not be r' | upgrade-to-yes | The partial rested entirely on a retrieval failure, not on a finding about openness, and the failure does not reproduce. I fetched developer.zettle.com/sitemap-0.xml (179 URLs), then the OAuth overview, the OAuth API reference and the Product Library reference anonymously - all 200 with real content, no login wall, no interstitial, no SPA shell. The Product Library reference is not prose about an API but the OpenAPI 3.0.1 document itself, served in the page payload. Nine API surfaces are documented to reference level and a Postman collection is offered for download. Self-serve, readable without an agreement, and primary technical documentation rather than a marketing portal page, so yes at grade A - the D grade was an artefact of citing the portal's landing page when the researcher could not open anything below it. source |
Sources
Every URL this record cites. 27 in total.
- https://www.paypal.com/us/business/pos
- https://www.zettle.com/us/pos
- https://developer.zettle.com/
- https://www.paypal.com/us/business/pos-system/pricing
- https://www.zettle.com/gb/help/articles/1165263-product-library
- https://www.zettle.com/gb/help/articles/1084768-my-staff
- https://www.paypal.com/us/cshelp/article/how-do-i-add-staff-to-my-paypal-zettle-account-help664
- https://developer.zettle.com/docs/api/oauth/overview
- https://developer.zettle.com/docs/api/oauth/api-reference
- https://developer.zettle.com/docs/api/oauth/user-guides/set-up-app-authorisation/set-up-authorisation-code-grant
- https://developer.zettle.com/docs/api/pusher/overview
- https://developer.zettle.com/docs/api/pusher/concepts/event-payloads
- https://developer.zettle.com/docs/api/purchase/api-reference-md
- https://www.zettle.com/gb/help/articles/2645279-getting-started-with-integrations
- https://www.zettle.com/gb/help/articles/2442005-zettle-customer-lists
- https://www.zettle.com/gb/help/articles/6502151-loyalty-program-for-your-customers
- https://www.zettle.com/gb/help/articles/2771896-inventory
- https://www.zettle.com/gb/help/articles/1084803-about-reports
- https://www.zettle.com/gb/help/articles/1084705-compatible-smartphones-and-tablets
- https://www.zettle.com/gb/help/articles/2442005-paypal-point-of-sale-customer-lists
- https://www.zettle.com/gb/help/articles/1084715-accepted-payment-methods
- https://www.zettle.com/gb/help/articles/1084729-taking-card-and-contactless-payments
- https://www.zettle.com/gb/help/articles/7102116-offline-payments
- https://www.zettle.com/gb/help/articles/1083274-what-is-paypal-point-of-sale
- https://www.zettle.com/gb/help/articles/1084756-taking-cash-payments
- https://developer.zettle.com/docs/api/product-library/reference
- https://developer.zettle.com/sitemap-0.xml