A2X Payouts to NetSuite Journal Entries Sync (Make.com)

Automate multi-channel ecommerce reconciliation into NetSuite's General Ledger using Make.com's advanced orchestration.

Tools: A2XNetSuite

Platform: Make.com

Short Answer

A2X summaries are automatically transformed into balanced NetSuite Journal Entries, correctly categorized by Department, Class, and Location, ensuring a lean NetSuite ledger and 100% reconciliation accuracy.

The Problem

Ecommerce payouts from Amazon or Shopify contain a mix of sales, fees, and taxes that span different periods. Manually entering these into NetSuite is error-prone and fails to account for messy date overlaps and cross-subsidiary reporting requirements.

The Outcome

A2X summaries are automatically transformed into balanced NetSuite Journal Entries, correctly categorized by Department, Class, and Location, ensuring a lean NetSuite ledger and 100% reconciliation accuracy.

Step-by-Step Guide

1. **Create Webhook in Make.com**: Add a 'Webhooks > Custom Webhook' module. Copy the unique URL and paste it into A2X under Settings > Notifications > Webhooks for the 'Payout Finalized' event. 2. **Configure NetSuite Connection**: Add the NetSuite module. Use 'Token-Based Authentication' (TBA). You must provide your Account ID, Consumer Key/Secret, and Token ID/Secret from your NetSuite Integration Record. 3. **Search for Subsidiary/Segment IDs**: Use the 'NetSuite > Search Records' module to find internal IDs for the Subsidiary, Department, and Class based on the A2X payout channel name to ensure dynamic routing. 4. **Handle Line Items with Iterator**: Add an 'Iterator' module to break down the `amounts` array from the A2X payload into individual bundles for processing. 5. **Transform Account Mappings**: Use the `switch()` function in a Variable module to map A2X Account Codes to your NetSuite Chart of Accounts internal IDs (e.g., `switch(A2X_Code; Amazon Sales; 4000; Shipping; 4010; 4999)`). 6. **Aggregate for Journal Creation**: Use an 'Array Aggregator' module. Set the 'Source Module' as the Iterator and specify the NetSuite Journal Line item structure as the target to group all debits and credits from one payout into a single bundle. 7. **Map NetSuite Journal Module**: Add the 'NetSuite > Create Record' module. Set Record Type to 'Journal Entry'. Map the Aggregated Line Items to the 'Line List' field. Use `formatDate()` for the transaction date to match NetSuite’s expected format (`YYYY-MM-DD`). 8. **Implement Duplicate Check**: Before creating the Journal, add a 'NetSuite > Search Records' module to check if a Journal with the same 'External ID' (A2X Payout ID) already exists. Use a Filter to only proceed if the search result count is 0. 9. **Configure Error Handling**: Right-click the NetSuite module and select 'Add Error Handler'. Use an 'Email' or 'Slack' module to alert the team if a Journal fails to post due to an unbalanced credit/debit or a locked accounting period.