The same counter sale means two different things to Epicor depending on whether the buyer holds an account, and Square now sends enough alongside it for the ERP to tell the two of them apart.
A manufacturer's trade counter takes money from two sorts of people. One is a contractor paying by card who will never be seen again, and the other is an account customer whose purchase belongs on a statement and sometimes against a job. Square records both identically, so the end-of-day sheet goes to finance and somebody works out which was which from memory and a scribbled name. Account sales get missed, jobs get undercosted. The Square to Epicor integration sends the sale with enough context to sort itself, so the counter stops being the gap in the ledger.

A Square sale taken against a trade account posts to that customer in Epicor, so it appears on their statement rather than disappearing into the day's cash total.
Where a counter sale is for a job, the Square transaction reaches Epicor with the job attached, so the cost lands against the work instead of being absorbed centrally.
Items sold over the counter are taken out of Epicor as they are handed over, so the stock figure the rest of the business plans from reflects what has actually gone.
Takings reach Epicor from Square as they happen, so closing the counter is a check rather than somebody transcribing a printed summary after everybody else has left.
A colleague selects the trade account at the Square till and Alumio posts the sale to that customer in Epicor, so what is owed goes on a statement while genuine cash sales stay where they belong in the day's takings.
An engineer collects parts for a job and the Square sale carries the job reference into Epicor, so the cost of the work includes what was picked up at the counter rather than only what was issued from the store.
A part is brought back and refunded through Square, and Alumio reverses it in Epicor against whatever the original sale touched, so a job stops being charged for something that went back on the shelf that morning.
Alumio sits between sales channels and fulfillment systems as a governed integration backbone. Orders are routed, transformed, and validated, while status updates return to every channel.
Authenticate your systems using Alumio's pre-built connectors. Choose from 200+ connector packages in the marketplace, plus unlimited custom integrations.
Define how data fields map between systems in a visual interface. Adjust formats, enrich records, and apply business logic, no custom code required.
Configure flows to run in real time on events, on a schedule, or both. Reduce manual data entry and let Alumio handle movement and transformation between systems.
Once your first integration is live, adding your ERP, PIM, WMS, or CRM connects to the same hub. Existing flows keep running. No rebuilding from scratch.
The people who ask for the next connection are usually behind the counter, and what they ask for is a faster way to open an account. A contractor buying for the third time this month should not be paying by card, but setting them up means a credit decision nobody at the counter can make. Alumio holds that connection alongside this one, so an application starts at the Square till and the answer comes back to Epicor.
Counter sales post on their own, carrying what they need to be sorted rather than being sorted afterwards. Alumio takes the Square transaction with the account or job selected at the till and creates the matching entry in Epicor, so an account sale reaches the customer and a cash sale reaches the day's takings. Items come off stock either way, because the goods have left the counter regardless of who paid. Whether Epicor takes a job reference that way is a question about Epicor.
No, this is configured rather than coded. The end-of-day sheet somebody fills in, and the hour finance spends turning it into Epicor entries, are what this removes. Which Square payment type maps to which treatment, and how an account is selected at the till, are set up once in Alumio. Epicor implementations carry local changes, so the Code Transformer is there where a field will not map as it stands.
Nobody, and that is the correct answer rather than a gap to fill. A genuine cash sale should stay a cash sale in Epicor, because guessing at an account from a card name creates a statement line somebody will dispute. What matters is making the account easy to select at the Square till while the customer is standing there, since an unidentified sale costs far less to accept than a wrongly identified one.
A counter sale booked as cash when it belonged to an account is the failure worth catching, because the money balances and only the customer's statement is short. Alumio monitors each transfer live and records the Square transaction with the Epicor account or job it was sent to, so anything refused raises an alert naming the sale and the reason. Retries run where configured, so no takings go missing.
Talk to an Alumio integration specialist. We'll map the right architecture for your systems, at the right scale, so your operations stay reliable through every change.