Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 368 |
Technical Name |
ws_square |
License | LGPL-3 |
Website | https://www.werpsol.com |
Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 368 |
Technical Name |
ws_square |
License | LGPL-3 |
Website | https://www.werpsol.com |
Square Payment Gateway Integration
Seamless and secure payments inside your Odoo system



Key Features

Easy Integration
Integrate directly with Odoo's payment system.

Secure Checkout
PCI-compliant and SSL encrypted transactions.

Live & Test Mode
Switch between production and sandbox easily.

Fraud Protection
Advanced fraud detection and risk tools.
Install Square Payment Gateway
Once you have installed the Square Payment Gateway from the Apps menu, go to the main dashboard and navigate to Accounting > Configuration > Payment Providers. In the list of available providers, locate Square and click on it to open its configuration form. Finally, click the “Activate” button to enable the Square Payment Gateway in your Odoo system.

Screenshot: Square listed in Odoo
Payment Acquirers
Generate and Enter API Credentials
To connect Odoo with your Square account, you’ll need to generate the following credentials from your Square dashboard:
- Access Token
- Location Id
Login to your Square Merchant / Sandbox Portal, and navigate to the Credentials → Access Token
API Access Token Configuration

For Location ID navigate to the Locations → Location ID
Location ID Configuration

Go to Webhooks → Subscriptions in your Square Developer Dashboard and set the Notification URL to:
https://yourdomain.com/payment/square/notify
Replace yourdomain.com
with your live, SSL-enabled domain.
Square will use this URL to send payment status updates (success, failure, refunds, etc.).
Webhook Configuration


Enter Credentials and Configure Environment
After entering your Access Token, and Location ID, click on the "Test Credentials" button to verify your integration.

This ensures your API connection with Square is active before using the payment gateway in production.
Square Credentials Configuration in Odoo

Accept Payments via Website, Invoice, Sale Order etc
From Website Checkout
Customers visiting your Odoo website can select Square as a payment method at checkout. Once selected, and click on pay square will redirect to the checkout page

From Invoice
Send invoices to customers via email or portal. The customer can click the “Pay Now” button on the invoice view to pay using Square.

From Sale Order
Payments can also be accepted directly from sale Quotations. Simply open a sale order and click "Send Payment Link" or let the customer pay from the portal.

From Generated URL
Odoo allows you to copy a secure payment link from a Sale Order or Invoice and send it manually to your customer. Once they click the link, they’ll be redirected to a secure payment page to complete the transaction.

Checkout Page & Payment Confirmation
When a customer chooses Square and clicks “Pay” button, they are redirected to a secure checkout page hosted by Square where they can enter their card details.

Once the customer clicks the Pay button, they will be redirected to Square's secure checkout page. There, they can enter their payment details. In the sandbox environment, the customer follows a three-step test flow. After clicking Test Payment, the transaction will be processed successfully. Square then sends a webhook notification to Odoo for payment confirmation, and the related invoice or sales order is automatically marked as paid.

You can also check the webhook delivery status and logs in your Square Developer Dashboard under Webhooks → Logs.


Free Support
You will get 90 Days of free support for bug fixes and technical issues (excluding data recovery).
At Werpsol, we provide end-to-end Odoo solutions including module development, process consultation, and full implementation services. For inquiries or customizations, feel free to contact us.



Please log in to comment on this module