Bill Pay covers the core AP mechanics: a bill comes in, gets coded to an account, routes for approval based on amount or category, and pays out once approved, with the result syncing to whatever accounting platform the business already has connected.
What it doesn't do natively is check a vendor bill against a purchase order, a project budget, or a vendor's history of late deliveries or disputed invoices, because none of that information lives inside Expensify. That check, when it happens, is usually a person cross-referencing a separate spreadsheet or procurement tool before approving payment.
The other common gap is vendor onboarding. Adding a new vendor to Bill Pay is a manual step, and keeping vendor records in sync with a separate procurement or vendor-management system isn't something the feature handles on its own.