The Square Developer Platform provides APIs, SDKs, and tools that developers can use to integrate with Square business solutions. Millions of sellers use Square hardware (such as Terminal and Reader) and products (such as Square Point of Sale, Square for Retail, Restaurant POS, and the Seller Dashboard) to run their business.
The Square Developer Platform supports independent and partner developers who:
- Work in-house for a seller.
- Offer custom applications to Square sellers directly or in the Square App Marketplace.
- Build custom solutions for businesses as a Square Solutions Partner.
Square APIs provide payment, commerce, customer, staff, and merchant capabilities that can be used as building blocks to support a broad range of business needs and create experiences that help sellers grow their business. The Square Developer Platform also provides SDKs, tools, and other resources that help developers to build, test, and monitor their applications.
To develop on the Square Developer Platform, you need a Square account and application.
A Square account represents a business that processes payments and manages Square resources (such as customers, orders, and inventory) using Square products and Square APIs. Calls to Square APIs are made within the context of a Square account based on the access token in the request.
Your account enables access to the Developer Dashboard and other developer tools. While testing, you can create resources and process payments for your account. Later, any application fees that you collect to monetize your application are credited to your account.
A Square application provides credentials used to identify and authenticate API requests (such as the application ID and secret used in the OAuth code flow) and stores configuration settings (such as the default Square API version for API calls). You can access and manage application settings from the Developer Dashboard.
After creating your account and registering an application, use Square developer resources to explore Square APIs and begin developing. A good place to start is API Explorer, which is an interactive tool that lets you sign in with your Square account, choose an access token, and build and send Square API requests in the Sandbox or production environment.
During development, it's also a good idea to learn about requirements for publishing your application to the App Marketplace. If you need help along the way, contact Developer Support, reach out in the forums, or join our Discord community.
The following topics describe Square developer resources:
- Get Started - Shows how to sign up for a Square account, create an application, make your first API call in the Square Sandbox, and view logs of your API calls.
- Build Basics - General design concepts and patterns that you should understand when using the Square Developer Platform.
- Developer Tools - Detailed documentation about using Square developer tools, such as the Square Sandbox, API Explorer, and API Logs.
- Square SDKs - Describes the backend wrapper SDKs for Square APIs that let you code in common programming languages.
- Sample Applications - A list of sample applications that use wrapper SDKs to call Square APIs and client-side payment SDKs and libraries to process payments.
- GraphQL - Lets you request exactly the data you need from supported Square graphs (such as orders, payments, catalog, and customers) with faster and more compact data transfers.
- OAuth API - Used to request and manage permissions from Square sellers that allow an application to access resources in seller accounts.
- Webhook Subscriptions API - Used to programmatically create and manage an application's webhook subscriptions.
- Migrate from Deprecated APIs - An overview of the retirement process for Square APIs and migration guides for specific deprecated APIs.
- International Development - Key considerations for creating applications for sellers in other countries.