Square provides card payments, point-of-sale hardware and a commerce ecosystem. Odoo does not ship a native Square provider, so connecting the two is a custom or third-party integration.
The most common goal is to bring Square transactions into Odoo as the accounting and inventory back office, especially where Square runs the physical point of sale and Odoo runs everything behind it.
Data Flow
What Data Moves Between Square and Odoo
The integration uses the Square API.
Square to Odoo: payments, point-of-sale orders, refunds and fees.
Odoo to Square: optionally catalogue and inventory, if Odoo is the system of record for stock.
What Goes Wrong
Common Pitfalls
No native module. Plan for a third-party app or a custom build and budget for its maintenance.
Overlapping systems. Square has its own catalogue and inventory that overlap with Odoo. Decide which system owns stock before building.
Point-of-sale reconciliation. Square POS takings must reconcile to Odoo journals by location and day.
Fee handling. Square fees must post to the right accounts.
Location mapping. Square locations need mapping to Odoo companies or warehouses.
Setup
How the Integration Is Set Up
Choose the approach: a third-party connector or a custom build.
Create a Square application and obtain API access.
Decide the system of record for catalogue and inventory.
Map Square locations to Odoo and define the reconciliation rules.
Run an initial transaction import and verify a day of takings.