Square Data Model

Business entities and locations

To understand how information is linked to a Square account, you will need to understand how businesses and locations are modeled. This section will walk you through the Connect v2 concepts of business entities and locations.

Square uses the concept of a business entity to structure the top-level information associated with a Square account. The business entity is automatically configured with information provided when the account is created.

For example, when the owner of Raphael's Puppy-Care Emporium creates their Square account, they provide some basic information, like the name of their business, which is used to initialize the account information in the Square Dashboard. Most of the day-to-day information in a Square account is actually tied to a location.

A location represents a way for customers to interact with the business entity and every Square account includes a default location based on the business name. For businesses with physical stores, a location typically corresponds to a specific store location with a unique physical address. But locations are not required to have addresses and Square accounts can have multiple locations. For example the account associated with, Raphael's Puppy-Care Emporium has 9 locations:

  • 3 storefront locations corresponding to physical addresses in San Diego, San Francisco, and Boston.
  • 3 "mobile" locations corresponding to "treatmobiles" that sell homemade treats and dog toys around Oakland, Chicago, and New York City.
  • 1 location corresponding to a fleet of pop-up grooming stations that rotate around local dog parks in various cities.
  • 2 "virtual" locations that correspond to an online store and a mobile app. The eCommerce site and mobile app both allow customers to buy products or book appointments for grooming services.
Locations

Establishing multiple locations for an account is optional, but potentially useful for reporting and tracking sales over time. Most customer-related interactions (e.g., taking payments, issuing refunds, managing inventory) must be attributed to a specific location in the API call.

Prev
< Introduction
Next
Payments and refunds >

Contact Developer Support, join our Slack channel, or ask for help on Stack Overflow