Short Answer
A fully automated 'Hands-Free' AP workflow where Dext extractions are validated and pushed to Sage Intacct/Business Cloud as Draft Bills, complete with GL coding and the original PDF attachment for compliance.
The Problem
Manual data entry from invoices into Sage is prone to human error and delays financial reporting. Finance teams often struggle to maintain a digital link between the accounting record in Sage and the original source document stored in Dext.
The Outcome
A fully automated 'Hands-Free' AP workflow where Dext extractions are validated and pushed to Sage Intacct/Business Cloud as Draft Bills, complete with GL coding and the original PDF attachment for compliance.
Step-by-Step Guide
1. **Initialize Scenario**: Log in to Make.com and create a new scenario. Name it 'Dext to Sage: Bill Sync'.
2. **Configure Dext Trigger**: Add the 'Dext - Watch Items' module. Create a connection using your Dext API keys. Set the trigger to 'Item Published' or 'Item Reviewed' depending on your internal approval workflow.
3. **Add Data Filter**: Click the link between the Dext and Sage modules. Set a filter to ensure only items with the status 'Ready' or 'Published' pass through to prevent incomplete data syncs.
4. **Search/Create Vendor**: Add the 'Sage - Search Vendors' module. Map the 'Supplier Name' from Dext.
5. **Router for Logic**: Add a Router. **Path A**: If Vendor exists, proceed to Create Bill. **Path B**: If Vendor is not found (null), add a 'Sage - Create Vendor' module first.
6. **Format Line Items**: If the invoice has multiple rows, use the 'Iterator' module on the 'Line Items' array from Dext, then use an 'Array Aggregator' to format them into the specific JSON structure Sage requires for its 'Invoice Lines' field.
7. **Map Sage Bill**: Add the 'Sage - Create Purchasing Invoice' module. Map the `Total Amount`, `Invoice Date` (using `formatDate` to ISO 8601), and `Reference Number`.
8. **Handle Attachments**: Add the 'HTTP - Get a File' module to download the document image from the Dext URL. Follow this with the 'Sage - Upload Attachment' module, linking it to the Bill ID created in the previous step.
9. **Add Error Handling**: Right-click the Sage module and select 'Add error handler'. Use a 'Break' or 'Rollback' directive, or send a Slack/Email notification to the admin if the API returns a 400 error (e.g., closed accounting period).
Data Mapping
| Dext Field | Sage Field | Make.com Transformation | Requirement |
| :--- | :--- | :--- | :--- |
| `Supplier Name` | `Vendor ID/Name` | `map()` or `search` result | Required |
| `Date` | `Bill Date` | `formatDate(raw_date; "YYYY-MM-DD")` | Required |
| `Total` | `Total Amount` | `parseNumber(total)` | Required |
| `Tax Amount` | `Tax Value` | `parseNumber(tax)` | Optional |
| `Reference` | `Invoice Number` | `trim(reference)` | Required |
| `Category` | `GL Account` | `get(map(GL_Mapping; dext_cat; sage_code))` | Required |
| `Image URL` | `Attachment` | Received via HTTP 'Get a file' | Recommended |
Gotchas & Failure Modes
• **Date Formats**: Sage is extremely strict about ISO 8601. Use `formatDate()` in Make to avoid 'Invalid Date' errors.
• **Currency Mismatch**: Ensure the Currency Code (e.g., 'USD') matches exactly between both systems; otherwise, Sage will reject the bundle.
• **Operation Usage**: Use 'Aggregators' instead of multiple 'Create Line' modules to save Make operations; one Bill with 10 lines should only consume 1 Sage Action operation.
• **Web Services Gateway**: In Sage Intacct, ensure the 'Web Services' subscription is active and the 'Sender ID' is authorized in Company Info, or Make will return a 403 Forbidden error.
Verification Checklist
- [ ] **Connection Check**: Both Dext and Sage modules show a green 'Connection' status.
- [ ] **Data Pass-through**: Run 'Run Once' with a test invoice in Dext; verify the 'Bundle' in Make shows all extracted fields.
- [ ] **Duplicate Logic**: Ensure the Invoice Number in Sage is unique (check for '409 Conflict' errors in Make logs).
- [ ] **Attachment Validation**: Confirm the PDF appears in the Sage 'Attachments' tab and is opened successfully.
- [ ] **Accounting Period**: Ensure the test invoice date is within an 'Open' period in Sage.
Ready to Automate?
Build this automation with Make.com in minutes.