How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Square Checkout API

The Checkout API from Square — 5 operation(s) for checkout.

Square Checkout API is one of 45 APIs that Square publishes on the APIs.io network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification.

Tagged areas include Checkout. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, and an AsyncAPI specification.

This API exposes 10 operations across 5 paths, and defines 189 schemas. It is described by OpenAPI 3.2.0, at version 2.0.

Requests are made against a single base URL, https://connect.squareup.com.

10 operations 5 paths 189 schemas 1 DELETE4 GET2 POST3 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
2.0
Server
https://connect.squareup.com
Authentication
OAuth 2.0, API Key
License
Terms of Service
Resource Areas
1

Authentication & Security 2

Square Checkout API declares 2 security schemes for authenticating requests. It supports OAuth 2.0 (oauth2) using the authorizationCode flow, exposing 57 scopes. An API key is passed in the header as Authorization (oauth2ClientSecret).

Paths & Operations 10

Across 5 paths, the API surfaces 10 operations — 1 DELETE, 4 GET, 2 POST, 3 PUT. Each is listed below with its method, path, parameters, and response codes.

Checkout 10
POST
/v2/locations/{location_id}/checkoutsdeprecated
Square Create Checkout
CreateCheckout 1 param body → 200
GET
/v2/online-checkout/location-settings/{location_id}
Square Retrieve Location Settings
RetrieveLocationSettings 1 param → 200
PUT
/v2/online-checkout/location-settings/{location_id}
Square Update Location Settings
UpdateLocationSettings 1 param body → 200
GET
/v2/online-checkout/merchant-settings
Square Retrieve Merchant Settings
RetrieveMerchantSettings → 200
PUT
/v2/online-checkout/merchant-settings
Square Update Merchant Settings
UpdateMerchantSettings body → 200
GET
/v2/online-checkout/payment-links
Square List Payment Links
ListPaymentLinks 2 params → 200
POST
/v2/online-checkout/payment-links
Square Create Payment Link
CreatePaymentLink body → 200
DELETE
/v2/online-checkout/payment-links/{id}
Square Delete Payment Link
DeletePaymentLink 1 param → 200
GET
/v2/online-checkout/payment-links/{id}
Square Retrieve Payment Link
RetrievePaymentLink 1 param → 200
PUT
/v2/online-checkout/payment-links/{id}
Square Update Payment Link
UpdatePaymentLink 1 param body → 200

Schemas 189

The contract defines 189 schemas that model the data the API accepts and returns. The most detailed are Order (31 properties), CatalogObject (29 properties), FulfillmentDeliveryDetails (23 properties), OrderLineItem (22 properties). Each schema is shown below with its type and property counts.

Currency
string
Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://wikipedia.org/wiki/ISO4217).
CatalogTimePeriod
object
Represents a time period - either a single period or a repeating period.
1 property
OrderReturnTip
object
A tip being returned.
4 properties
CatalogItemProductType
string
The type of a CatalogItem. Connect V2 only allows the creation of REGULAR or APPOINTMENTSSERVICE items.
CatalogItemVariation
object
An item variation, representing a product for sale, in the Catalog object model. Each [item](entity:CatalogItem) must have at least one item variation and can…
21 properties
FulfillmentPickupDetailsCurbsidePickupDetails
object
Specific details for curbside pickup.
2 properties
OrderReturnDiscount
object
Represents a discount being returned that applies to one or more return line items in an order. Fixed-amount, order-scoped discounts are distributed across all…
10 properties
UpdateMerchantSettingsRequest
object
1 property 1 required
OrderLineItemPricingBlocklists
object
Describes pricing adjustments that are blocked from automatic application to a line item. For more information, see [Apply Taxes and Discounts](https://develop…
2 properties
RefundStatus
string
Indicates a refund's current status.
FulfillmentFulfillmentLineItemApplication
string
The lineitemapplication describes what order line items this fulfillment applies to. It can be ALL or ENTRYLIST with a supplied list of fulfillment entries.
CatalogModifierListModifierType
string
Defines the type of CatalogModifierList.
CatalogPricingType
string
Indicates whether the price of a CatalogItemVariation should be entered manually at the time of sale.
OrderRoundingAdjustment
object
A rounding adjustment of the money being returned. Commonly used to apply cash rounding when the minimum unit of the account is smaller than the lowest physica…
3 properties
CatalogQuickAmountsSettings
object
A parent Catalog Object model represents a set of Quick Amounts and the settings control the amounts.
3 properties 1 required
OrderReturnTax
object
Represents a tax being returned that applies to one or more return line items in an order. Fixed-amount, order-scoped taxes are distributed across all non-zero…
9 properties
MeasurementUnitCustom
object
The information needed to define a custom unit, provided by the seller.
2 properties 2 required
OrderReturnLineItemModifier
object
A line item modifier being returned.
8 properties
CatalogDiscountModifyTaxBasis
string
OrderLineItemDiscount
object
Represents a discount that applies to one or more line items in an order. Fixed-amount, order-scoped discounts are distributed across all non-zero line item to…
12 properties
OrderLineItemItemType
string
Represents the line item type.
CheckoutLocationSettingsCoupons
object
1 property
CatalogItemFoodAndBeverageDetailsDietaryPreference
object
Dietary preferences that can be assigned to an FOODANDBEV item and its ingredients.
3 properties
CatalogItemOptionValue
object
An enumerated value that can link a CatalogItemVariation to an item option as one of its item option values.
5 properties
CatalogModifierOverride
object
Options to control how to override the default behavior of the specified modifier.
2 properties 1 required
CatalogItemOptionValueForItemVariation
object
A CatalogItemOptionValue links an item variation to an item option as an item option value. For example, a t-shirt item may offer a color option and a size opt…
2 properties
TenderBankAccountDetailsStatus
string
Indicates the bank account payment's current status.
CatalogItemOption
object
A group of variations for a CatalogItem.
5 properties
SubscriptionPricingType
string
Determines the pricing of a [Subscription](entity:Subscription)
CheckoutLocationSettingsPolicy
object
3 properties
OrderLineItemPricingBlocklistsBlockedDiscount
object
A discount to block from applying to a line item. The discount must be identified by either discountuid or discountcatalogobjectid, but not both.
3 properties
PaymentLink
object
11 properties 1 required
CheckoutOptions
object
11 properties
CatalogCustomAttributeDefinitionSellerVisibility
string
Defines the visibility of a custom attribute to sellers in Square client applications, Square APIs or in Square UIs (including Square Point of Sale application…
OrderLineItemAppliedServiceCharge
object
3 properties 1 required
CatalogCustomAttributeDefinitionSelectionConfig
object
Configuration associated with SELECTION-type custom attribute definitions.
2 properties
FulfillmentDeliveryDetailsOrderFulfillmentDeliveryDetailsScheduleType
string
The schedule type of the delivery fulfillment.
MeasurementUnitVolume
string
The unit of volume used to measure a quantity.
OrderMoneyAmounts
object
A collection of various money amounts.
5 properties
OrderReward
object
Represents a reward that can be applied to an order if the necessary reward tier criteria are met. Rewards are created through the Loyalty API.
2 properties 2 required
FulfillmentFulfillmentEntry
object
Links an order line item to a fulfillment. Each entry must reference a valid uid for an order line item in the lineitemuid field, as well as a quantity to fulf…
4 properties 2 required
Card
object
Represents the payment details of a card to be used for payments. These details are determined by the payment token generated by Web Payments SDK.
17 properties
CatalogModifierListSelectionType
string
Indicates whether a CatalogModifierList supports multiple selections.
CatalogQuickAmountsSettingsOption
string
Determines a seller's option on Quick Amounts feature.
SourceApplication
object
Represents information about the application used to generate a change.
3 properties
MeasurementUnitLength
string
The unit of length used to measure a quantity.
TaxInclusionType
string
Whether to the tax amount should be additional to or included in the CatalogItem price.
CatalogCustomAttributeDefinitionStringConfig
object
Configuration associated with Custom Attribute Definitions of type STRING.
1 property
MeasurementUnitUnitType
string
Describes the type of this unit and indicates which field contains the unit information. This is an ‘open’ enum.
CardBrand
string
Indicates a card's brand, such as VISA or MASTERCARD.
OrderReturnServiceCharge
object
Represents the service charge applied to the original order.
15 properties
CatalogObject
object
The wrapper object for the catalog entries of a given object type. Depending on the type attribute value, a CatalogObject instance assumes a type-specific data…
29 properties 2 required
SubscriptionPhase
object
Describes a phase in a subscription plan variation. For more information, see [Subscription Plans and Variations](https://developer.squareup.com/docs/subscript…
6 properties 1 required
CatalogCategoryType
string
Indicates the type of a category.
ChargeRequestAdditionalRecipient
object
Represents an additional recipient (other than the merchant) entitled to a portion of the tender. Support is currently limited to USD, CAD and GBP currencies
3 properties 3 required
ItemVariationLocationOverrides
object
Price and inventory alerting overrides for a CatalogItemVariation at a specific Location.
8 properties
CheckoutMerchantSettingsPaymentMethodsAfterpayClearpay
object
The settings allowed for AfterpayClearpay.
3 properties
CreateCheckoutResponse
object
Defines the fields that are included in the response body of a request to the CreateCheckout endpoint.
2 properties
CheckoutMerchantSettingsPaymentMethods
object
4 properties
OrderPricingOptions
object
Pricing options for an order. The options affect how the order's price is calculated. They can be used, for example, to apply automatic price adjustments that…
2 properties
MeasurementUnitWeight
string
Unit of weight used to measure a quantity.
TenderCashDetails
object
Represents the details of a tender with type CASH.
2 properties
OrderLineItemAppliedTax
object
Represents an applied portion of a tax to a line item in an order. Order-scoped taxes automatically include the applied taxes in each line item. Line item taxe…
3 properties 1 required
CatalogCategory
object
A category to which a CatalogItem instance belongs.
11 properties
CreateOrderRequest
object
2 properties
TenderCardDetails
object
Represents additional details of a tender with type CARD or SQUAREGIFTCARD
3 properties
PrePopulatedData
object
Describes buyer data to prepopulate in the payment form. For more information, see [Optional Checkout Configurations](https://developer.squareup.com/docs/check…
3 properties
CatalogStockConversion
object
Represents the rule of conversion between a stockable [CatalogItemVariation](entity:CatalogItemVariation) and a non-stockable sell-by or receive-by CatalogItem…
3 properties 3 required
Tender
object
Represents a tender (i.e., a method of payment) used in a Square transaction.
17 properties 1 required
CatalogCustomAttributeDefinitionType
string
Defines the possible types for a custom attribute.
Address
object
Represents a postal address in a country. For more information, see [Working with Addresses](https://developer.squareup.com/docs/build-basics/working-with-addr…
14 properties
FulfillmentState
string
The current state of this fulfillment.
OrderLineItemAppliedDiscount
object
Represents an applied portion of a discount to a line item in an order. Order scoped discounts have automatically applied discounts present for each line item.…
3 properties 1 required
ShippingFee
object
2 properties 1 required
TenderSquareAccountDetailsStatus
string
FulfillmentPickupDetailsScheduleType
string
The schedule type of the pickup fulfillment.
OrderServiceChargeType
string
CatalogItem
object
A [CatalogObject](entity:CatalogObject) instance of the ITEM type, also referred to as an item, in the catalog.
22 properties
OrderServiceChargeTreatmentType
string
Indicates whether the service charge will be treated as a value-holding line item or apportioned toward a line item.
MeasurementUnitArea
string
Unit of area used to measure a quantity.
Order
object
Contains all information related to a single order to process with Square, including line items that specify the products to purchase. Order objects also inclu…
31 properties 1 required
Fulfillment
object
Contains details about how to fulfill this order. Orders can only be created with at most one fulfillment using the API. However, orders returned by the Orders…
9 properties
TaxCalculationPhase
string
When to calculate the taxes due on a cart.
FulfillmentShipmentDetails
object
Contains the details necessary to fulfill a shipment order.
15 properties
CatalogAvailabilityPeriod
object
Represents a time period of availability.
3 properties
CheckoutLocationSettingsBrandingHeaderType
string
TenderType
string
Indicates a tender's type.
OrderLineItemTaxType
string
Indicates how the tax is applied to the associated line item or order.
OrderLineItemModifier
object
A [CatalogModifier](entity:CatalogModifier).
8 properties
CheckoutLocationSettingsBrandingButtonShape
string
CreateCheckoutRequest
object
Defines the parameters that can be included in the body of a request to the CreateCheckout endpoint.
9 properties 2 required
PaymentLinkRelatedResources
object
2 properties
OrderReturnLineItem
object
The line item being returned in an order.
21 properties 1 required
CategoryPathToRootNode
object
A node in the path from a retrieved category to its root node.
2 properties
CheckoutLocationSettings
object
7 properties
CatalogSubscriptionPlan
object
Describes a subscription plan. A subscription plan represents what you want to sell in a subscription model, and includes references to each of the associated…
6 properties 1 required
InventoryAlertType
string
Indicates whether Square should alert the merchant when the inventory quantity of a CatalogItemVariation is low.
TenderBuyNowPayLaterDetailsBrand
string
TenderSquareAccountDetails
object
Represents the details of a tender with type SQUAREACCOUNT.
1 property
AdditionalRecipient
object
Represents an additional recipient (other than the merchant) receiving a portion of this tender.
4 properties 2 required
DayOfWeek
string
Indicates the specific day of the week.
FulfillmentRecipient
object
Information about the fulfillment recipient.
5 properties
Checkout
object
Square Checkout lets merchants accept online payments for supported payment types using a checkout workflow hosted on squareup.com.
10 properties
CatalogItemFoodAndBeverageDetailsDietaryPreferenceType
string
The type of dietary preference for the FOODANDBEV type of items and integredients.
CatalogQuickAmountType
string
Determines the type of a specific Quick Amount.
CatalogCustomAttributeDefinition
object
Contains information defining a custom attribute. Custom attributes are intended to store additional information about a catalog object or to associate a catal…
12 properties 3 required
Country
string
Indicates the country associated with another entity, such as a business. Values are in [ISO 3166-1-alpha-2 format](http://www.iso.org/iso/home/standards/count…
RetrievePaymentLinkResponse
object
2 properties
Money
object
Represents an amount of money. Money fields can be signed or unsigned. Fields that do not explicitly define whether they are signed or unsigned are considered…
2 properties
OrderServiceChargeScope
string
Indicates whether this is a line-item or order-level apportioned service charge.
CatalogCustomAttributeDefinitionNumberConfig
object
1 property
OrderLineItemTaxScope
string
Indicates whether this is a line-item or order-level tax.
CreatePaymentLinkRequest
object
7 properties
SubscriptionPricing
object
Describes the pricing for the subscription.
3 properties
CatalogCustomAttributeValue
object
An instance of a custom attribute. Custom attributes can be defined and added to ITEM and ITEMVARIATION type catalog objects. [Read more about custom attribute…
8 properties
MeasurementUnitGeneric
string
QuickPay
object
Describes an ad hoc item and price to generate a quick pay checkout link. For more information, see [Quick Pay Checkout](https://developer.squareup.com/docs/ch…
3 properties 3 required
OrderLineItemDiscountScope
string
Indicates whether this is a line-item or order-level discount.
SubscriptionCadence
string
Determines the billing cadence of a [Subscription](entity:Subscription)
AcceptedPaymentMethods
object
4 properties
CatalogModifierList
object
For a text-based modifier, this encapsulates the modifier's text when its modifiertype is TEXT. For example, to sell T-shirts with custom prints, a text-based…
9 properties
RetrieveMerchantSettingsResponse
object
2 properties
CatalogMeasurementUnit
object
Represents the unit used to measure a CatalogItemVariation and specifies the precision for decimal quantities.
2 properties
Refund
object
Represents a refund processed for a Square transaction.
10 properties 6 required
TenderBuyNowPayLaterDetailsStatus
string
CardCoBrand
string
Indicates the brand for a co-branded card.
CatalogObjectType
string
Possible types of CatalogObjects returned from the catalog, each containing type-specific properties in the data field corresponding to the specified object ty…
CatalogItemFoodAndBeverageDetailsDietaryPreferenceStandardDietaryPreference
string
Standard dietary preferences for food and beverage items that are recommended on item creation.
ErrorCode
string
Indicates the specific error that occurred during a request to a Square API.
RetrieveLocationSettingsResponse
object
2 properties
CustomField
object
Describes a custom form field to add to the checkout page to collect more information from buyers during checkout. For more information, see [Specify checkout…
1 property 1 required
UpdatePaymentLinkRequest
object
1 property 1 required
OrderLineItemDiscountType
string
Indicates how the discount is applied to the associated line item or order.
CatalogSubscriptionPlanVariation
object
Describes a subscription plan variation. A subscription plan variation represents how the subscription for a product or service is sold. For more information,…
6 properties 2 required
UpdatePaymentLinkResponse
object
2 properties
DeletePaymentLinkResponse
object
3 properties
CatalogPricingRule
object
Defines how discounts are automatically applied to a set of items that match the pricing rule during the active time period.
13 properties
TenderBankAccountDetails
object
Represents the details of a tender with type BANKACCOUNT. See [BankAccountPaymentDetails](entity:BankAccountPaymentDetails) for more exposed details of a bank…
1 property
CatalogCustomAttributeDefinitionSelectionConfigCustomAttributeSelection
object
A named selection for this SELECTION-type custom attribute definition.
2 properties 1 required
CheckoutMerchantSettingsPaymentMethodsAfterpayClearpayEligibilityRange
object
A range of purchase price that qualifies.
2 properties 2 required
ErrorCategory
string
Indicates which high-level category of error has occurred during a request to the Connect API.
CatalogQuickAmount
object
Represents a Quick Amount in the Catalog.
4 properties 2 required
CatalogImage
object
An image file to use in Square catalogs. It can be associated with CatalogItem, CatalogItemVariation, CatalogCategory, and CatalogModifierList objects. Only th…
4 properties
CatalogItemOptionForItem
object
An option that can be assigned to an item. For example, a t-shirt item may offer a color option or a size option.
1 property
OrderLineItemPricingBlocklistsBlockedTax
object
A tax to block from applying to a line item. The tax must be identified by either taxuid or taxcatalogobjectid, but not both.
3 properties
CatalogProductSet
object
Represents a collection of catalog objects for the purpose of applying a PricingRule. Including a catalog object will include all of its subtypes. For example,…
7 properties
CardType
string
Indicates a card's type, such as CREDIT or DEBIT.
TenderCardDetailsStatus
string
Indicates the card transaction's current status.
OrderQuantityUnit
object
Contains the measurement unit for a quantity and a precision that specifies the number of digits after the decimal point for decimal quantities.
4 properties
CatalogItemFoodAndBeverageDetails
object
The food and beverage-specific details of a FOODANDBEV item.
3 properties
CardPrepaidType
string
Indicates a card's prepaid type, such as NOTPREPAID or PREPAID.
TenderBuyNowPayLaterDetails
object
Represents the details of a tender with type BUYNOWPAYLATER.
2 properties
OrderServiceChargeCalculationPhase
string
Represents a phase in the process of calculating order totals. Service charges are applied after the indicated phase. [Read more about how order totals are cal…
CheckoutMerchantSettingsPaymentMethodsPaymentMethod
object
The settings allowed for a payment method.
1 property
OrderState
string
The state of the order.
CatalogEcomSeoData
object
SEO data for for a seller's Square Online store.
3 properties
OrderLineItem
object
Represents a line item in an order. Each line item describes a different product to purchase, with its own quantity and price details.
22 properties 1 required
Product
string
Indicates the Square product used to generate a change.
CatalogItemFoodAndBeverageDetailsIngredientStandardIngredient
string
Standard ingredients for food and beverage items that are recommended on item creation.
CatalogV1Id
object
A Square API V1 identifier of an item, including the object ID and its associated location ID.
2 properties
CatalogCustomAttributeDefinitionAppVisibility
string
Defines the visibility of a custom attribute to applications other than their creating application.
CreatePaymentLinkResponse
object
3 properties
CatalogItemModifierListInfo
object
References a text-based modifier or a list of non text-based modifiers applied to a CatalogItem instance and specifies supported behaviors of the application.
6 properties 1 required
CatalogDiscount
object
A discount applicable to items.
8 properties
TenderCardDetailsEntryMethod
string
Indicates the method used to enter the card's details.
CheckoutLocationSettingsTipping
object
5 properties
OrderLineItemTax
object
Represents a tax that applies to one or more line item in the order. Fixed-amount, order-scoped taxes are distributed across all non-zero line item totals. The…
10 properties
OrderReturn
object
The set of line items, service charges, taxes, discounts, tips, and other items being returned in an order.
9 properties
MeasurementUnit
object
Represents a unit of measurement to use with a quantity, such as ounces or inches. Exactly one of the following fields are required: customunit, areaunit, leng…
8 properties
MeasurementUnitTime
string
Unit of time used to measure a quantity (a duration).
UpdateLocationSettingsResponse
object
2 properties
UpdateLocationSettingsRequest
object
1 property 1 required
OrderSource
object
Represents the origination details of an order.
1 property
ModifierLocationOverrides
object
Location-specific overrides for specified properties of a CatalogModifier object.
3 properties
CatalogDiscountType
string
How to apply a CatalogDiscount to a CatalogItem.
FulfillmentPickupDetails
object
Contains details necessary to fulfill a pickup order.
18 properties
CheckoutMerchantSettings
object
2 properties
Error
object
Represents an error encountered during a request to the Connect API. See [Handling errors](https://developer.squareup.com/docs/build-basics/handling-errors) fo…
4 properties 2 required
FulfillmentDeliveryDetails
object
Describes delivery details of an order fulfillment.
23 properties
ExcludeStrategy
string
Indicates which products matched by a CatalogPricingRule will be excluded if the pricing rule uses an exclude set.
UpdateMerchantSettingsResponse
object
2 properties
CatalogItemFoodAndBeverageDetailsIngredient
object
Describes the ingredient used in a FOODANDBEV item.
3 properties
CheckoutLocationSettingsBranding
object
3 properties
CatalogTax
object
A tax applicable to an item.
7 properties
ListPaymentLinksResponse
object
3 properties
CatalogObjectCategory
object
A category that can be assigned to an item or a parent category that can be assigned to another category. For example, a clothing category can be assigned to a…
2 properties
FulfillmentType
string
The type of fulfillment.
OrderServiceCharge
object
Represents a service charge applied to an order.
16 properties
CatalogModifier
object
A modifier applicable to items at the time of sale. An example of a modifier is a Cheese add-on to a Burger item.
6 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

square-checkout-api-openapi.yml Raw ↑

Other APIs Square publishes across the network.

Square Reporting API
Square Channels API
Square Transfer Orders API
Square ApplePay API
Square BankAccounts API
Square BookingCustomAttributes API
Square Bookings API
Square Cards API
Square CashDrawers API
Square Catalog API
Square CustomerCustomAttributes API
Square CustomerGroups API
Where this information came from

This is an independent, third-party profile of Square Checkout API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.