Foyer is front-of-business software. Everything past the front of your business — payroll, marketing automation, inventory, clinical records, route optimization — belongs to dedicated tools we will never grow into. Below is what we refuse, why, and what to use instead.
The two rules behind every refusal
01
Production Ownership
Foyer owns correctness, failure, and recovery for everything inside it. If we can't own the failure of a feature in production — if breaking it would mean the operator has to debug it themselves — the feature is forbidden, regardless of how useful it would be.
02
No Ghost Notes
No hidden logic. No implied behavior. No edge case that nobody owns. Features that spawn unbounded edge cases — marketing automation, dynamic pricing rules, multi-stage approval engines — are forbidden because they cannot be made surface-clear at our scale.
Category A · Holds 01–05
Anything that ends in a W-2, a 1099, or a paystub is downstream of the booking and belongs to a tool that owns the tax surface. Foyer hands the data off; we do not calculate what you owe a staff member.
Per-provider commission tracking
Foyer doesn't calculate per-staff commission splits or track who earned what across a multi-provider booking calendar. Revenue attribution by provider is visible; commission math is payroll territory.
Use Gusto / Square Payroll / ADP Run.
Auto-payroll for staff
Foyer does not run payroll, file withholdings, or issue paystubs. Payroll is a regulated tax surface we will never own.
Use Gusto / Square Payroll / OnPay.
Tip pooling between staff
Tips collected on a booking go to the booking's provider. Foyer doesn't run pooling algorithms or split tips across a team. Splitting tips is a labor-policy decision; we do not encode labor policy.
Use Tipalti / Kickfin / a spreadsheet.
Provider invoice generation for 1099s
Foyer doesn't generate end-of-year 1099-NEC forms for contractors you pay. Payment records are exportable as CSV; the 1099 itself comes from a payroll tool.
Use Gusto / Track1099 / your accountant.
Inter-location payroll
Foyer doesn't roll up multi-location payroll into a single P&L or handle inter-entity transfers between locations.
Use QuickBooks Multi-Entity / NetSuite.
Category B · Holds 06–10
When you want to talk to your customers, write the message. Foyer keeps your client list inside the booking flow so you can pull it; we do not send anything on your behalf that you did not write today.
Lifecycle, drip, and win-back email
Foyer does not send marketing emails. No drip campaigns. No win-back sequences. No "we miss you" reactivation. When you want to email your clients, write the email — Foyer keeps your client list in the booking flow so you can pull it from there.
Use Mailchimp / ConvertKit / Buttondown.
Engagement scoring and churn prediction
Foyer doesn't score how engaged your clients are or predict who is about to leave. Engagement scoring substitutes a model for your own judgment about your own business; we will not do that to you.
Use your own gut, and a 15-minute review of your booking calendar.
Attendance streaks and gamification
Foyer does not display "you're on a 7-week streak!" to clients, award badges, or run any behavioral psychology engine designed to modify customer behavior. Your customers are adults.
Use nothing. This is a feature we recommend against.
Customer lifetime value displays
Foyer does not show you "Sarah is a $2,400 customer" or sort your client list by LTV. LTV displays push operators toward tiered treatment of clients. We refuse the framing.
Use a spreadsheet if you must.
A/B testing and experimentation framework
Foyer doesn't ship A/B tests on your booking page, your pricing, or your intake form. You do not have enough traffic for A/B tests to be statistically valid; we will not pretend otherwise.
Use a decision, made once.
Category C · Holds 11–14
Conditional logic, auto-dispatch, branching forms, auto-approval — these features look small in the demo and grow into mazes the operator can't debug. We refuse to ship the maze.
Auto-assignment and dispatch rules
Foyer doesn't route incoming bookings to staff based on rules ("the next available 60-min therapist who isn't Sarah and speaks Spanish"). Multi-provider bookings get assigned to the provider the client picked.
Use Jobber / ServiceTitan / your own scheduling.
Conditional form logic and branching
Foyer's intake forms are flat — same questions for every booking type. No "if they pick Service A, show questions 4–7; if Service B, show questions 8–11." Branching forms become unmaintainable in 6 months.
Use Typeform / Jotform if you need branching.
Conditional pricing rules
Foyer does not ship "if the client is in this segment and the booking is on a Tuesday, apply 15% off." Pricing is a list. Discounts are coupons. No dynamic pricing engine.
Use a clear price list and a coupon code when you mean it.
Auto-decisioning and auto-approval
For application-gated bookings, Foyer will not auto-approve or auto-reject based on rules. A human reviews every application. The cost is real; the alternative trains operators to stop reading.
Use Foyer's review queue, with your own eyes.
Category D · Holds 15–18
Foyer's application rail accepts applications for things like cohort programs or coaching engagements — it is not an applicant tracking system, and we will not let it become one.
Application scoring and ranking
Foyer doesn't score, rank, or sort applications by any algorithm. Applications arrive in the order they were submitted. You read them.
Use Greenhouse / Workable if you're hiring at scale.
Multi-stage approval workflows
No "screening → interview → reference check → offer" pipelines. Foyer's application rail has one stage: approve or decline. If your process has stages, it has outgrown us.
Use Lever / Ashby / Workable.
Bulk approval
No "approve all" button. Bulk approval trivializes the vetting step we built the application rail to make sure happens. Each approval is one click on one application.
Use the queue, one at a time.
Hours and utilization tracking
Foyer doesn't track billable hours, utilization rate, or capacity per provider. Hours are visible inside the booking calendar; we do not roll them up into a chargeable timesheet.
Use Harvest / Clio / Toggl.
Category E · Holds 19–23
Foyer is built for service businesses. We sell physical goods as a supporting rail — gift cards, packaged products, a small catalog — not as the core. Anything past a small shelf belongs to a real e-commerce platform.
Multi-warehouse inventory
Foyer doesn't track stock across multiple warehouses, route fulfillment to the nearest one, or rebalance inventory between locations. If you have warehouses, you have a Shopify problem.
Use Shopify / Shopify Plus.
Stock counts
Foyer products have a boolean toggle — in stock or out — not a decremented count. Stock counts force inventory math we cannot own.
Use Shopify / Square Retail.
Live carrier shipping rate calculation
Foyer doesn't call UPS / USPS / FedEx APIs to compute live shipping rates at checkout. Shipping is a flat zone-based fee you set, or it is free.
Use ShipStation / Shippo.
Shipping label generation
Foyer doesn't print shipping labels or buy postage. You handle shipping the way you handle it today.
Use Shippo / Pirate Ship / a USPS account.
Tracking sync and package status
Foyer doesn't poll carrier APIs to update "your package is in Memphis" on the customer's order page. Tracking numbers are forwarded; the tracking page is the carrier's.
Use the carrier's tracking page.
Category F · Holds 24–26
Sales tax is displayed if you tell us your rates. Filing those taxes is not a thing Foyer will ever do. Tax is a regulated surface; tax software is a regulated industry.
Tax filing automation
Foyer doesn't file your sales tax returns, your quarterly estimated taxes, or anything else with the IRS or your state. Tax data exports as CSV; filing is a separate, regulated workflow.
Use Avalara / TaxJar / your accountant.
Multi-state nexus auto-registration
Foyer doesn't detect when your sales cross a state's economic-nexus threshold and auto-register you in that state. Nexus is a legal call; we will not make it for you.
Use Avalara / TaxJar / TaxValet.
3+ payment milestones
Foyer supports deposit + balance (two payments) per booking. Three or more payment milestones — common in construction billing — is a different product entirely.
Use Procore / a construction-billing platform.
Category G · Holds 27–30
Foyer delivers digital files for sold or gated products — a PDF guide, a downloadable course pack, an audio file. We do not enforce who watches what after that.
DRM enforcement
Foyer doesn't apply digital rights management to anything you sell. Files are downloadable; they are not encrypted, watermarked, or revoked.
Use Adobe Content Server / Widevine if you really need DRM.
IP-based piracy detection
Foyer doesn't watch download patterns, flag suspicious IPs, or hunt for pirated copies of your content.
Use an anti-piracy service if your content economics require it.
License-server activation
No phone-home license validation. No "activate this on up to 3 devices" mechanics. Once delivered, it's delivered.
Use Keygen / Cryptlex if you sell software.
Native video streaming infrastructure
Foyer doesn't host or stream video. Linked videos are linked to wherever they live — Vimeo, Cloudflare Stream, YouTube Unlisted.
Use Vimeo / Cloudflare Stream / Mux.
Category H · Holds 31–32
Foyer's quote rail handles a single-line quote, an approval, and a payment. Multi-line bills of materials and mid-engagement change orders are a different product entirely.
Multi-line itemized quotes (bills of materials)
Foyer quotes are one line, one price, one approval. Itemized BOM with sub-totals, line edits, and per-item taxes is construction-billing territory.
Use Procore / Jobber.
Change orders mid-engagement
Once a quote is approved and the engagement starts, Foyer does not run a formal change-order workflow on top. If scope changes, cancel and re-quote.
Use Procore / Buildertrend.
Category I · Hold 33
For operators who offer pay-what-you-can or sliding-scale pricing, Foyer commits to three sub-refusals that protect the trust between the operator and the customer who picked the lower tier.
Tier benefits differentiation
Customers who pay the lower sliding-scale tier get the same service, the same session length, the same intake, the same provider as customers who pay the higher tier. Foyer will not make tier-by-tier service differentiation possible at the product level.
Sub-hold: No income verification at sliding-scale checkout. The honor system is the system.
Sub-hold: No tier-history flagging or "downgrade detection." A customer who paid full price last visit and the lower tier this visit looks identical to a customer who has always paid the lower tier.
Use a different platform if your sliding scale is a marketing layer, not an equity commitment.
Category J · Holds 34–43
Foyer Tap is phone-only chair-side Tap-to-Pay. It is not a countertop POS, and we will not let it grow into one. Anything past "tap a card on a phone to charge for the session that just happened" is a different product.
Hardware integration
No Bluetooth printers. No Square readers. No countertop terminals. No barcode scanners. Foyer Tap is the phone in your pocket; if you need hardware, you need a different POS.
Use Square / Toast / Clover.
Multi-staff commission split at POS
When two providers worked on one session, Foyer Tap doesn't split the charge between them. The charge attributes to the booking's primary provider; the split is a back-office decision.
Use the same payroll tool as Hold #01.
Inventory tracking and barcode scanning at POS
No "scan to add to cart." No real-time inventory deductions. Foyer Tap is service POS, not retail POS.
Use Square Retail / Lightspeed.
Customer-facing display (second synced device)
No second iPad facing the customer showing the line items. Foyer Tap is single-device discipline — the operator's phone is the whole interaction.
Use Square / Toast if you want a customer display.
Cash drawer integration
Foyer Tap doesn't open a cash drawer or reconcile a till at end-of-day. Cash is logged manually; we do not own the till.
Use a hardware POS if cash volume justifies it.
Receipt printing (thermal or Bluetooth)
No thermal printers. No Bluetooth printers. Receipts go by email or SMS, the way the rest of Foyer works.
Use the customer's email inbox.
Loyalty point auto-calculation
Foyer doesn't accrue points, calculate "you've earned a free session," or redeem points at checkout. Loyalty programs are unbounded edge cases; we refuse the surface entirely.
Use Square Loyalty / a punch card.
Surcharging compliance management
If you want to surcharge credit cards, you add a line item and you handle the state-by-state legality. Foyer doesn't track which states allow it or compute compliant surcharge amounts.
Use CardX / a payment surcharge service.
Tip splitting algorithms
A tip collected on a Foyer Tap charge goes to the session's provider. No automated splits, no percent-by-role rules, no end-of-shift redistribution.
Use Kickfin / Tipalti / a spreadsheet.
In-app messaging between operator and customer
Foyer doesn't ship a chat interface for operator-to-customer conversation. When you want to text Sarah, text Sarah from your phone. We will not become Instagram DMs.
Use the SMS app already on your phone.
For therapists, counselors, and other clinical operators who could plausibly use Foyer for the booking-and-payment surface, we added this hold to make our position explicit: Foyer is for cash-pay practices at the HIPAA-neutral surface only.
We do not file insurance claims (837 / 835 EDI). We do not run real-time eligibility checks (270 / 271). We do not post ERAs or EOBs, manage CAQH credentialing, scrub claims, or handle denials. We do not store clinical records, SOAP notes, or treatment plans of any kind.
If you are a cash-pay therapist on Acuity + Stripe today, Foyer fits. If you bill insurance or take any clinical notes inside a tool, you need a real EHR.
Use SimplePractice / TherapyNotes / Jane App.
Once a quarter, the founder reviews requests from the Founding 100 Discord for features that should be added to this list. The list grows when operators surface bloat we hadn't named yet. It does not shrink.
If you've used a tool that broke because it added something on this list, tell us what should be #45. We publish the reason next to your initials.