Automated Multi-Step Dext Expense Approval & QuickBooks Sync (Zapier)

Streamline accounts payable with automated approvals and audit-ready data syncing via Zapier.

Tools: DextQuickBooks

Platform: Zapier

Short Answer

Users achieve a hands-off document pipeline where small expenses are auto-categorized and synced to QuickBooks, while high-value items are routed for approval, ensuring 100% accurate books with zero manual data entry.

The Problem

Manual entry of receipts and bills leads to human error and delayed financial reporting. While native integrations exist, they lack the granular control needed to filter high-value transactions for approval or verify vendor existence before posting to the General Ledger.

The Outcome

Users achieve a hands-off document pipeline where small expenses are auto-categorized and synced to QuickBooks, while high-value items are routed for approval, ensuring 100% accurate books with zero manual data entry.

Step-by-Step Guide

1. **Authenticate Dext**: Inside Zapier, create a new Zap and select 'Dext' as the Trigger App. Choose 'New Published Item' as the Event. Connect your Dext account and select the specific 'Profile' you wish to monitor. 2. **Test the Trigger**: Click 'Test Trigger' to pull a recent published document. Ensure the sample data includes fields like `Supplier Name`, `Total Amount`, and `Image Link`. 3. **Add Logic (Paths by Zapier)**: Add a 'Paths' step to create conditional logic. Name Path A 'Small Expenses' and Path B 'High-Value Approval'. 4. **Configure Path A (Auto-Sync)**: Set the filter rule: If `Total Amount` is less than 1000. 5. **Find or Create Vendor in QBO**: Within Path A, add a QuickBooks Online (QBO) step: 'Find Vendor'. Use the Dext `Supplier Name` for the search. Check the box 'Create QuickBooks Online Vendor if it doesn't exist yet' and map the Dext `Supplier Name` to the Name field. 6. **Create Expense/Bill in QBO**: Add a second QBO step: 'Create Purchase' (for receipts) or 'Create Bill' (for unpaid invoices). Map the `Vendor ID` from Step 5, the `Date` from Dext, and the `Net/Tax/Total` amounts. Use 'Formatter by Zapier' if the date format needs adjustment. 7. **Configure Path B (Approval)**: Set the filter: If `Total Amount` is greater than or equal to 1000. Add an action like 'Slack: Send Channel Message' with buttons to approve/deny. 8. **Wait for Approval**: Use 'Delay by Zapier' or 'Approval by Zapier' to pause the workflow until a manager gives the green light before proceeding to the QuickBooks steps. 9. **Upload Attachment**: After the QBO transaction is created in either path, add the 'QuickBooks Online: Upload Attachable' action. Map the 'Attachable ID' to the Transaction ID from the previous step and the 'File' field to the Dext `Image URL` or `PDF URL`. 10. **Error Handling**: Click 'Output' on the Zapier step to configure 'Error Handling'. Set up a notification if a Vendor cannot be created or if a Tax Code mismatch occurs.

Data Mapping

| Dext Field | QuickBooks Field | Required? | Zapier Function/Note | | :--- | :--- | :--- | :--- | | Supplier Name | `VendorRef` | Yes | Use 'Find Vendor' step first to get Internal ID | | Total Amount | `TotalAmt` | Yes | `{{amount}}` (Ensure no currency symbols) | | Tax Amount | `TaxAmount` | Yes | Map to specific Line Item Tax flow | | Due Date | `DueDate` | No | Formatter: Date/Time if format isn't YYYY-MM-DD | | Image URL | `File` | No | Pass the direct URL into 'Upload Attachable' step | | Category | `AccountRef` | Yes | Use Zapier 'Lookup Table' if names differ between apps | | Invoice Ref | `DocNumber` | No | Maps to QuickBooks Reference Number field |

Gotchas & Failure Modes

* **Task Quotas**: Each step in 'Paths' and 'Find/Create' counts as a task. Use Zapier's 'Autofill' or simple filters if you are approaching monthly task limits. * **Duplication**: Ensure 'Duplicate Detection' is enabled in Dext settings. Zapier does not natively check for existing Bill/Purchase IDs unless you add a 'Find' step first. * **Tax Codes**: Global QuickBooks versions (UK/AU/CA) require a `TaxCodeRef` ID rather than a text name. Use a Lookup Table in Zapier to map Dext tax names to QBO Tax IDs. * **Multi-Currency**: If Dext sends a currency code not enabled in your QBO settings, the Zap will fail with a 400 Bad Request error.

Verification Checklist

- [ ] **Test Mode**: Run a 'Test Action' in Zapier and verify the Bill appears in the 'In Expenses' tab of QuickBooks Online. - [ ] **Attachment Check**: Open the transaction in QBO and ensure the receipt image is attached and legible. - [ ] **Path Logic**: Publish one receipt under $1,000 and one over $1,000 to ensure Path filtering triggers correctly. - [ ] **Vendor Matching**: Ensure that if a vendor exists, the Zap links it rather than creating a duplicate (e.g., 'Amazon' vs 'Amazon.com'). - [ ] **Zap History**: Check the 'Task History' in Zapier for any 'Stopped' or 'Errored' tasks to address mapping issues.

Ready to Automate?

Build this automation with Zapier in minutes.