openapi: 3.0.0
servers:
  - url: https://connect.squareup.com
info:
  contact:
    email: developers@squareup.com
    name: Square Developer Platform
    url: https://squareup.com/developers
  description: Client library for accessing the Square Connect APIs
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  termsOfService: https://connect.squareup.com/tos
  title: Square Connect API
  version: "2.0"
  x-apisguru-categories:
    - payment
  x-logo:
    url: http://square.github.io/images/logo.png
  x-origin:
    - format: openapi
      url: https://raw.githubusercontent.com/square/connect-api-specification/master/api.json
      version: "3.0"
  x-providerName: squareup.com
externalDocs:
  description: "Read the official documentation here:"
  url: https://docs.connect.squareup.com/
paths:
  /mobile/authorization-code:
    post:
      description: |-
        Generates code to authorize a mobile application to connect to a Square card reader

        Authorization codes are one-time-use and expire __60 minutes__ after being issued.

        __Important:__ The `Authorization` header you provide to this endpoint must have the following format:

        ```
        Authorization: Bearer ACCESS_TOKEN
        ```

        Replace `ACCESS_TOKEN` with a
        [valid production authorization credential](https://developer.squareup.com/docs/build-basics/access-tokens).
      operationId: CreateMobileAuthorizationCode
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateMobileAuthorizationCodeRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateMobileAuthorizationCodeResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE_IN_PERSON
      summary: CreateMobileAuthorizationCode
      tags:
        - MobileAuthorization
      x-oauthpermissions:
        - PAYMENTS_WRITE_IN_PERSON
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/oauth2/clients/{client_id}/access-token/renew":
    post:
      description: |-
        `RenewToken` is deprecated. For information about refreshing OAuth access tokens, see
        [Migrate from Renew to Refresh OAuth Tokens](https://developer.squareup.com/docs/oauth-api/migrate-to-refresh-tokens).


        Renews an OAuth access token before it expires.

        OAuth access tokens besides your application's personal access token expire after __30 days__.
        You can also renew expired tokens within __15 days__ of their expiration.
        You cannot renew an access token that has been expired for more than 15 days.
        Instead, the associated user must re-complete the OAuth flow from the beginning.

        __Important:__ The `Authorization` header for this endpoint must have the
        following format:

        ```
        Authorization: Client APPLICATION_SECRET
        ```

        Replace `APPLICATION_SECRET` with the application secret on the Credentials
        page in the [developer dashboard](https://developer.squareup.com/apps).
      operationId: RenewToken
      parameters:
        - description: Your application ID, available from the [developer dashboard](https://developer.squareup.com/apps).
          in: path
          name: client_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RenewTokenRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RenewTokenResponse"
          description: Success
      security:
        - oauth2ClientSecret: []
      summary: RenewToken
      tags:
        - OAuth
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /oauth2/revoke:
    post:
      description: |-
        Revokes an access token generated with the OAuth flow.

        If an account has more than one OAuth access token for your application, this
        endpoint revokes all of them, regardless of which token you specify. When an
        OAuth access token is revoked, all of the active subscriptions associated
        with that OAuth token are canceled immediately.

        __Important:__ The `Authorization` header for this endpoint must have the
        following format:

        ```
        Authorization: Client APPLICATION_SECRET
        ```

        Replace `APPLICATION_SECRET` with the application secret on the OAuth
        page in the [developer dashboard](https://developer.squareup.com/apps).
      operationId: RevokeToken
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RevokeTokenRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RevokeTokenResponse"
          description: Success
      security:
        - oauth2ClientSecret: []
      summary: RevokeToken
      tags:
        - OAuth
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /oauth2/token:
    post:
      description: |-
        Returns an OAuth access token.

        The endpoint supports distinct methods of obtaining OAuth access tokens.
        Applications specify a method by adding the `grant_type` parameter
        in the request and also provide relevant information.

        __Note:__ Regardless of the method application specified,
        the endpoint always returns two items; an OAuth access token and
        a refresh token in the response.

        __OAuth tokens should only live on secure servers. Application clients
        should never interact directly with OAuth tokens__.
      operationId: ObtainToken
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ObtainTokenRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ObtainTokenResponse"
          description: Success
      security: []
      summary: ObtainToken
      tags:
        - OAuth
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v1/me/employees:
    get:
      description: Provides summary information for all of a business's employees.
      operationId: ListEmployees
      parameters:
        - description: "The order in which employees are listed in the response, based on their created_at field.      Default value: ASC"
          in: query
          name: order
          required: false
          schema:
            type: string
        - description: If filtering results by their updated_at field, the beginning of the requested reporting period, in ISO 8601 format
          in: query
          name: begin_updated_at
          required: false
          schema:
            type: string
        - description: If filtering results by there updated_at field, the end of the requested reporting period, in ISO 8601 format.
          in: query
          name: end_updated_at
          required: false
          schema:
            type: string
        - description: If filtering results by their created_at field, the beginning of the requested reporting period, in ISO 8601 format.
          in: query
          name: begin_created_at
          required: false
          schema:
            type: string
        - description: If filtering results by their created_at field, the end of the requested reporting period, in ISO 8601 format.
          in: query
          name: end_created_at
          required: false
          schema:
            type: string
        - description: If provided, the endpoint returns only employee entities with the specified status (ACTIVE or INACTIVE).
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: If provided, the endpoint returns only employee entities with the specified external_id.
          in: query
          name: external_id
          required: false
          schema:
            type: string
        - description: The maximum integer number of employee entities to return in a single response. Default 100, maximum 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          in: query
          name: batch_token
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/V1Employee"
                type: array
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: ListEmployees
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |2-
         Use the CreateEmployee endpoint to add an employee to a Square
        account. Employees created with the Connect API have an initial status
        of `INACTIVE`. Inactive employees cannot sign in to Square Point of Sale
        until they are activated from the Square Dashboard. Employee status
        cannot be changed with the Connect API.

        Employee entities cannot be deleted. To disable employee profiles,
        set the employee's status to <code>INACTIVE</code>
      operationId: CreateEmployee
      requestBody:
        $ref: "#/components/requestBodies/V1Employee"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Employee"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: CreateEmployee
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v1/me/employees/{employee_id}":
    get:
      description: Provides the details for a single employee.
      operationId: RetrieveEmployee
      parameters:
        - description: The employee's ID.
          in: path
          name: employee_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Employee"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: RetrieveEmployee
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: ""
      operationId: UpdateEmployee
      parameters:
        - description: The ID of the role to modify.
          in: path
          name: employee_id
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/V1Employee"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Employee"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: UpdateEmployee
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v1/me/roles:
    get:
      description: Provides summary information for all of a business's employee roles.
      operationId: ListEmployeeRoles
      parameters:
        - description: "The order in which employees are listed in the response, based on their created_at field.Default value: ASC"
          in: query
          name: order
          required: false
          schema:
            type: string
        - description: The maximum integer number of employee entities to return in a single response. Default 100, maximum 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          in: query
          name: batch_token
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/V1EmployeeRole"
                type: array
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: ListEmployeeRoles
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates an employee role you can then assign to employees.

        Square accounts can include any number of roles that can be assigned to
        employees. These roles define the actions and permissions granted to an
        employee with that role. For example, an employee with a "Shift Manager"
        role might be able to issue refunds in Square Point of Sale, whereas an
        employee with a "Clerk" role might not.

        Roles are assigned with the [V1UpdateEmployee](https://developer.squareup.com/reference/square_2021-08-18/v1-employees-api/update-employee-role)
        endpoint. An employee can have only one role at a time.

        If an employee has no role, they have none of the permissions associated
        with roles. All employees can accept payments with Square Point of Sale.
      operationId: CreateEmployeeRole
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/V1EmployeeRole"
        description: An EmployeeRole object with a name and permissions, and an optional owner flag.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1EmployeeRole"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: CreateEmployeeRole
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v1/me/roles/{role_id}":
    get:
      description: Provides the details for a single employee role.
      operationId: RetrieveEmployeeRole
      parameters:
        - description: The role's ID.
          in: path
          name: role_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1EmployeeRole"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: RetrieveEmployeeRole
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: Modifies the details of an employee role.
      operationId: UpdateEmployeeRole
      parameters:
        - description: The ID of the role to modify.
          in: path
          name: role_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/V1EmployeeRole"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1EmployeeRole"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: UpdateEmployeeRole
      tags:
        - V1Employees
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v1/{location_id}/orders":
    get:
      description: Provides summary information for a merchant's online store orders.
      operationId: ListOrders
      parameters:
        - description: The ID of the location to list online store orders for.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The order in which payments are listed in the response.
          in: query
          name: order
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: The maximum number of payments to return in a single response. This value cannot exceed 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-deprecated: true
        - description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          in: query
          name: batch_token
          required: false
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/V1Order"
                type: array
          description: Success
      security:
        - oauth2:
            - ORDERS_READ
      summary: ListOrders
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - ORDERS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
      x-visibility: SDK_ONLY
  "/v1/{location_id}/orders/{order_id}":
    get:
      description: Provides comprehensive information for a single online store order, including the order's history.
      operationId: RetrieveOrder
      parameters:
        - description: The ID of the order's associated location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The order's Square-issued ID. You obtain this value from Order objects returned by the List Orders endpoint
          in: path
          name: order_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Order"
          description: Success
      security:
        - oauth2:
            - ORDERS_READ
      summary: RetrieveOrder
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - ORDERS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
      x-visibility: SDK_ONLY
    put:
      description: "Updates the details of an online store order. Every update you perform on an order corresponds to one of three actions:"
      operationId: UpdateOrder
      parameters:
        - description: The ID of the order's associated location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The order's Square-issued ID. You obtain this value from Order objects returned by the List Orders endpoint
          in: path
          name: order_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/V1UpdateOrderRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Order"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
      summary: UpdateOrder
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - ORDERS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
      x-visibility: SDK_ONLY
  "/v1/{location_id}/payments":
    get:
      description: |-
        Provides summary information for all payments taken for a given
        Square account during a date range. Date ranges cannot exceed 1 year in
        length. See Date ranges for details of inclusive and exclusive dates.

        *Note**: Details for payments processed with Square Point of Sale while
        in offline mode may not be transmitted to Square for up to 72 hours.
        Offline payments have a `created_at` value that reflects the time the
        payment was originally processed, not the time it was subsequently
        transmitted to Square. Consequently, the ListPayments endpoint might
        list an offline payment chronologically between online payments that
        were seen in a previous request.
      operationId: ListPayments
      parameters:
        - description: The ID of the location to list payments for. If you specify me, this endpoint returns payments aggregated from all of the business's locations.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The order in which payments are listed in the response.
          in: query
          name: order
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: "The beginning of the requested reporting period, in ISO 8601 format. If this value is before January 1, 2013 (2013-01-01T00:00:00Z), this endpoint returns an error. Default value: The current time minus one year."
          in: query
          name: begin_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: "The end of the requested reporting period, in ISO 8601 format. If this value is more than one year greater than begin_time, this endpoint returns an error. Default value: The current time."
          in: query
          name: end_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: The maximum number of payments to return in a single response. This value cannot exceed 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-deprecated: true
        - description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          in: query
          name: batch_token
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: Indicates whether or not to include partial payments in the response. Partial payments will have the tenders collected so far, but the itemizations will be empty until the payment is completed.
          in: query
          name: include_partial
          required: false
          schema:
            type: boolean
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/V1Payment"
                type: array
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: ListPayments
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v1/{location_id}/payments/{payment_id}":
    get:
      description: Provides comprehensive information for a single payment.
      operationId: RetrievePayment
      parameters:
        - description: The ID of the payment's associated location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The Square-issued payment ID. payment_id comes from Payment objects returned by the List Payments endpoint, Settlement objects returned by the List Settlements endpoint, or Refund objects returned by the List Refunds endpoint.
          in: path
          name: payment_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Payment"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: RetrievePayment
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v1/{location_id}/refunds":
    get:
      description: Provides the details for all refunds initiated by a merchant or any of the merchant's mobile staff during a date range. Date ranges cannot exceed one year in length.
      operationId: ListRefunds
      parameters:
        - description: The ID of the location to list refunds for.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The order in which payments are listed in the response.
          in: query
          name: order
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: "The beginning of the requested reporting period, in ISO 8601 format. If this value is before January 1, 2013 (2013-01-01T00:00:00Z), this endpoint returns an error. Default value: The current time minus one year."
          in: query
          name: begin_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: "The end of the requested reporting period, in ISO 8601 format. If this value is more than one year greater than begin_time, this endpoint returns an error. Default value: The current time."
          in: query
          name: end_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: "The approximate number of refunds to return in a single response. Default: 100. Max: 200. Response may contain more results than the prescribed limit when refunds are made simultaneously to multiple tenders in a payment or when refunds are generated in an exchange to account for the value of returned goods."
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-deprecated: true
        - description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          in: query
          name: batch_token
          required: false
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/V1Refund"
                type: array
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: ListRefunds
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
    post:
      description: |-
        Issues a refund for a previously processed payment. You must issue
        a refund within 60 days of the associated payment.

        You cannot issue a partial refund for a split tender payment. You must
        instead issue a full or partial refund for a particular tender, by
        providing the applicable tender id to the V1CreateRefund endpoint.
        Issuing a full refund for a split tender payment refunds all tenders
        associated with the payment.

        Issuing a refund for a card payment is not reversible. For development
        purposes, you can create fake cash payments in Square Point of Sale and
        refund them.
      operationId: CreateRefund
      parameters:
        - description: The ID of the original payment's associated location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/V1CreateRefundRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Refund"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CreateRefund
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v1/{location_id}/settlements":
    get:
      description: |-
        Provides summary information for all deposits and withdrawals
        initiated by Square to a linked bank account during a date range. Date
        ranges cannot exceed one year in length.

        *Note**: the ListSettlements endpoint does not provide entry
        information.
      operationId: ListSettlements
      parameters:
        - description: The ID of the location to list settlements for. If you specify me, this endpoint returns settlements aggregated from all of the business's locations.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The order in which settlements are listed in the response.
          in: query
          name: order
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: "The beginning of the requested reporting period, in ISO 8601 format. If this value is before January 1, 2013 (2013-01-01T00:00:00Z), this endpoint returns an error. Default value: The current time minus one year."
          in: query
          name: begin_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: "The end of the requested reporting period, in ISO 8601 format. If this value is more than one year greater than begin_time, this endpoint returns an error. Default value: The current time."
          in: query
          name: end_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: The maximum number of settlements to return in a single response. This value cannot exceed 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-deprecated: true
        - description: Provide this parameter to retrieve only settlements with a particular status (SENT or FAILED).
          in: query
          name: status
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          in: query
          name: batch_token
          required: false
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/V1Settlement"
                type: array
          description: Success
      security:
        - oauth2:
            - SETTLEMENTS_READ
      summary: ListSettlements
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - SETTLEMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v1/{location_id}/settlements/{settlement_id}":
    get:
      description: |-
        Provides comprehensive information for a single settlement.

        The returned `Settlement` objects include an `entries` field that lists
        the transactions that contribute to the settlement total. Most
        settlement entries correspond to a payment payout, but settlement
        entries are also generated for less common events, like refunds, manual
        adjustments, or chargeback holds.

        Square initiates its regular deposits as indicated in the
        [Deposit Options with Square](https://squareup.com/help/us/en/article/3807)
        help article. Details for a regular deposit are usually not available
        from Connect API endpoints before 10 p.m. PST the same day.

        Square does not know when an initiated settlement **completes**, only
        whether it has failed. A completed settlement is typically reflected in
        a bank account within 3 business days, but in exceptional cases it may
        take longer.
      operationId: RetrieveSettlement
      parameters:
        - description: The ID of the settlements's associated location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The settlement's Square-issued ID. You obtain this value from Settlement objects returned by the List Settlements endpoint.
          in: path
          name: settlement_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/V1Settlement"
          description: Success
      security:
        - oauth2:
            - SETTLEMENTS_READ
      summary: RetrieveSettlement
      tags:
        - V1Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - SETTLEMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/apple-pay/domains:
    post:
      description: |-
        Activates a domain for use with Apple Pay on the Web and Square. A validation
        is performed on this domain by Apple to ensure that it is properly set up as
        an Apple Pay enabled domain.

        This endpoint provides an easy way for platform developers to bulk activate
        Apple Pay on the Web with Square for merchants using their platform.

        To learn more about Web Apple Pay, see
        [Add the Apple Pay on the Web Button](https://developer.squareup.com/docs/payment-form/add-digital-wallets/apple-pay).
      operationId: RegisterDomain
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RegisterDomainRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RegisterDomainResponse"
          description: Success
      security:
        - oauth2: []
      summary: RegisterDomain
      tags:
        - ApplePay
      x-oauthpermissions: []
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/bank-accounts:
    get:
      description: Returns a list of [BankAccount](https://developer.squareup.com/reference/square_2021-08-18/objects/BankAccount) objects linked to a Square account.
      operationId: ListBankAccounts
      parameters:
        - description: |-
            The pagination cursor returned by a previous call to this endpoint.
            Use it in the next `ListBankAccounts` request to retrieve the next set 
            of results.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            Upper limit on the number of bank accounts to return in the response. 
            Currently, 1000 is the largest supported limit. You can specify a limit 
            of up to 1000 bank accounts. This is also the default limit.
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: |-
            Location ID. You can specify this optional filter 
            to retrieve only the linked bank accounts belonging to a specific location.
          in: query
          name: location_id
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListBankAccountsResponse"
          description: Success
      security:
        - oauth2:
            - BANK_ACCOUNTS_READ
      summary: ListBankAccounts
      tags:
        - BankAccounts
      x-oauthpermissions:
        - BANK_ACCOUNTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/bank-accounts/by-v1-id/{v1_bank_account_id}":
    get:
      description: Returns details of a [BankAccount](https://developer.squareup.com/reference/square_2021-08-18/objects/BankAccount) identified by V1 bank account ID.
      operationId: GetBankAccountByV1Id
      parameters:
        - description: |-
            Connect V1 ID of the desired `BankAccount`. For more information, see 
            [Retrieve a bank account by using an ID issued by V1 Bank Accounts API](https://developer.squareup.com/docs/bank-accounts-api#retrieve-a-bank-account-by-using-an-id-issued-by-v1-bank-accounts-api).
          in: path
          name: v1_bank_account_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetBankAccountByV1IdResponse"
          description: Success
      security:
        - oauth2:
            - BANK_ACCOUNTS_READ
      summary: GetBankAccountByV1Id
      tags:
        - BankAccounts
      x-oauthpermissions:
        - BANK_ACCOUNTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/bank-accounts/{bank_account_id}":
    get:
      description: |-
        Returns details of a [BankAccount](https://developer.squareup.com/reference/square_2021-08-18/objects/BankAccount)
        linked to a Square account.
      operationId: GetBankAccount
      parameters:
        - description: Square-issued ID of the desired `BankAccount`.
          in: path
          name: bank_account_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetBankAccountResponse"
          description: Success
      security:
        - oauth2:
            - BANK_ACCOUNTS_READ
      summary: GetBankAccount
      tags:
        - BankAccounts
      x-oauthpermissions:
        - BANK_ACCOUNTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/bookings:
    post:
      description: Creates a booking.
      operationId: CreateBooking
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateBookingRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateBookingResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_WRITE
      summary: CreateBooking
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/bookings/availability/search:
    post:
      description: Searches for availabilities for booking.
      operationId: SearchAvailability
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchAvailabilityRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchAvailabilityResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_READ
      summary: SearchAvailability
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/bookings/business-booking-profile:
    get:
      description: Retrieves a seller's booking profile.
      operationId: RetrieveBusinessBookingProfile
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveBusinessBookingProfileResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_BUSINESS_SETTINGS_READ
      summary: RetrieveBusinessBookingProfile
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_BUSINESS_SETTINGS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/bookings/team-member-booking-profiles:
    get:
      description: Lists booking profiles for team members.
      operationId: ListTeamMemberBookingProfiles
      parameters:
        - description: Indicates whether to include only bookable team members in the returned result (`true`) or not (`false`).
          in: query
          name: bookable_only
          required: false
          schema:
            type: boolean
          x-is-beta: true
        - description: The maximum number of results to return.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-beta: true
        - description: The cursor for paginating through the results.
          in: query
          name: cursor
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: Indicates whether to include only team members enabled at the given location in the returned result.
          in: query
          name: location_id
          required: false
          schema:
            type: string
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListTeamMemberBookingProfilesResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_BUSINESS_SETTINGS_READ
      summary: ListTeamMemberBookingProfiles
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_BUSINESS_SETTINGS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/bookings/team-member-booking-profiles/{team_member_id}":
    get:
      description: Retrieves a team member's booking profile.
      operationId: RetrieveTeamMemberBookingProfile
      parameters:
        - description: The ID of the team member to retrieve.
          in: path
          name: team_member_id
          required: true
          schema:
            type: string
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveTeamMemberBookingProfileResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_BUSINESS_SETTINGS_READ
      summary: RetrieveTeamMemberBookingProfile
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_BUSINESS_SETTINGS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/bookings/{booking_id}":
    get:
      description: Retrieves a booking.
      operationId: RetrieveBooking
      parameters:
        - description: The ID of the [Booking](https://developer.squareup.com/reference/square_2021-08-18/objects/Booking) object representing the to-be-retrieved booking.
          in: path
          name: booking_id
          required: true
          schema:
            type: string
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveBookingResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_READ
      summary: RetrieveBooking
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
    put:
      description: Updates a booking.
      operationId: UpdateBooking
      parameters:
        - description: The ID of the [Booking](https://developer.squareup.com/reference/square_2021-08-18/objects/Booking) object representing the to-be-updated booking.
          in: path
          name: booking_id
          required: true
          schema:
            type: string
          x-is-beta: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateBookingRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateBookingResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_WRITE
      summary: UpdateBooking
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/bookings/{booking_id}/cancel":
    post:
      description: Cancels an existing booking.
      operationId: CancelBooking
      parameters:
        - description: The ID of the [Booking](https://developer.squareup.com/reference/square_2021-08-18/objects/Booking) object representing the to-be-cancelled booking.
          in: path
          name: booking_id
          required: true
          schema:
            type: string
          x-is-beta: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CancelBookingRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CancelBookingResponse"
          description: Success
      security:
        - oauth2:
            - APPOINTMENTS_WRITE
      summary: CancelBooking
      tags:
        - Bookings
      x-is-beta: true
      x-oauthpermissions:
        - APPOINTMENTS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/cards:
    get:
      description: |-
        Retrieves a list of cards owned by the account making the request.
        A max of 25 cards will be returned.
      operationId: ListCards
      parameters:
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            Limit results to cards associated with the customer supplied.
            By default, all cards owned by the merchant are returned.
          in: query
          name: customer_id
          required: false
          schema:
            type: string
        - description: |-
            Includes disabled cards.
            By default, all enabled cards owned by the merchant are returned.
          in: query
          name: include_disabled
          required: false
          schema:
            type: boolean
        - description: Limit results to cards associated with the reference_id supplied.
          in: query
          name: reference_id
          required: false
          schema:
            type: string
        - description: |-
            Sorts the returned list by when the card was created with the specified order.
            This field defaults to ASC.
          in: query
          name: sort_order
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListCardsResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: ListCards
      tags:
        - Cards
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: Adds a card on file to an existing merchant.
      operationId: CreateCard
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateCardRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateCardResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CreateCard
      tags:
        - Cards
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/cards/{card_id}":
    get:
      description: Retrieves details for a specific Card.
      operationId: RetrieveCard
      parameters:
        - description: Unique ID for the desired Card.
          in: path
          name: card_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveCardResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: RetrieveCard
      tags:
        - Cards
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/cards/{card_id}/disable":
    post:
      description: |-
        Disables the card, preventing any further updates or charges.
        Disabling an already disabled card is allowed but has no effect.
      operationId: DisableCard
      parameters:
        - description: Unique ID for the desired Card.
          in: path
          name: card_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DisableCardResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: DisableCard
      tags:
        - Cards
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/cash-drawers/shifts:
    get:
      description: |-
        Provides the details for all of the cash drawer shifts for a location
        in a date range.
      operationId: ListCashDrawerShifts
      parameters:
        - description: The ID of the location to query for a list of cash drawer shifts.
          in: query
          name: location_id
          required: true
          schema:
            type: string
        - description: |-
            The order in which cash drawer shifts are listed in the response,
            based on their opened_at field. Default value: ASC
          in: query
          name: sort_order
          required: false
          schema:
            type: string
        - description: The inclusive start time of the query on opened_at, in ISO 8601 format.
          in: query
          name: begin_time
          required: false
          schema:
            type: string
        - description: The exclusive end date of the query on opened_at, in ISO 8601 format.
          in: query
          name: end_time
          required: false
          schema:
            type: string
        - description: |-
            Number of cash drawer shift events in a page of results (200 by
            default, 1000 max).
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: Opaque cursor for fetching the next page of results.
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListCashDrawerShiftsResponse"
          description: Success
      security:
        - oauth2:
            - CASH_DRAWER_READ
      summary: ListCashDrawerShifts
      tags:
        - CashDrawers
      x-oauthpermissions:
        - CASH_DRAWER_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/cash-drawers/shifts/{shift_id}":
    get:
      description: |-
        Provides the summary details for a single cash drawer shift. See
        [ListCashDrawerShiftEvents](https://developer.squareup.com/reference/square_2021-08-18/cash-drawers-api/list-cash-drawer-shift-events) for a list of cash drawer shift events.
      operationId: RetrieveCashDrawerShift
      parameters:
        - description: The ID of the location to retrieve cash drawer shifts from.
          in: query
          name: location_id
          required: true
          schema:
            type: string
        - description: The shift ID.
          in: path
          name: shift_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveCashDrawerShiftResponse"
          description: Success
      security:
        - oauth2:
            - CASH_DRAWER_READ
      summary: RetrieveCashDrawerShift
      tags:
        - CashDrawers
      x-oauthpermissions:
        - CASH_DRAWER_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/cash-drawers/shifts/{shift_id}/events":
    get:
      description: Provides a paginated list of events for a single cash drawer shift.
      operationId: ListCashDrawerShiftEvents
      parameters:
        - description: The ID of the location to list cash drawer shifts for.
          in: query
          name: location_id
          required: true
          schema:
            type: string
        - description: The shift ID.
          in: path
          name: shift_id
          required: true
          schema:
            type: string
        - description: |-
            Number of resources to be returned in a page of results (200 by
            default, 1000 max).
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: Opaque cursor for fetching the next page of results.
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListCashDrawerShiftEventsResponse"
          description: Success
      security:
        - oauth2:
            - CASH_DRAWER_READ
      summary: ListCashDrawerShiftEvents
      tags:
        - CashDrawers
      x-oauthpermissions:
        - CASH_DRAWER_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/batch-delete:
    post:
      description: |-
        Deletes a set of [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem)s based on the
        provided list of target IDs and returns a set of successfully deleted IDs in
        the response. Deletion is a cascading event such that all children of the
        targeted object are also deleted. For example, deleting a CatalogItem will
        also delete all of its [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation)
        children.

        `BatchDeleteCatalogObjects` succeeds even if only a portion of the targeted
        IDs can be deleted. The response will only include IDs that were
        actually deleted.
      operationId: BatchDeleteCatalogObjects
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BatchDeleteCatalogObjectsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchDeleteCatalogObjectsResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_WRITE
      summary: BatchDeleteCatalogObjects
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/batch-retrieve:
    post:
      description: |-
        Returns a set of objects based on the provided ID.
        Each [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem) returned in the set includes all of its
        child information including: all of its
        [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) objects, references to
        its [CatalogModifierList](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifierList) objects, and the ids of
        any [CatalogTax](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogTax) objects that apply to it.
      operationId: BatchRetrieveCatalogObjects
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BatchRetrieveCatalogObjectsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRetrieveCatalogObjectsResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_READ
      summary: BatchRetrieveCatalogObjects
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/batch-upsert:
    post:
      description: |-
        Creates or updates up to 10,000 target objects based on the provided
        list of objects. The target objects are grouped into batches and each batch is
        inserted/updated in an all-or-nothing manner. If an object within a batch is
        malformed in some way, or violates a database constraint, the entire batch
        containing that item will be disregarded. However, other batches in the same
        request may still succeed. Each batch may contain up to 1,000 objects, and
        batches will be processed in order as long as the total object count for the
        request (items, variations, modifier lists, discounts, and taxes) is no more
        than 10,000.
      operationId: BatchUpsertCatalogObjects
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BatchUpsertCatalogObjectsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchUpsertCatalogObjectsResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_WRITE
      summary: BatchUpsertCatalogObjects
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/info:
    get:
      description: |-
        Retrieves information about the Square Catalog API, such as batch size
        limits that can be used by the `BatchUpsertCatalogObjects` endpoint.
      operationId: CatalogInfo
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CatalogInfoResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_READ
      summary: CatalogInfo
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/list:
    get:
      description: |-
        Returns a list of [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s that includes
        all objects of a set of desired types (for example, all [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem)
        and [CatalogTax](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogTax) objects) in the catalog. The `types` parameter
        is specified as a comma-separated list of valid [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) types:
        `ITEM`, `ITEM_VARIATION`, `MODIFIER`, `MODIFIER_LIST`, `CATEGORY`, `DISCOUNT`, `TAX`, `IMAGE`.

        __Important:__ ListCatalog does not return deleted catalog items. To retrieve
        deleted catalog items, use [SearchCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-objects)
        and set the `include_deleted_objects` attribute value to `true`.
      operationId: ListCatalog
      parameters:
        - description: |-
            The pagination cursor returned in the previous response. Leave unset for an initial request.
            The page size is currently set to be 100.
            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            An optional case-insensitive, comma-separated list of object types to retrieve.

            The valid values are defined in the [CatalogObjectType](https://developer.squareup.com/reference/square_2021-08-18/enums/CatalogObjectType) enum, including
            `ITEM`, `ITEM_VARIATION`, `CATEGORY`, `DISCOUNT`, `TAX`,
            `MODIFIER`, `MODIFIER_LIST`, or `IMAGE`.

            If this is unspecified, the operation returns objects of all the types at the version of the Square API used to make the request.
          in: query
          name: types
          required: false
          schema:
            type: string
        - description: |-
            The specific version of the catalog objects to be included in the response. 
            This allows you to retrieve historical
            versions of objects. The specified version value is matched against
            the [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s' `version` attribute.
          in: query
          name: catalog_version
          required: false
          schema:
            format: int64
            type: integer
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListCatalogResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_READ
      summary: ListCatalog
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/object:
    post:
      description: Creates or updates the target [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject).
      operationId: UpsertCatalogObject
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpsertCatalogObjectRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpsertCatalogObjectResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_WRITE
      summary: UpsertCatalogObject
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/catalog/object/{object_id}":
    delete:
      description: |-
        Deletes a single [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) based on the
        provided ID and returns the set of successfully deleted IDs in the response.
        Deletion is a cascading event such that all children of the targeted object
        are also deleted. For example, deleting a [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem)
        will also delete all of its
        [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) children.
      operationId: DeleteCatalogObject
      parameters:
        - description: |-
            The ID of the catalog object to be deleted. When an object is deleted, other
            objects in the graph that depend on that object will be deleted as well (for example, deleting a
            catalog item will delete its catalog item variations).
          in: path
          name: object_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteCatalogObjectResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_WRITE
      summary: DeleteCatalogObject
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: |-
        Returns a single [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem) as a
        [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) based on the provided ID. The returned
        object includes all of the relevant [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem)
        information including: [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation)
        children, references to its
        [CatalogModifierList](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifierList) objects, and the ids of
        any [CatalogTax](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogTax) objects that apply to it.
      operationId: RetrieveCatalogObject
      parameters:
        - description: The object ID of any type of catalog objects to be retrieved.
          in: path
          name: object_id
          required: true
          schema:
            type: string
        - description: |-
            If `true`, the response will include additional objects that are related to the
            requested object, as follows:

            If the `object` field of the response contains a `CatalogItem`, its associated
            `CatalogCategory`, `CatalogTax`, `CatalogImage` and `CatalogModifierList` objects will
            be returned in the `related_objects` field of the response. If the `object` field of
            the response contains a `CatalogItemVariation`, its parent `CatalogItem` will be returned
            in the `related_objects` field of the response.

            Default value: `false`
          in: query
          name: include_related_objects
          required: false
          schema:
            type: boolean
        - description: |-
            Requests objects as of a specific version of the catalog. This allows you to retrieve historical
            versions of objects. The value to retrieve a specific version of an object can be found
            in the version field of [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s.
          in: query
          name: catalog_version
          required: false
          schema:
            format: int64
            type: integer
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveCatalogObjectResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_READ
      summary: RetrieveCatalogObject
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/search:
    post:
      description: |-
        Searches for [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) of any type by matching supported search attribute values,
        excluding custom attribute values on items or item variations, against one or more of the specified query expressions.

        This (`SearchCatalogObjects`) endpoint differs from the [SearchCatalogItems](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-items)
        endpoint in the following aspects:

        - `SearchCatalogItems` can only search for items or item variations, whereas `SearchCatalogObjects` can search for any type of catalog objects.
        - `SearchCatalogItems` supports the custom attribute query filters to return items or item variations that contain custom attribute values, where `SearchCatalogObjects` does not.
        - `SearchCatalogItems` does not support the `include_deleted_objects` filter to search for deleted items or item variations, whereas `SearchCatalogObjects` does.
        - The both endpoints have different call conventions, including the query filter formats.
      operationId: SearchCatalogObjects
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchCatalogObjectsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchCatalogObjectsResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_READ
      summary: SearchCatalogObjects
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/search-catalog-items:
    post:
      description: |-
        Searches for catalog items or item variations by matching supported search attribute values, including
        custom attribute values, against one or more of the specified query expressions.

        This (`SearchCatalogItems`) endpoint differs from the [SearchCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-objects)
        endpoint in the following aspects:

        - `SearchCatalogItems` can only search for items or item variations, whereas `SearchCatalogObjects` can search for any type of catalog objects.
        - `SearchCatalogItems` supports the custom attribute query filters to return items or item variations that contain custom attribute values, where `SearchCatalogObjects` does not.
        - `SearchCatalogItems` does not support the `include_deleted_objects` filter to search for deleted items or item variations, whereas `SearchCatalogObjects` does.
        - The both endpoints use different call conventions, including the query filter formats.
      operationId: SearchCatalogItems
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchCatalogItemsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchCatalogItemsResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_READ
      summary: SearchCatalogItems
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/update-item-modifier-lists:
    post:
      description: |-
        Updates the [CatalogModifierList](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifierList) objects
        that apply to the targeted [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem) without having
        to perform an upsert on the entire item.
      operationId: UpdateItemModifierLists
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateItemModifierListsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateItemModifierListsResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_WRITE
      summary: UpdateItemModifierLists
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/catalog/update-item-taxes:
    post:
      description: |-
        Updates the [CatalogTax](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogTax) objects that apply to the
        targeted [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem) without having to perform an
        upsert on the entire item.
      operationId: UpdateItemTaxes
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateItemTaxesRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateItemTaxesResponse"
          description: Success
      security:
        - oauth2:
            - ITEMS_WRITE
      summary: UpdateItemTaxes
      tags:
        - Catalog
      x-oauthpermissions:
        - ITEMS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/customers:
    get:
      description: |-
        Lists customer profiles associated with a Square account.

        Under normal operating conditions, newly created or updated customer profiles become available
        for the listing operation in well under 30 seconds. Occasionally, propagation of the new or updated
        profiles can take closer to one minute or longer, especially during network incidents and outages.
      operationId: ListCustomers
      parameters:
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for your original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of results to return in a single page. This limit is advisory. The response might contain more or fewer results. 
            The limit is ignored if it is less than 1 or greater than 100. The default value is 100.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: |-
            Indicates how customers should be sorted.

            The default value is `DEFAULT`.
          in: query
          name: sort_field
          required: false
          schema:
            type: string
        - description: |-
            Indicates whether customers should be sorted in ascending (`ASC`) or
            descending (`DESC`) order.

            The default value is `ASC`.
          in: query
          name: sort_order
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListCustomersResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
      summary: ListCustomers
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a new customer for a business.

        You must provide at least one of the following values in your request to this
        endpoint:

        - `given_name`
        - `family_name`
        - `company_name`
        - `email_address`
        - `phone_number`
      operationId: CreateCustomer
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateCustomerRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateCustomerResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: CreateCustomer
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/customers/groups:
    get:
      description: Retrieves the list of customer groups of a business.
      operationId: ListCustomerGroups
      parameters:
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for your original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of results to return in a single page. This limit is advisory. The response might contain more or fewer results. 
            The limit is ignored if it is less than 1 or greater than 50. The default value is 50.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: limit
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListCustomerGroupsResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
      summary: ListCustomerGroups
      tags:
        - CustomerGroups
      x-oauthpermissions:
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a new customer group for a business.

        The request must include the `name` value of the group.
      operationId: CreateCustomerGroup
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateCustomerGroupRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateCustomerGroupResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: CreateCustomerGroup
      tags:
        - CustomerGroups
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/customers/groups/{group_id}":
    delete:
      description: Deletes a customer group as identified by the `group_id` value.
      operationId: DeleteCustomerGroup
      parameters:
        - description: The ID of the customer group to delete.
          in: path
          name: group_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteCustomerGroupResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: DeleteCustomerGroup
      tags:
        - CustomerGroups
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: Retrieves a specific customer group as identified by the `group_id` value.
      operationId: RetrieveCustomerGroup
      parameters:
        - description: The ID of the customer group to retrieve.
          in: path
          name: group_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveCustomerGroupResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
      summary: RetrieveCustomerGroup
      tags:
        - CustomerGroups
      x-oauthpermissions:
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: Updates a customer group as identified by the `group_id` value.
      operationId: UpdateCustomerGroup
      parameters:
        - description: The ID of the customer group to update.
          in: path
          name: group_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateCustomerGroupRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateCustomerGroupResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
            - CUSTOMERS_READ
      summary: UpdateCustomerGroup
      tags:
        - CustomerGroups
      x-oauthpermissions:
        - CUSTOMERS_WRITE
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/customers/search:
    post:
      description: |-
        Searches the customer profiles associated with a Square account using a supported query filter.

        Calling `SearchCustomers` without any explicit query filter returns all
        customer profiles ordered alphabetically based on `given_name` and
        `family_name`.

        Under normal operating conditions, newly created or updated customer profiles become available
        for the search operation in well under 30 seconds. Occasionally, propagation of the new or updated
        profiles can take closer to one minute or longer, especially during network incidents and outages.
      operationId: SearchCustomers
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchCustomersRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchCustomersResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
      summary: SearchCustomers
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/customers/segments:
    get:
      description: Retrieves the list of customer segments of a business.
      operationId: ListCustomerSegments
      parameters:
        - description: |-
            A pagination cursor returned by previous calls to `ListCustomerSegments`.
            This cursor is used to retrieve the next set of query results.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of results to return in a single page. This limit is advisory. The response might contain more or fewer results. 
            The limit is ignored if it is less than 1 or greater than 50. The default value is 50.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: limit
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListCustomerSegmentsResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
      summary: ListCustomerSegments
      tags:
        - CustomerSegments
      x-oauthpermissions:
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/customers/segments/{segment_id}":
    get:
      description: Retrieves a specific customer segment as identified by the `segment_id` value.
      operationId: RetrieveCustomerSegment
      parameters:
        - description: The Square-issued ID of the customer segment.
          in: path
          name: segment_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveCustomerSegmentResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
      summary: RetrieveCustomerSegment
      tags:
        - CustomerSegments
      x-oauthpermissions:
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/customers/{customer_id}":
    delete:
      description: |-
        Deletes a customer profile from a business. This operation also unlinks any associated cards on file. 

        As a best practice, you should include the `version` field in the request to enable [optimistic concurrency](https://developer.squareup.com/docs/working-with-apis/optimistic-concurrency) control. The value must be set to the current version of the customer profile. 

        To delete a customer profile that was created by merging existing profiles, you must use the ID of the newly created profile.
      operationId: DeleteCustomer
      parameters:
        - description: The ID of the customer to delete.
          in: path
          name: customer_id
          required: true
          schema:
            type: string
        - description: |-
            The current version of the customer profile.

            As a best practice, you should include this parameter to enable [optimistic concurrency](https://developer.squareup.com/docs/working-with-apis/optimistic-concurrency) control.  For more information, see [Delete a customer profile](https://developer.squareup.com/docs/customers-api/use-the-api/keep-records#delete-customer-profile).
          in: query
          name: version
          required: false
          schema:
            format: int64
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteCustomerResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: DeleteCustomer
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: Returns details for a single customer.
      operationId: RetrieveCustomer
      parameters:
        - description: The ID of the customer to retrieve.
          in: path
          name: customer_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveCustomerResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
      summary: RetrieveCustomer
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Updates a customer profile. To change an attribute, specify the new value. To remove an attribute, specify the value as an empty string or empty object.

        As a best practice, you should include the `version` field in the request to enable [optimistic concurrency](https://developer.squareup.com/docs/working-with-apis/optimistic-concurrency) control. The value must be set to the current version of the customer profile.

        To update a customer profile that was created by merging existing profiles, you must use the ID of the newly created profile.

        You cannot use this endpoint to change cards on file. To make changes, use the [Cards API](https://developer.squareup.com/reference/square_2021-08-18/cards-api) or [Gift Cards API](https://developer.squareup.com/reference/square_2021-08-18/gift-cards-api).
      operationId: UpdateCustomer
      parameters:
        - description: The ID of the customer to update.
          in: path
          name: customer_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateCustomerRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateCustomerResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: UpdateCustomer
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/customers/{customer_id}/cards":
    post:
      description: |-
        Adds a card on file to an existing customer.

        As with charges, calls to `CreateCustomerCard` are idempotent. Multiple
        calls with the same card nonce return the same card record that was created
        with the provided nonce during the _first_ call.
      operationId: CreateCustomerCard
      parameters:
        - description: The Square ID of the customer profile the card is linked to.
          in: path
          name: customer_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateCustomerCardRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateCustomerCardResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: CreateCustomerCard
      tags:
        - Customers
      x-is-deprecated: true
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/customers/{customer_id}/cards/{card_id}":
    delete:
      description: Removes a card on file from a customer.
      operationId: DeleteCustomerCard
      parameters:
        - description: The ID of the customer that the card on file belongs to.
          in: path
          name: customer_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The ID of the card on file to delete.
          in: path
          name: card_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteCustomerCardResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: DeleteCustomerCard
      tags:
        - Customers
      x-is-deprecated: true
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/customers/{customer_id}/groups/{group_id}":
    delete:
      description: |-
        Removes a group membership from a customer.

        The customer is identified by the `customer_id` value
        and the customer group is identified by the `group_id` value.
      operationId: RemoveGroupFromCustomer
      parameters:
        - description: The ID of the customer to remove from the group.
          in: path
          name: customer_id
          required: true
          schema:
            type: string
        - description: The ID of the customer group to remove the customer from.
          in: path
          name: group_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RemoveGroupFromCustomerResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: RemoveGroupFromCustomer
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Adds a group membership to a customer.

        The customer is identified by the `customer_id` value
        and the customer group is identified by the `group_id` value.
      operationId: AddGroupToCustomer
      parameters:
        - description: The ID of the customer to add to a group.
          in: path
          name: customer_id
          required: true
          schema:
            type: string
        - description: The ID of the customer group to add the customer to.
          in: path
          name: group_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AddGroupToCustomerResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_WRITE
      summary: AddGroupToCustomer
      tags:
        - Customers
      x-oauthpermissions:
        - CUSTOMERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/devices/codes:
    get:
      description: Lists all DeviceCodes associated with the merchant.
      operationId: ListDeviceCodes
      parameters:
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            If specified, only returns DeviceCodes of the specified location.
            Returns DeviceCodes of all locations if empty.
          in: query
          name: location_id
          required: false
          schema:
            type: string
        - description: |-
            If specified, only returns DeviceCodes targeting the specified product type.
            Returns DeviceCodes of all product types if empty.
          in: query
          name: product_type
          required: false
          schema:
            type: string
        - description: |-
            If specified, returns DeviceCodes with the specified statuses.
            Returns DeviceCodes of status `PAIRED` and `UNPAIRED` if empty.
          in: query
          name: status
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListDeviceCodesResponse"
          description: Success
      security:
        - oauth2:
            - DEVICE_CREDENTIAL_MANAGEMENT
      summary: ListDeviceCodes
      tags:
        - Devices
      x-oauthpermissions:
        - DEVICE_CREDENTIAL_MANAGEMENT
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a DeviceCode that can be used to login to a Square Terminal device to enter the connected
        terminal mode.
      operationId: CreateDeviceCode
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateDeviceCodeRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateDeviceCodeResponse"
          description: Success
      security:
        - oauth2:
            - DEVICE_CREDENTIAL_MANAGEMENT
      summary: CreateDeviceCode
      tags:
        - Devices
      x-oauthpermissions:
        - DEVICE_CREDENTIAL_MANAGEMENT
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/devices/codes/{id}":
    get:
      description: Retrieves DeviceCode with the associated ID.
      operationId: GetDeviceCode
      parameters:
        - description: The unique identifier for the device code.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetDeviceCodeResponse"
          description: Success
      security:
        - oauth2:
            - DEVICE_CREDENTIAL_MANAGEMENT
      summary: GetDeviceCode
      tags:
        - Devices
      x-oauthpermissions:
        - DEVICE_CREDENTIAL_MANAGEMENT
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/disputes:
    get:
      description: Returns a list of disputes associated with a particular account.
      operationId: ListDisputes
      parameters:
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            The dispute states to filter the result.
            If not specified, the endpoint returns all open disputes (the dispute status is not `INQUIRY_CLOSED`, `WON`,
            or `LOST`).
          in: query
          name: states
          required: false
          schema:
            type: string
        - description: |-
            The ID of the location for which to return a list of disputes. If not specified, the endpoint returns
            all open disputes (the dispute status is not `INQUIRY_CLOSED`, `WON`, or `LOST`) associated with all locations.
          in: query
          name: location_id
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListDisputesResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_READ
      summary: ListDisputes
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/disputes/{dispute_id}":
    get:
      description: Returns details about a specific dispute.
      operationId: RetrieveDispute
      parameters:
        - description: The ID of the dispute you want more details about.
          in: path
          name: dispute_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveDisputeResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_READ
      summary: RetrieveDispute
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/disputes/{dispute_id}/accept":
    post:
      description: |-
        Accepts the loss on a dispute. Square returns the disputed amount to the cardholder and
        updates the dispute state to ACCEPTED.

        Square debits the disputed amount from the seller’s Square account. If the Square account
        does not have sufficient funds, Square debits the associated bank account.
      operationId: AcceptDispute
      parameters:
        - description: The ID of the dispute you want to accept.
          in: path
          name: dispute_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AcceptDisputeResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_WRITE
      summary: AcceptDispute
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/disputes/{dispute_id}/evidence":
    get:
      description: Returns a list of evidence associated with a dispute.
      operationId: ListDisputeEvidence
      parameters:
        - description: The ID of the dispute.
          in: path
          name: dispute_id
          required: true
          schema:
            type: string
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListDisputeEvidenceResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_READ
      summary: ListDisputeEvidence
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/disputes/{dispute_id}/evidence-text":
    post:
      description: Uploads text to use as evidence for a dispute challenge.
      operationId: CreateDisputeEvidenceText
      parameters:
        - description: The ID of the dispute you want to upload evidence for.
          in: path
          name: dispute_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateDisputeEvidenceTextRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateDisputeEvidenceTextResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_WRITE
      summary: CreateDisputeEvidenceText
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/disputes/{dispute_id}/evidence/{evidence_id}":
    delete:
      description: |-
        Removes specified evidence from a dispute.

        Square does not send the bank any evidence that is removed. Also, you cannot remove evidence after
        submitting it to the bank using [SubmitEvidence](https://developer.squareup.com/reference/square_2021-08-18/disputes-api/submit-evidence).
      operationId: DeleteDisputeEvidence
      parameters:
        - description: The ID of the dispute you want to remove evidence from.
          in: path
          name: dispute_id
          required: true
          schema:
            type: string
        - description: The ID of the evidence you want to remove.
          in: path
          name: evidence_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteDisputeEvidenceResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_WRITE
      summary: DeleteDisputeEvidence
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: |-
        Returns the evidence metadata specified by the evidence ID in the request URL path

        You must maintain a copy of the evidence you upload if you want to reference it later. You cannot
        download the evidence after you upload it.
      operationId: RetrieveDisputeEvidence
      parameters:
        - description: The ID of the dispute that you want to retrieve evidence from.
          in: path
          name: dispute_id
          required: true
          schema:
            type: string
        - description: The ID of the evidence to retrieve.
          in: path
          name: evidence_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveDisputeEvidenceResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_READ
      summary: RetrieveDisputeEvidence
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/disputes/{dispute_id}/submit-evidence":
    post:
      description: |-
        Submits evidence to the cardholder's bank.

        Before submitting evidence, Square compiles all available evidence. This includes evidence uploaded
        using the [CreateDisputeEvidenceFile](https://developer.squareup.com/reference/square_2021-08-18/disputes-api/create-dispute-evidence-file) and
        [CreateDisputeEvidenceText](https://developer.squareup.com/reference/square_2021-08-18/disputes-api/create-dispute-evidence-text) endpoints and
        evidence automatically provided by Square, when available.
      operationId: SubmitEvidence
      parameters:
        - description: The ID of the dispute that you want to submit evidence for.
          in: path
          name: dispute_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SubmitEvidenceResponse"
          description: Success
      security:
        - oauth2:
            - DISPUTES_WRITE
      summary: SubmitEvidence
      tags:
        - Disputes
      x-oauthpermissions:
        - DISPUTES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/employees:
    get:
      description: ""
      parameters:
        - description: ""
          in: query
          name: location_id
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: Specifies the EmployeeStatus to filter the employee by.
          in: query
          name: status
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: The number of employees to be returned on each page.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-deprecated: true
        - description: The token required to retrieve the specified page of results.
          in: query
          name: cursor
          required: false
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListEmployeesResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: ListEmployees
      tags:
        - Employees
      x-is-deprecated: true
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/employees/{id}":
    get:
      description: ""
      parameters:
        - description: UUID for the employee that was requested.
          in: path
          name: id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveEmployeeResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: RetrieveEmployee
      tags:
        - Employees
      x-is-deprecated: true
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/gift-cards:
    get:
      description: |-
        Lists all gift cards. You can specify optional filters to retrieve 
        a subset of the gift cards.
      operationId: ListGiftCards
      parameters:
        - description: |-
            If a type is provided, gift cards of this type are returned 
            (see [GiftCardType](https://developer.squareup.com/reference/square_2021-08-18/enums/GiftCardType)).
            If no type is provided, it returns gift cards of all types.
          in: query
          name: type
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            If the state is provided, it returns the gift cards in the specified state 
            (see [GiftCardStatus](https://developer.squareup.com/reference/square_2021-08-18/enums/GiftCardStatus)).
            Otherwise, it returns the gift cards of all states.
          in: query
          name: state
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            If a value is provided, it returns only that number of results per page.
            The maximum number of results allowed per page is 50. The default value is 30.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-beta: true
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            If a cursor is not provided, it returns the first page of the results. 
            For more information, see [Pagination](https://developer.squareup.com/docs/docs/working-with-apis/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: If a value is provided, returns only the gift cards linked to the specified customer
          in: query
          name: customer_id
          required: false
          schema:
            type: string
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListGiftCardsResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_READ
      summary: ListGiftCards
      tags:
        - GiftCards
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a digital gift card or registers a physical (plastic) gift card. You must activate the gift card before 
        it can be used for payment. For more information, see 
        [Selling gift cards](https://developer.squareup.com/docs/gift-cards/using-gift-cards-api#selling-square-gift-cards).
      operationId: CreateGiftCard
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateGiftCardRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateGiftCardResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_WRITE
      summary: CreateGiftCard
      tags:
        - GiftCards
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/gift-cards/activities:
    get:
      description: |-
        Lists gift card activities. By default, you get gift card activities for all
        gift cards in the seller's account. You can optionally specify query parameters to
        filter the list. For example, you can get a list of gift card activities for a gift card,
        for all gift cards in a specific region, or for activities within a time window.
      operationId: ListGiftCardActivities
      parameters:
        - description: |-
            If you provide a gift card ID, the endpoint returns activities that belong 
            to the specified gift card. Otherwise, the endpoint returns all gift card activities for 
            the seller.
          in: query
          name: gift_card_id
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            If you provide a type, the endpoint returns gift card activities of this type. 
            Otherwise, the endpoint returns all types of gift card activities.
          in: query
          name: type
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            If you provide a location ID, the endpoint returns gift card activities for that location. 
            Otherwise, the endpoint returns gift card activities for all locations.
          in: query
          name: location_id
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            The timestamp for the beginning of the reporting period, in RFC 3339 format.
            Inclusive. Default: The current time minus one year.
          in: query
          name: begin_time
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            The timestamp for the end of the reporting period, in RFC 3339 format.
            Inclusive. Default: The current time.
          in: query
          name: end_time
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            If you provide a limit value, the endpoint returns the specified number 
            of results (or less) per page. A maximum value is 100. The default value is 50.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-beta: true
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            If you do not provide the cursor, the call returns the first page of the results.
          in: query
          name: cursor
          required: false
          schema:
            type: string
          x-is-beta: true
        - description: |-
            The order in which the endpoint returns the activities, based on `created_at`.
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          in: query
          name: sort_order
          required: false
          schema:
            type: string
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListGiftCardActivitiesResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_READ
      summary: ListGiftCardActivities
      tags:
        - GiftCardActivities
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a gift card activity. For more information, see 
        [GiftCardActivity](https://developer.squareup.com/docs/gift-cards/using-gift-cards-api#giftcardactivity) and 
        [Using activated gift cards](https://developer.squareup.com/docs/gift-cards/using-gift-cards-api#using-activated-gift-cards).
      operationId: CreateGiftCardActivity
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateGiftCardActivityRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateGiftCardActivityResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_WRITE
      summary: CreateGiftCardActivity
      tags:
        - GiftCardActivities
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/gift-cards/from-gan:
    post:
      description: Retrieves a gift card using the gift card account number (GAN).
      operationId: RetrieveGiftCardFromGAN
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RetrieveGiftCardFromGANRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveGiftCardFromGANResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_READ
      summary: RetrieveGiftCardFromGAN
      tags:
        - GiftCards
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/gift-cards/from-nonce:
    post:
      description: Retrieves a gift card using a nonce (a secure token) that represents the gift card.
      operationId: RetrieveGiftCardFromNonce
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RetrieveGiftCardFromNonceRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveGiftCardFromNonceResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_READ
      summary: RetrieveGiftCardFromNonce
      tags:
        - GiftCards
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/gift-cards/{gift_card_id}/link-customer":
    post:
      description: Links a customer to a gift card
      operationId: LinkCustomerToGiftCard
      parameters:
        - description: The ID of the gift card to link.
          in: path
          name: gift_card_id
          required: true
          schema:
            type: string
          x-is-beta: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LinkCustomerToGiftCardRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LinkCustomerToGiftCardResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_WRITE
      summary: LinkCustomerToGiftCard
      tags:
        - GiftCards
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/gift-cards/{gift_card_id}/unlink-customer":
    post:
      description: Unlinks a customer from a gift card
      operationId: UnlinkCustomerFromGiftCard
      parameters:
        - description: ""
          in: path
          name: gift_card_id
          required: true
          schema:
            type: string
          x-is-beta: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UnlinkCustomerFromGiftCardRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UnlinkCustomerFromGiftCardResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_WRITE
      summary: UnlinkCustomerFromGiftCard
      tags:
        - GiftCards
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/gift-cards/{id}":
    get:
      description: Retrieves a gift card using its ID.
      operationId: RetrieveGiftCard
      parameters:
        - description: The ID of the gift card to retrieve.
          in: path
          name: id
          required: true
          schema:
            type: string
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveGiftCardResponse"
          description: Success
      security:
        - oauth2:
            - GIFTCARDS_READ
      summary: RetrieveGiftCard
      tags:
        - GiftCards
      x-is-beta: true
      x-oauthpermissions:
        - GIFTCARDS_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/inventory/adjustment/{adjustment_id}":
    get:
      description: |-
        Deprecated version of [RetrieveInventoryAdjustment](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/retrieve-inventory-adjustment) after the endpoint URL 
        is updated to conform to the standard convention.
      operationId: DeprecatedRetrieveInventoryAdjustment
      parameters:
        - description: ID of the [InventoryAdjustment](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryAdjustment) to retrieve.
          in: path
          name: adjustment_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveInventoryAdjustmentResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: DeprecatedRetrieveInventoryAdjustment
      tags:
        - Inventory
      x-is-deprecated: true
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/inventory/adjustments/{adjustment_id}":
    get:
      description: |-
        Returns the [InventoryAdjustment](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryAdjustment) object
        with the provided `adjustment_id`.
      operationId: RetrieveInventoryAdjustment
      parameters:
        - description: ID of the [InventoryAdjustment](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryAdjustment) to retrieve.
          in: path
          name: adjustment_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveInventoryAdjustmentResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: RetrieveInventoryAdjustment
      tags:
        - Inventory
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/inventory/batch-change:
    post:
      description: |-
        Deprecated version of [BatchChangeInventory](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/batch-change-inventory) after the endpoint URL 
        is updated to conform to the standard convention.
      operationId: DeprecatedBatchChangeInventory
      requestBody:
        $ref: "#/components/requestBodies/BatchChangeInventoryRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchChangeInventoryResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_WRITE
      summary: DeprecatedBatchChangeInventory
      tags:
        - Inventory
      x-is-deprecated: true
      x-oauthpermissions:
        - INVENTORY_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/inventory/batch-retrieve-changes:
    post:
      description: |-
        Deprecated version of [BatchRetrieveInventoryChanges](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/batch-retrieve-inventory-changes) after the endpoint URL 
        is updated to conform to the standard convention.
      operationId: DeprecatedBatchRetrieveInventoryChanges
      requestBody:
        $ref: "#/components/requestBodies/BatchRetrieveInventoryChangesRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRetrieveInventoryChangesResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: DeprecatedBatchRetrieveInventoryChanges
      tags:
        - Inventory
      x-is-deprecated: true
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/inventory/batch-retrieve-counts:
    post:
      description: |-
        Deprecated version of [BatchRetrieveInventoryCounts](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/batch-retrieve-inventory-counts) after the endpoint URL 
        is updated to conform to the standard convention.
      operationId: DeprecatedBatchRetrieveInventoryCounts
      requestBody:
        $ref: "#/components/requestBodies/BatchRetrieveInventoryCountsRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRetrieveInventoryCountsResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: DeprecatedBatchRetrieveInventoryCounts
      tags:
        - Inventory
      x-is-deprecated: true
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/inventory/changes/batch-create:
    post:
      description: |-
        Applies adjustments and counts to the provided item quantities.

        On success: returns the current calculated counts for all objects
        referenced in the request.
        On failure: returns a list of related errors.
      operationId: BatchChangeInventory
      requestBody:
        $ref: "#/components/requestBodies/BatchChangeInventoryRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchChangeInventoryResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_WRITE
      summary: BatchChangeInventory
      tags:
        - Inventory
      x-oauthpermissions:
        - INVENTORY_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/inventory/changes/batch-retrieve:
    post:
      description: |-
        Returns historical physical counts and adjustments based on the
        provided filter criteria.

        Results are paginated and sorted in ascending order according their
        `occurred_at` timestamp (oldest first).

        BatchRetrieveInventoryChanges is a catch-all query endpoint for queries
        that cannot be handled by other, simpler endpoints.
      operationId: BatchRetrieveInventoryChanges
      requestBody:
        $ref: "#/components/requestBodies/BatchRetrieveInventoryChangesRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRetrieveInventoryChangesResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: BatchRetrieveInventoryChanges
      tags:
        - Inventory
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/inventory/counts/batch-retrieve:
    post:
      description: |-
        Returns current counts for the provided
        [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s at the requested
        [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location)s.

        Results are paginated and sorted in descending order according to their
        `calculated_at` timestamp (newest first).

        When `updated_after` is specified, only counts that have changed since that
        time (based on the server timestamp for the most recent change) are
        returned. This allows clients to perform a "sync" operation, for example
        in response to receiving a Webhook notification.
      operationId: BatchRetrieveInventoryCounts
      requestBody:
        $ref: "#/components/requestBodies/BatchRetrieveInventoryCountsRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRetrieveInventoryCountsResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: BatchRetrieveInventoryCounts
      tags:
        - Inventory
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/inventory/physical-count/{physical_count_id}":
    get:
      description: |-
        Deprecated version of [RetrieveInventoryPhysicalCount](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/retrieve-inventory-physical-count) after the endpoint URL 
        is updated to conform to the standard convention.
      operationId: DeprecatedRetrieveInventoryPhysicalCount
      parameters:
        - description: |-
            ID of the
            [InventoryPhysicalCount](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryPhysicalCount) to retrieve.
          in: path
          name: physical_count_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveInventoryPhysicalCountResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: DeprecatedRetrieveInventoryPhysicalCount
      tags:
        - Inventory
      x-is-deprecated: true
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/inventory/physical-counts/{physical_count_id}":
    get:
      description: |-
        Returns the [InventoryPhysicalCount](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryPhysicalCount)
        object with the provided `physical_count_id`.
      operationId: RetrieveInventoryPhysicalCount
      parameters:
        - description: |-
            ID of the
            [InventoryPhysicalCount](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryPhysicalCount) to retrieve.
          in: path
          name: physical_count_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveInventoryPhysicalCountResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: RetrieveInventoryPhysicalCount
      tags:
        - Inventory
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/inventory/transfers/{transfer_id}":
    get:
      description: |-
        Returns the [InventoryTransfer](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryTransfer) object
        with the provided `transfer_id`.
      operationId: RetrieveInventoryTransfer
      parameters:
        - description: ID of the [InventoryTransfer](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryTransfer) to retrieve.
          in: path
          name: transfer_id
          required: true
          schema:
            type: string
          x-is-beta: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveInventoryTransferResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: RetrieveInventoryTransfer
      tags:
        - Inventory
      x-is-beta: true
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/inventory/{catalog_object_id}":
    get:
      description: |-
        Retrieves the current calculated stock count for a given
        [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) at a given set of
        [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location)s. Responses are paginated and unsorted.
        For more sophisticated queries, use a batch endpoint.
      operationId: RetrieveInventoryCount
      parameters:
        - description: ID of the [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) to retrieve.
          in: path
          name: catalog_object_id
          required: true
          schema:
            type: string
        - description: |-
            The [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) IDs to look up as a comma-separated
            list. An empty list queries all locations.
          in: query
          name: location_ids
          required: false
          schema:
            type: string
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveInventoryCountResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: RetrieveInventoryCount
      tags:
        - Inventory
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/inventory/{catalog_object_id}/changes":
    get:
      description: |-
        Returns a set of physical counts and inventory adjustments for the
        provided [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) at the requested
        [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location)s. 

        You can achieve the same result by calling [BatchRetrieveInventoryChanges](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/batch-retrieve-inventory-changes) 
        and having the `catalog_object_ids` list contain a single element of the `CatalogObject` ID.

        Results are paginated and sorted in descending order according to their
        `occurred_at` timestamp (newest first).

        There are no limits on how far back the caller can page. This endpoint can be 
        used to display recent changes for a specific item. For more
        sophisticated queries, use a batch endpoint.
      operationId: RetrieveInventoryChanges
      parameters:
        - description: ID of the [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) to retrieve.
          in: path
          name: catalog_object_id
          required: true
          schema:
            type: string
        - description: |-
            The [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) IDs to look up as a comma-separated
            list. An empty list queries all locations.
          in: query
          name: location_ids
          required: false
          schema:
            type: string
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveInventoryChangesResponse"
          description: Success
      security:
        - oauth2:
            - INVENTORY_READ
      summary: RetrieveInventoryChanges
      tags:
        - Inventory
      x-is-deprecated: true
      x-oauthpermissions:
        - INVENTORY_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/invoices:
    get:
      description: |-
        Returns a list of invoices for a given location. The response 
        is paginated. If truncated, the response includes a `cursor` that you    
        use in a subsequent request to retrieve the next set of invoices.
      operationId: ListInvoices
      parameters:
        - description: The ID of the location for which to list invoices.
          in: query
          name: location_id
          required: true
          schema:
            type: string
        - description: |-
            A pagination cursor returned by a previous call to this endpoint. 
            Provide this cursor to retrieve the next set of results for your original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of invoices to return (200 is the maximum `limit`). 
            If not provided, the server uses a default limit of 100 invoices.
          in: query
          name: limit
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListInvoicesResponse"
          description: Success
      security:
        - oauth2:
            - INVOICES_READ
      summary: ListInvoices
      tags:
        - Invoices
      x-oauthpermissions:
        - INVOICES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a draft [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) 
        for an order created using the Orders API.

        A draft invoice remains in your account and no action is taken. 
        You must publish the invoice before Square can process it (send it to the customer's email address or charge the customer’s card on file).
      operationId: CreateInvoice
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateInvoiceRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateInvoiceResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: CreateInvoice
      tags:
        - Invoices
      x-oauthpermissions:
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/invoices/search:
    post:
      description: |-
        Searches for invoices from a location specified in 
        the filter. You can optionally specify customers in the filter for whom to 
        retrieve invoices. In the current implementation, you can only specify one location and 
        optionally one customer.

        The response is paginated. If truncated, the response includes a `cursor` 
        that you use in a subsequent request to retrieve the next set of invoices.
      operationId: SearchInvoices
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchInvoicesRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchInvoicesResponse"
          description: Success
      security:
        - oauth2:
            - INVOICES_READ
      summary: SearchInvoices
      tags:
        - Invoices
      x-oauthpermissions:
        - INVOICES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/invoices/{invoice_id}":
    delete:
      description: |-
        Deletes the specified invoice. When an invoice is deleted, the 
        associated order status changes to CANCELED. You can only delete a draft 
        invoice (you cannot delete a published invoice, including one that is scheduled for processing).
      operationId: DeleteInvoice
      parameters:
        - description: The ID of the invoice to delete.
          in: path
          name: invoice_id
          required: true
          schema:
            type: string
        - description: |-
            The version of the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) to delete.
            If you do not know the version, you can call [GetInvoice](https://developer.squareup.com/reference/square_2021-08-18/invoices-api/get-invoice) or 
            [ListInvoices](https://developer.squareup.com/reference/square_2021-08-18/invoices-api/list-invoices).
          in: query
          name: version
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteInvoiceResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: DeleteInvoice
      tags:
        - Invoices
      x-oauthpermissions:
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: Retrieves an invoice by invoice ID.
      operationId: GetInvoice
      parameters:
        - description: The ID of the invoice to retrieve.
          in: path
          name: invoice_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetInvoiceResponse"
          description: Success
      security:
        - oauth2:
            - INVOICES_READ
      summary: GetInvoice
      tags:
        - Invoices
      x-oauthpermissions:
        - INVOICES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Updates an invoice by modifying fields, clearing fields, or both. For most updates, you can use a sparse 
        `Invoice` object to add fields or change values and use the `fields_to_clear` field to specify fields to clear. 
        However, some restrictions apply. For example, you cannot change the `order_id` or `location_id` field and you 
        must provide the complete `custom_fields` list to update a custom field. Published invoices have additional restrictions.
      operationId: UpdateInvoice
      parameters:
        - description: The ID of the invoice to update.
          in: path
          name: invoice_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateInvoiceRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateInvoiceResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: UpdateInvoice
      tags:
        - Invoices
      x-oauthpermissions:
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/invoices/{invoice_id}/cancel":
    post:
      description: |-
        Cancels an invoice. The seller cannot collect payments for 
        the canceled invoice.

        You cannot cancel an invoice in the `DRAFT` state or in a terminal state: `PAID`, `REFUNDED`, `CANCELED`, or `FAILED`.
      operationId: CancelInvoice
      parameters:
        - description: The ID of the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) to cancel.
          in: path
          name: invoice_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CancelInvoiceRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CancelInvoiceResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: CancelInvoice
      tags:
        - Invoices
      x-oauthpermissions:
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/invoices/{invoice_id}/publish":
    post:
      description: |-
        Publishes the specified draft invoice. 

        After an invoice is published, Square 
        follows up based on the invoice configuration. For example, Square 
        sends the invoice to the customer's email address, charges the customer's card on file, or does 
        nothing. Square also makes the invoice available on a Square-hosted invoice page. 

        The invoice `status` also changes from `DRAFT` to a status 
        based on the invoice configuration. For example, the status changes to `UNPAID` if 
        Square emails the invoice or `PARTIALLY_PAID` if Square charge a card on file for a portion of the 
        invoice amount.
      operationId: PublishInvoice
      parameters:
        - description: The ID of the invoice to publish.
          in: path
          name: invoice_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PublishInvoiceRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PublishInvoiceResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: PublishInvoice
      tags:
        - Invoices
      x-oauthpermissions:
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/labor/break-types:
    get:
      description: Returns a paginated list of `BreakType` instances for a business.
      operationId: ListBreakTypes
      parameters:
        - description: |-
            Filter the returned `BreakType` results to only those that are associated with the
            specified location.
          in: query
          name: location_id
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of `BreakType` results to return per page. The number can range between 1
            and 200. The default is 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: A pointer to the next page of `BreakType` results to fetch.
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListBreakTypesResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_SETTINGS_READ
      summary: ListBreakTypes
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_SETTINGS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a new `BreakType`.

        A `BreakType` is a template for creating `Break` objects.
        You must provide the following values in your request to this
        endpoint:

        - `location_id`
        - `break_name`
        - `expected_duration`
        - `is_paid`

        You can only have three `BreakType` instances per location. If you attempt to add a fourth
        `BreakType` for a location, an `INVALID_REQUEST_ERROR` "Exceeded limit of 3 breaks per location."
        is returned.
      operationId: CreateBreakType
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateBreakTypeRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateBreakTypeResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_SETTINGS_WRITE
      summary: CreateBreakType
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_SETTINGS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/labor/break-types/{id}":
    delete:
      description: |-
        Deletes an existing `BreakType`.

        A `BreakType` can be deleted even if it is referenced from a `Shift`.
      operationId: DeleteBreakType
      parameters:
        - description: The UUID for the `BreakType` being deleted.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteBreakTypeResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_SETTINGS_WRITE
      summary: DeleteBreakType
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_SETTINGS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: Returns a single `BreakType` specified by `id`.
      operationId: GetBreakType
      parameters:
        - description: The UUID for the `BreakType` being retrieved.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetBreakTypeResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_SETTINGS_READ
      summary: GetBreakType
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_SETTINGS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: Updates an existing `BreakType`.
      operationId: UpdateBreakType
      parameters:
        - description: " The UUID for the `BreakType` being updated."
          in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateBreakTypeRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateBreakTypeResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_SETTINGS_WRITE
            - TIMECARDS_SETTINGS_READ
      summary: UpdateBreakType
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_SETTINGS_WRITE
        - TIMECARDS_SETTINGS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/labor/employee-wages:
    get:
      description: Returns a paginated list of `EmployeeWage` instances for a business.
      operationId: ListEmployeeWages
      parameters:
        - description: Filter the returned wages to only those that are associated with the specified employee.
          in: query
          name: employee_id
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            The maximum number of `EmployeeWage` results to return per page. The number can range between
            1 and 200. The default is 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
          x-is-deprecated: true
        - description: A pointer to the next page of `EmployeeWage` results to fetch.
          in: query
          name: cursor
          required: false
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListEmployeeWagesResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: ListEmployeeWages
      tags:
        - Labor
      x-is-deprecated: true
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/labor/employee-wages/{id}":
    get:
      description: Returns a single `EmployeeWage` specified by `id`.
      operationId: GetEmployeeWage
      parameters:
        - description: The UUID for the `EmployeeWage` being retrieved.
          in: path
          name: id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetEmployeeWageResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: GetEmployeeWage
      tags:
        - Labor
      x-is-deprecated: true
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/labor/shifts:
    post:
      description: |-
        Creates a new `Shift`.

        A `Shift` represents a complete workday for a single employee.
        You must provide the following values in your request to this
        endpoint:

        - `location_id`
        - `employee_id`
        - `start_at`

        An attempt to create a new `Shift` can result in a `BAD_REQUEST` error when:
        - The `status` of the new `Shift` is `OPEN` and the employee has another
        shift with an `OPEN` status.
        - The `start_at` date is in the future.
        - The `start_at` or `end_at` date overlaps another shift for the same employee.
        - The `Break` instances are set in the request and a break `start_at`
        is before the `Shift.start_at`, a break `end_at` is after
        the `Shift.end_at`, or both.
      operationId: CreateShift
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateShiftRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateShiftResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_WRITE
      summary: CreateShift
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/labor/shifts/search:
    post:
      description: |-
        Returns a paginated list of `Shift` records for a business.
        The list to be returned can be filtered by:
        - Location IDs.
        - Employee IDs.
        - Shift status (`OPEN` and `CLOSED`).
        - Shift start.
        - Shift end.
        - Workday details.

        The list can be sorted by:
        - `start_at`.
        - `end_at`.
        - `created_at`.
        - `updated_at`.
      operationId: SearchShifts
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchShiftsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchShiftsResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_READ
      summary: SearchShifts
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/labor/shifts/{id}":
    delete:
      description: Deletes a `Shift`.
      operationId: DeleteShift
      parameters:
        - description: The UUID for the `Shift` being deleted.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteShiftResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_WRITE
      summary: DeleteShift
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: Returns a single `Shift` specified by `id`.
      operationId: GetShift
      parameters:
        - description: The UUID for the `Shift` being retrieved.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetShiftResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_READ
      summary: GetShift
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Updates an existing `Shift`.

        When adding a `Break` to a `Shift`, any earlier `Break` instances in the `Shift` have
        the `end_at` property set to a valid RFC-3339 datetime string.

        When closing a `Shift`, all `Break` instances in the `Shift` must be complete with `end_at`
        set on each `Break`.
      operationId: UpdateShift
      parameters:
        - description: The ID of the object being updated.
          in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateShiftRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateShiftResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_WRITE
            - TIMECARDS_READ
      summary: UpdateShift
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_WRITE
        - TIMECARDS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/labor/team-member-wages:
    get:
      description: Returns a paginated list of `TeamMemberWage` instances for a business.
      operationId: ListTeamMemberWages
      parameters:
        - description: |-
            Filter the returned wages to only those that are associated with the
            specified team member.
          in: query
          name: team_member_id
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of `TeamMemberWage` results to return per page. The number can range between
            1 and 200. The default is 200.
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: A pointer to the next page of `EmployeeWage` results to fetch.
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListTeamMemberWagesResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: ListTeamMemberWages
      tags:
        - Labor
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/labor/team-member-wages/{id}":
    get:
      description: Returns a single `TeamMemberWage` specified by `id `.
      operationId: GetTeamMemberWage
      parameters:
        - description: The UUID for the `TeamMemberWage` being retrieved.
          in: path
          name: id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetTeamMemberWageResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: GetTeamMemberWage
      tags:
        - Labor
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/labor/workweek-configs:
    get:
      description: Returns a list of `WorkweekConfig` instances for a business.
      operationId: ListWorkweekConfigs
      parameters:
        - description: The maximum number of `WorkweekConfigs` results to return per page.
          in: query
          name: limit
          required: false
          schema:
            type: integer
        - description: A pointer to the next page of `WorkweekConfig` results to fetch.
          in: query
          name: cursor
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListWorkweekConfigsResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_SETTINGS_READ
      summary: ListWorkweekConfigs
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_SETTINGS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/labor/workweek-configs/{id}":
    put:
      description: Updates a `WorkweekConfig`.
      operationId: UpdateWorkweekConfig
      parameters:
        - description: The UUID for the `WorkweekConfig` object being updated.
          in: path
          name: id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateWorkweekConfigRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateWorkweekConfigResponse"
          description: Success
      security:
        - oauth2:
            - TIMECARDS_SETTINGS_WRITE
            - TIMECARDS_SETTINGS_READ
      summary: UpdateWorkweekConfig
      tags:
        - Labor
      x-oauthpermissions:
        - TIMECARDS_SETTINGS_WRITE
        - TIMECARDS_SETTINGS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/locations:
    get:
      description: |-
        Provides information of all locations of a business.

        Many Square API endpoints require a `location_id` parameter.
        The `id` field of the [`Location`](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) objects returned by this
        endpoint correspond to that `location_id` parameter.
      operationId: ListLocations
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListLocationsResponse"
          description: Success
      security:
        - oauth2:
            - MERCHANT_PROFILE_READ
      summary: ListLocations
      tags:
        - Locations
      x-oauthpermissions:
        - MERCHANT_PROFILE_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: Creates a location.
      operationId: CreateLocation
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateLocationRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateLocationResponse"
          description: Success
      security:
        - oauth2:
            - MERCHANT_PROFILE_WRITE
      summary: CreateLocation
      tags:
        - Locations
      x-is-beta: true
      x-oauthpermissions:
        - MERCHANT_PROFILE_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}":
    get:
      description: |-
        Retrieves details of a location. You can specify "main" 
        as the location ID to retrieve details of the 
        main location.
      operationId: RetrieveLocation
      parameters:
        - description: |-
            The ID of the location to retrieve. If you specify the string "main",
            then the endpoint returns the main location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveLocationResponse"
          description: Success
      security:
        - oauth2:
            - MERCHANT_PROFILE_READ
      summary: RetrieveLocation
      tags:
        - Locations
      x-oauthpermissions:
        - MERCHANT_PROFILE_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: Updates a location.
      operationId: UpdateLocation
      parameters:
        - description: The ID of the location to update.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-beta: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateLocationRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateLocationResponse"
          description: Success
      security:
        - oauth2:
            - MERCHANT_PROFILE_WRITE
      summary: UpdateLocation
      tags:
        - Locations
      x-is-beta: true
      x-oauthpermissions:
        - MERCHANT_PROFILE_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}/checkouts":
    post:
      description: |-
        Links a `checkoutId` to a `checkout_page_url` that customers are
        directed to in order to provide their payment information using a
        payment processing workflow hosted on connect.squareup.com.
      operationId: CreateCheckout
      parameters:
        - description: The ID of the business location to associate the checkout with.
          in: path
          name: location_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateCheckoutRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateCheckoutResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
            - ORDERS_WRITE
      summary: CreateCheckout
      tags:
        - Checkout
      x-oauthpermissions:
        - PAYMENTS_WRITE
        - ORDERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}/refunds":
    get:
      description: |-
        Lists refunds for one of a business's locations.

        In addition to full or partial tender refunds processed through Square APIs,
        refunds may result from itemized returns or exchanges through Square's
        Point of Sale applications.

        Refunds with a `status` of `PENDING` are not currently included in this
        endpoint's response.

        Max results per [page](https://developer.squareup.com/docs/working-with-apis/pagination): 50
      parameters:
        - description: The ID of the location to list refunds for.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            The beginning of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time minus one year.
          in: query
          name: begin_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            The end of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time.
          in: query
          name: end_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            The order in which results are listed in the response (`ASC` for
            oldest first, `DESC` for newest first).

            Default value: `DESC`
          in: query
          name: sort_order
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListRefundsResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: ListRefunds
      tags:
        - Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}/transactions":
    get:
      description: |-
        Lists transactions for a particular location.

        Transactions include payment information from sales and exchanges and refund
        information from returns and exchanges.

        Max results per [page](https://developer.squareup.com/docs/working-with-apis/pagination): 50
      operationId: ListTransactions
      parameters:
        - description: The ID of the location to list transactions for.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            The beginning of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time minus one year.
          in: query
          name: begin_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            The end of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time.
          in: query
          name: end_time
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            The order in which results are listed in the response (`ASC` for
            oldest first, `DESC` for newest first).

            Default value: `DESC`
          in: query
          name: sort_order
          required: false
          schema:
            type: string
          x-is-deprecated: true
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          in: query
          name: cursor
          required: false
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListTransactionsResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: ListTransactions
      tags:
        - Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
    post:
      description: |-
        Charges a card represented by a card nonce or a customer's card on file.

        Your request to this endpoint must include _either_:

        - A value for the `card_nonce` parameter (to charge a card payment token generated
        with the Web Payments SDK)
        - Values for the `customer_card_id` and `customer_id` parameters (to charge
        a customer's card on file)

        In order for an eCommerce payment to potentially qualify for
        [Square chargeback protection](https://squareup.com/help/article/5394), you
        _must_ provide values for the following parameters in your request:

        - `buyer_email_address`
        - At least one of `billing_address` or `shipping_address`

        When this response is returned, the amount of Square's processing fee might not yet be
        calculated. To obtain the processing fee, wait about ten seconds and call
        [RetrieveTransaction](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/retrieve-transaction). See the `processing_fee_money`
        field of each [Tender included](https://developer.squareup.com/reference/square_2021-08-18/objects/Tender) in the transaction.
      operationId: Charge
      parameters:
        - description: The ID of the location to associate the created transaction with.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ChargeRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ChargeResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: Charge
      tags:
        - Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}/transactions/{transaction_id}":
    get:
      description: Retrieves details for a single transaction.
      operationId: RetrieveTransaction
      parameters:
        - description: The ID of the transaction's associated location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The ID of the transaction to retrieve.
          in: path
          name: transaction_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveTransactionResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: RetrieveTransaction
      tags:
        - Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}/transactions/{transaction_id}/capture":
    post:
      description: |-
        Captures a transaction that was created with the [Charge](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/charge)
        endpoint with a `delay_capture` value of `true`.


        See [Delayed capture transactions](https://developer.squareup.com/docs/payments/transactions/overview#delayed-capture)
        for more information.
      operationId: CaptureTransaction
      parameters:
        - description: ""
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: ""
          in: path
          name: transaction_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CaptureTransactionResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CaptureTransaction
      tags:
        - Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}/transactions/{transaction_id}/refund":
    post:
      description: |-
        Initiates a refund for a previously charged tender.

        You must issue a refund within 120 days of the associated payment. See
        [this article](https://squareup.com/help/us/en/article/5060) for more information
        on refund behavior.

        NOTE: Card-present transactions with Interac credit cards **cannot be
        refunded using the Connect API**. Interac transactions must refunded
        in-person (e.g., dipping the card using POS app).
      parameters:
        - description: The ID of the original transaction's associated location.
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: The ID of the original transaction that includes the tender to refund.
          in: path
          name: transaction_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateRefundRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateRefundResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CreateRefund
      tags:
        - Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/locations/{location_id}/transactions/{transaction_id}/void":
    post:
      description: |-
        Cancels a transaction that was created with the [Charge](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/charge)
        endpoint with a `delay_capture` value of `true`.


        See [Delayed capture transactions](https://developer.squareup.com/docs/payments/transactions/overview#delayed-capture)
        for more information.
      operationId: VoidTransaction
      parameters:
        - description: ""
          in: path
          name: location_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
        - description: ""
          in: path
          name: transaction_id
          required: true
          schema:
            type: string
          x-is-deprecated: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VoidTransactionResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: VoidTransaction
      tags:
        - Transactions
      x-is-deprecated: true
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  /v2/loyalty/accounts:
    post:
      description: Creates a loyalty account. To create a loyalty account, you must provide the `program_id` and a `mapping` with the `phone_number` of the buyer.
      operationId: CreateLoyaltyAccount
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateLoyaltyAccountRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateLoyaltyAccountResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_WRITE
      summary: CreateLoyaltyAccount
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/loyalty/accounts/search:
    post:
      description: |-
        Searches for loyalty accounts in a loyalty program.  

        You can search for a loyalty account using the phone number or customer ID associated with the account. To return all loyalty accounts, specify an empty `query` object or omit it entirely.  

        Search results are sorted by `created_at` in ascending order.
      operationId: SearchLoyaltyAccounts
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchLoyaltyAccountsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchLoyaltyAccountsResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: SearchLoyaltyAccounts
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/loyalty/accounts/{account_id}":
    get:
      description: Retrieves a loyalty account.
      operationId: RetrieveLoyaltyAccount
      parameters:
        - description: The ID of the [loyalty account](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyAccount) to retrieve.
          in: path
          name: account_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveLoyaltyAccountResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: RetrieveLoyaltyAccount
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/loyalty/accounts/{account_id}/accumulate":
    post:
      description: |-
        Adds points to a loyalty account.

        - If you are using the Orders API to manage orders, you only provide the `order_id`. 
        The endpoint reads the order to compute points to add to the buyer's account.
        - If you are not using the Orders API to manage orders, 
        you first perform a client-side computation to compute the points.  
        For spend-based and visit-based programs, you can first call 
        [CalculateLoyaltyPoints](https://developer.squareup.com/reference/square_2021-08-18/loyalty-api/calculate-loyalty-points) to compute the points  
        that you provide to this endpoint. 

        __Note:__ The country of the seller's Square account determines whether tax is included in the purchase amount when accruing points for spend-based and visit-based programs. 
        For more information, see [Availability of Square Loyalty](https://developer.squareup.com/docs/loyalty-api/overview#loyalty-market-availability).
      operationId: AccumulateLoyaltyPoints
      parameters:
        - description: The [loyalty account](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyAccount) ID to which to add the points.
          in: path
          name: account_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccumulateLoyaltyPointsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AccumulateLoyaltyPointsResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_WRITE
      summary: AccumulateLoyaltyPoints
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/loyalty/accounts/{account_id}/adjust":
    post:
      description: |-
        Adds points to or subtracts points from a buyer's account. 

        Use this endpoint only when you need to manually adjust points. Otherwise, in your application flow, you call 
        [AccumulateLoyaltyPoints](https://developer.squareup.com/reference/square_2021-08-18/loyalty-api/accumulate-loyalty-points) 
        to add points when a buyer pays for the purchase.
      operationId: AdjustLoyaltyPoints
      parameters:
        - description: The ID of the [loyalty account](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyAccount) in which to adjust the points.
          in: path
          name: account_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AdjustLoyaltyPointsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AdjustLoyaltyPointsResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_WRITE
      summary: AdjustLoyaltyPoints
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/loyalty/events/search:
    post:
      description: |-
        Searches for loyalty events.

        A Square loyalty program maintains a ledger of events that occur during the lifetime of a 
        buyer's loyalty account. Each change in the point balance 
        (for example, points earned, points redeemed, and points expired) is 
        recorded in the ledger. Using this endpoint, you can search the ledger for events.

        Search results are sorted by `created_at` in descending order.
      operationId: SearchLoyaltyEvents
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchLoyaltyEventsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchLoyaltyEventsResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: SearchLoyaltyEvents
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/loyalty/programs:
    get:
      description: |-
        Returns a list of loyalty programs in the seller's account.
        Loyalty programs define how buyers can earn points and redeem points for rewards. Square sellers can have only one loyalty program, which is created and managed from the Seller Dashboard. For more information, see [Loyalty Program Overview](https://developer.squareup.com/docs/loyalty/overview).


        Replaced with [RetrieveLoyaltyProgram](https://developer.squareup.com/reference/square_2021-08-18/loyalty-api/retrieve-loyalty-program) when used with the keyword `main`.
      operationId: ListLoyaltyPrograms
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListLoyaltyProgramsResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: ListLoyaltyPrograms
      tags:
        - Loyalty
      x-is-deprecated: true
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: DEPRECATED
      x-sq-version: 2021-08-18
  "/v2/loyalty/programs/{program_id}":
    get:
      description: |-
        Retrieves the loyalty program in a seller's account, specified by the program ID or the keyword `main`. 

        Loyalty programs define how buyers can earn points and redeem points for rewards. Square sellers can have only one loyalty program, which is created and managed from the Seller Dashboard. For more information, see [Loyalty Program Overview](https://developer.squareup.com/docs/loyalty/overview).
      operationId: RetrieveLoyaltyProgram
      parameters:
        - description: The ID of the loyalty program or the keyword `main`. Either value can be used to retrieve the single loyalty program that belongs to the seller.
          in: path
          name: program_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveLoyaltyProgramResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: RetrieveLoyaltyProgram
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/loyalty/programs/{program_id}/calculate":
    post:
      description: |-
        Calculates the points a purchase earns.

        - If you are using the Orders API to manage orders, you provide `order_id` in the request. The 
        endpoint calculates the points by reading the order.
        - If you are not using the Orders API to manage orders, you provide the purchase amount in 
        the request for the endpoint to calculate the points.

        An application might call this endpoint to show the points that a buyer can earn with the 
        specific purchase.

        __Note:__ The country of the seller's Square account determines whether tax is included in the purchase amount when accruing points for spend-based and visit-based programs. 
        For more information, see [Availability of Square Loyalty](https://developer.squareup.com/docs/loyalty-api/overview#loyalty-market-availability).
      operationId: CalculateLoyaltyPoints
      parameters:
        - description: The [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram) ID, which defines the rules for accruing points.
          in: path
          name: program_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CalculateLoyaltyPointsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CalculateLoyaltyPointsResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: CalculateLoyaltyPoints
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/loyalty/rewards:
    post:
      description: |-
        Creates a loyalty reward. In the process, the endpoint does following:

        - Uses the `reward_tier_id` in the request to determine the number of points 
        to lock for this reward. 
        - If the request includes `order_id`, it adds the reward and related discount to the order. 

        After a reward is created, the points are locked and 
        not available for the buyer to redeem another reward.
      operationId: CreateLoyaltyReward
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateLoyaltyRewardRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateLoyaltyRewardResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_WRITE
      summary: CreateLoyaltyReward
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/loyalty/rewards/search:
    post:
      description: |-
        Searches for loyalty rewards in a loyalty account. 

        In the current implementation, the endpoint supports search by the reward `status`.

        If you know a reward ID, use the 
        [RetrieveLoyaltyReward](https://developer.squareup.com/reference/square_2021-08-18/loyalty-api/retrieve-loyalty-reward) endpoint.

        Search results are sorted by `updated_at` in descending order.
      operationId: SearchLoyaltyRewards
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchLoyaltyRewardsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchLoyaltyRewardsResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: SearchLoyaltyRewards
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/loyalty/rewards/{reward_id}":
    delete:
      description: |-
        Deletes a loyalty reward by doing the following:

        - Returns the loyalty points back to the loyalty account.
        - If an order ID was specified when the reward was created 
        (see [CreateLoyaltyReward](https://developer.squareup.com/reference/square_2021-08-18/loyalty-api/create-loyalty-reward)), 
        it updates the order by removing the reward and related 
        discounts.

        You cannot delete a reward that has reached the terminal state (REDEEMED).
      operationId: DeleteLoyaltyReward
      parameters:
        - description: The ID of the [loyalty reward](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyReward) to delete.
          in: path
          name: reward_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteLoyaltyRewardResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_WRITE
      summary: DeleteLoyaltyReward
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: Retrieves a loyalty reward.
      operationId: RetrieveLoyaltyReward
      parameters:
        - description: The ID of the [loyalty reward](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyReward) to retrieve.
          in: path
          name: reward_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveLoyaltyRewardResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_READ
      summary: RetrieveLoyaltyReward
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/loyalty/rewards/{reward_id}/redeem":
    post:
      description: |-
        Redeems a loyalty reward.

        The endpoint sets the reward to the `REDEEMED` terminal state. 

        If you are using your own order processing system (not using the 
        Orders API), you call this endpoint after the buyer paid for the 
        purchase.

        After the reward reaches the terminal state, it cannot be deleted. 
        In other words, points used for the reward cannot be returned 
        to the account.
      operationId: RedeemLoyaltyReward
      parameters:
        - description: The ID of the [loyalty reward](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyReward) to redeem.
          in: path
          name: reward_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RedeemLoyaltyRewardRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RedeemLoyaltyRewardResponse"
          description: Success
      security:
        - oauth2:
            - LOYALTY_WRITE
      summary: RedeemLoyaltyReward
      tags:
        - Loyalty
      x-oauthpermissions:
        - LOYALTY_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/merchants:
    get:
      description: |-
        Returns `Merchant` information for a given access token.

        If you don't know a `Merchant` ID, you can use this endpoint to retrieve the merchant ID for an access token.
        You can specify your personal access token to get your own merchant information or specify an OAuth token
        to get the information for the  merchant that granted you access.

        If you know the merchant ID, you can also use the [RetrieveMerchant](https://developer.squareup.com/reference/square_2021-08-18/merchants-api/retrieve-merchant)
        endpoint to get the merchant information.
      operationId: ListMerchants
      parameters:
        - description: The cursor generated by the previous response.
          in: query
          name: cursor
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListMerchantsResponse"
          description: Success
      security:
        - oauth2:
            - MERCHANT_PROFILE_READ
      summary: ListMerchants
      tags:
        - Merchants
      x-oauthpermissions:
        - MERCHANT_PROFILE_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/merchants/{merchant_id}":
    get:
      description: Retrieve a `Merchant` object for the given `merchant_id`.
      operationId: RetrieveMerchant
      parameters:
        - description: |-
            The ID of the merchant to retrieve. If the string "me" is supplied as the ID,
            then retrieve the merchant that is currently accessible to this call.
          in: path
          name: merchant_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveMerchantResponse"
          description: Success
      security:
        - oauth2:
            - MERCHANT_PROFILE_READ
      summary: RetrieveMerchant
      tags:
        - Merchants
      x-oauthpermissions:
        - MERCHANT_PROFILE_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/orders:
    post:
      description: |-
        Creates a new [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) that can include information about products for
        purchase and settings to apply to the purchase.

        To pay for a created order, see 
        [Pay for Orders](https://developer.squareup.com/docs/orders-api/pay-for-orders).

        You can modify open orders using the [UpdateOrder](https://developer.squareup.com/reference/square_2021-08-18/orders-api/update-order) endpoint.
      operationId: CreateOrder
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateOrderRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateOrderResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
      summary: CreateOrder
      tags:
        - Orders
      x-oauthpermissions:
        - ORDERS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/orders/batch-retrieve:
    post:
      description: |-
        Retrieves a set of [orders](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) by their IDs.

        If a given order ID does not exist, the ID is ignored instead of generating an error.
      operationId: BatchRetrieveOrders
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BatchRetrieveOrdersRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BatchRetrieveOrdersResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_READ
      summary: BatchRetrieveOrders
      tags:
        - Orders
      x-oauthpermissions:
        - ORDERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/orders/calculate:
    post:
      description: Enables applications to preview order pricing without creating an order.
      operationId: CalculateOrder
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CalculateOrderRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CalculateOrderResponse"
          description: Success
      security:
        - oauth2: []
      summary: CalculateOrder
      tags:
        - Orders
      x-is-beta: true
      x-oauthpermissions: []
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/orders/search:
    post:
      description: |-
        Search all orders for one or more locations. Orders include all sales,
        returns, and exchanges regardless of how or when they entered the Square
        ecosystem (such as Point of Sale, Invoices, and Connect APIs).

        `SearchOrders` requests need to specify which locations to search and define a
        [SearchOrdersQuery](https://developer.squareup.com/reference/square_2021-08-18/objects/SearchOrdersQuery) object that controls
        how to sort or filter the results. Your `SearchOrdersQuery` can:

          Set filter criteria.
          Set the sort order.
          Determine whether to return results as complete `Order` objects or as
        [OrderEntry](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderEntry) objects.

        Note that details for orders processed with Square Point of Sale while in
        offline mode might not be transmitted to Square for up to 72 hours. Offline
        orders have a `created_at` value that reflects the time the order was created,
        not the time it was subsequently transmitted to Square.
      operationId: SearchOrders
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchOrdersRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchOrdersResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_READ
      summary: SearchOrders
      tags:
        - Orders
      x-oauthpermissions:
        - ORDERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/orders/{order_id}":
    get:
      description: Retrieves an [Order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) by ID.
      parameters:
        - description: The ID of the order to retrieve.
          in: path
          name: order_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveOrderResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_READ
      summary: RetrieveOrder
      tags:
        - Orders
      x-oauthpermissions:
        - ORDERS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Updates an open [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) by adding, replacing, or deleting
        fields. Orders with a `COMPLETED` or `CANCELED` state cannot be updated.

        An `UpdateOrder` request requires the following:

        - The `order_id` in the endpoint path, identifying the order to update.
        - The latest `version` of the order to update.
        - The [sparse order](https://developer.squareup.com/docs/orders-api/manage-orders#sparse-order-objects)
        containing only the fields to update and the version to which the update is
        being applied.
        - If deleting fields, the [dot notation paths](https://developer.squareup.com/docs/orders-api/manage-orders#on-dot-notation)
        identifying the fields to clear.

        To pay for an order, see 
        [Pay for Orders](https://developer.squareup.com/docs/orders-api/pay-for-orders).
      parameters:
        - description: The ID of the order to update.
          in: path
          name: order_id
          required: true
          schema:
            type: string
          x-is-beta: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateOrderRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateOrderResponse"
          description: Success
      security:
        - oauth2:
            - ORDERS_WRITE
      summary: UpdateOrder
      tags:
        - Orders
      x-is-beta: true
      x-oauthpermissions:
        - ORDERS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  "/v2/orders/{order_id}/pay":
    post:
      description: |-
        Pay for an [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) using one or more approved [payments](https://developer.squareup.com/reference/square_2021-08-18/objects/Payment)
        or settle an order with a total of `0`.

        The total of the `payment_ids` listed in the request must be equal to the order
        total. Orders with a total amount of `0` can be marked as paid by specifying an empty
        array of `payment_ids` in the request.

        To be used with `PayOrder`, a payment must:

        - Reference the order by specifying the `order_id` when [creating the payment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/create-payment).
        Any approved payments that reference the same `order_id` not specified in the
        `payment_ids` is canceled.
        - Be approved with [delayed capture](https://developer.squareup.com/docs/payments-api/take-payments#delayed-capture).
        Using a delayed capture payment with `PayOrder` completes the approved payment.
      operationId: PayOrder
      parameters:
        - description: The ID of the order being paid.
          in: path
          name: order_id
          required: true
          schema:
            type: string
          x-is-beta: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PayOrderRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PayOrderResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
            - ORDERS_WRITE
      summary: PayOrder
      tags:
        - Orders
      x-is-beta: true
      x-oauthpermissions:
        - PAYMENTS_WRITE
        - ORDERS_WRITE
      x-release-status: BETA
      x-sq-version: 2021-08-18
  /v2/payments:
    get:
      description: |-
        Retrieves a list of payments taken by the account making the request.

        Results are eventually consistent, and new payments or changes to payments might take several
        seconds to appear.

        The maximum results per page is 100.
      parameters:
        - description: |-
            The timestamp for the beginning of the reporting period, in RFC 3339 format.
            Inclusive. Default: The current time minus one year.
          in: query
          name: begin_time
          required: false
          schema:
            type: string
        - description: |-
            The timestamp for the end of the reporting period, in RFC 3339 format.

            Default: The current time.
          in: query
          name: end_time
          required: false
          schema:
            type: string
        - description: |-
            The order in which results are listed:
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          in: query
          name: sort_order
          required: false
          schema:
            type: string
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            Limit results to the location supplied. By default, results are returned
            for the default (main) location associated with the seller.
          in: query
          name: location_id
          required: false
          schema:
            type: string
        - description: The exact amount in the `total_money` for a payment.
          in: query
          name: total
          required: false
          schema:
            format: int64
            type: integer
        - description: The last four digits of a payment card.
          in: query
          name: last_4
          required: false
          schema:
            type: string
        - description: The brand of the payment card (for example, VISA).
          in: query
          name: card_brand
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of results to be returned in a single page.
            It is possible to receive fewer results than the specified limit on a given page.

            The default value of 100 is also the maximum allowed value. If the provided value is 
            greater than 100, it is ignored and the default value is used instead.

            Default: `100`
          in: query
          name: limit
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListPaymentsResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: ListPayments
      tags:
        - Payments
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Creates a payment using the provided source. You can use this endpoint 
        to charge a card (credit/debit card or    
        Square gift card) or record a payment that the seller received outside of Square 
        (cash payment from a buyer or a payment that an external entity 
        processed on behalf of the seller).

        The endpoint creates a 
        `Payment` object and returns it in the response.
      operationId: CreatePayment
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreatePaymentRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreatePaymentResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CreatePayment
      tags:
        - Payments
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/payments/cancel:
    post:
      description: |-
        Cancels (voids) a payment identified by the idempotency key that is specified in the
        request.

        Use this method when the status of a `CreatePayment` request is unknown (for example, after you send a
        `CreatePayment` request, a network error occurs and you do not get a response). In this case, you can
        direct Square to cancel the payment using this endpoint. In the request, you provide the same
        idempotency key that you provided in your `CreatePayment` request that you want to cancel. After
        canceling the payment, you can submit your `CreatePayment` request again.

        Note that if no payment with the specified idempotency key is found, no action is taken and the endpoint
        returns successfully.
      operationId: CancelPaymentByIdempotencyKey
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CancelPaymentByIdempotencyKeyRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CancelPaymentByIdempotencyKeyResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CancelPaymentByIdempotencyKey
      tags:
        - Payments
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/payments/{payment_id}":
    get:
      description: Retrieves details for a specific payment.
      operationId: GetPayment
      parameters:
        - description: A unique ID for the desired payment.
          in: path
          name: payment_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetPaymentResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: GetPayment
      tags:
        - Payments
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Updates a payment with the APPROVED status.
        You can update the `amount_money` and `tip_money` using this endpoint.
      operationId: UpdatePayment
      parameters:
        - description: The ID of the payment to update.
          in: path
          name: payment_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdatePaymentRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdatePaymentResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: UpdatePayment
      tags:
        - Payments
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/payments/{payment_id}/cancel":
    post:
      description: |-
        Cancels (voids) a payment. You can use this endpoint to cancel a payment with 
        the APPROVED `status`.
      operationId: CancelPayment
      parameters:
        - description: The ID of the payment to cancel.
          in: path
          name: payment_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CancelPaymentResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CancelPayment
      tags:
        - Payments
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/payments/{payment_id}/complete":
    post:
      description: |-
        Completes (captures) a payment.
        By default, payments are set to complete immediately after they are created.

        You can use this endpoint to complete a payment with the APPROVED `status`.
      operationId: CompletePayment
      parameters:
        - description: The unique ID identifying the payment to be completed.
          in: path
          name: payment_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CompletePaymentResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CompletePayment
      tags:
        - Payments
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/refunds:
    get:
      description: |-
        Retrieves a list of refunds for the account making the request.

        Results are eventually consistent, and new refunds or changes to refunds might take several
        seconds to appear.

        The maximum results per page is 100.
      operationId: ListPaymentRefunds
      parameters:
        - description: |-
            The timestamp for the beginning of the requested reporting period, in RFC 3339 format.

            Default: The current time minus one year.
          in: query
          name: begin_time
          required: false
          schema:
            type: string
        - description: |-
            The timestamp for the end of the requested reporting period, in RFC 3339 format.

            Default: The current time.
          in: query
          name: end_time
          required: false
          schema:
            type: string
        - description: |-
            The order in which results are listed:
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          in: query
          name: sort_order
          required: false
          schema:
            type: string
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            Limit results to the location supplied. By default, results are returned
            for all locations associated with the seller.
          in: query
          name: location_id
          required: false
          schema:
            type: string
        - description: |-
            If provided, only refunds with the given status are returned.
            For a list of refund status values, see [PaymentRefund](https://developer.squareup.com/reference/square_2021-08-18/objects/PaymentRefund).

            Default: If omitted, refunds are returned regardless of their status.
          in: query
          name: status
          required: false
          schema:
            type: string
        - description: |-
            If provided, only refunds with the given source type are returned.
            - `CARD` - List refunds only for payments where `CARD` was specified as the payment
            source.

            Default: If omitted, refunds are returned regardless of the source type.
          in: query
          name: source_type
          required: false
          schema:
            type: string
        - description: |-
            The maximum number of results to be returned in a single page.

            It is possible to receive fewer results than the specified limit on a given page.

            If the supplied value is greater than 100, no more than 100 results are returned.

            Default: 100
          in: query
          name: limit
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListPaymentRefundsResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: ListPaymentRefunds
      tags:
        - Refunds
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Refunds a payment. You can refund the entire payment amount or a
        portion of it. You can use this endpoint to refund a card payment or record a 
        refund of a cash or external payment. For more information, see
        [Refund Payment](https://developer.squareup.com/docs/payments-api/refund-payments).
      operationId: RefundPayment
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RefundPaymentRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RefundPaymentResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: RefundPayment
      tags:
        - Refunds
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/refunds/{refund_id}":
    get:
      description: Retrieves a specific refund using the `refund_id`.
      operationId: GetPaymentRefund
      parameters:
        - description: The unique ID for the desired `PaymentRefund`.
          in: path
          name: refund_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetPaymentRefundResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: GetPaymentRefund
      tags:
        - Refunds
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/sites:
    get:
      description: |-
        Lists the Square Online sites that belong to a seller.


        __Note:__ Square Online APIs are publicly available as part of an early access program. For more information, see [Early access program for Square Online APIs](https://developer.squareup.com/docs/online-api#early-access-program-for-square-online-apis).
      operationId: ListSites
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListSitesResponse"
          description: Success
      security:
        - oauth2:
            - ONLINE_STORE_SITE_READ
      summary: ListSites
      tags:
        - Sites
      x-oauthpermissions:
        - ONLINE_STORE_SITE_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/sites/{site_id}/snippet":
    delete:
      description: |-
        Removes your snippet from a Square Online site.

        You can call [ListSites](https://developer.squareup.com/reference/square_2021-08-18/sites-api/list-sites) to get the IDs of the sites that belong to a seller.


        __Note:__ Square Online APIs are publicly available as part of an early access program. For more information, see [Early access program for Square Online APIs](https://developer.squareup.com/docs/online-api#early-access-program-for-square-online-apis).
      operationId: DeleteSnippet
      parameters:
        - description: The ID of the site that contains the snippet.
          in: path
          name: site_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DeleteSnippetResponse"
          description: Success
      security:
        - oauth2:
            - ONLINE_STORE_SNIPPETS_WRITE
      summary: DeleteSnippet
      tags:
        - Snippets
      x-oauthpermissions:
        - ONLINE_STORE_SNIPPETS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    get:
      description: |-
        Retrieves your snippet from a Square Online site. A site can contain snippets from multiple snippet applications, but you can retrieve only the snippet that was added by your application.

        You can call [ListSites](https://developer.squareup.com/reference/square_2021-08-18/sites-api/list-sites) to get the IDs of the sites that belong to a seller.


        __Note:__ Square Online APIs are publicly available as part of an early access program. For more information, see [Early access program for Square Online APIs](https://developer.squareup.com/docs/online-api#early-access-program-for-square-online-apis).
      operationId: RetrieveSnippet
      parameters:
        - description: The ID of the site that contains the snippet.
          in: path
          name: site_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveSnippetResponse"
          description: Success
      security:
        - oauth2:
            - ONLINE_STORE_SNIPPETS_READ
      summary: RetrieveSnippet
      tags:
        - Snippets
      x-oauthpermissions:
        - ONLINE_STORE_SNIPPETS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    post:
      description: |-
        Adds a snippet to a Square Online site or updates the existing snippet on the site. 
        The snippet code is appended to the end of the `head` element on every page of the site, except checkout pages. A snippet application can add one snippet to a given site. 

        You can call [ListSites](https://developer.squareup.com/reference/square_2021-08-18/sites-api/list-sites) to get the IDs of the sites that belong to a seller.


        __Note:__ Square Online APIs are publicly available as part of an early access program. For more information, see [Early access program for Square Online APIs](https://developer.squareup.com/docs/online-api#early-access-program-for-square-online-apis).
      operationId: UpsertSnippet
      parameters:
        - description: The ID of the site where you want to add or update the snippet.
          in: path
          name: site_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpsertSnippetRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpsertSnippetResponse"
          description: Success
      security:
        - oauth2:
            - ONLINE_STORE_SNIPPETS_WRITE
      summary: UpsertSnippet
      tags:
        - Snippets
      x-oauthpermissions:
        - ONLINE_STORE_SNIPPETS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/subscriptions:
    post:
      description: |-
        Creates a subscription for a customer to a subscription plan.

        If you provide a card on file in the request, Square charges the card for
        the subscription. Otherwise, Square bills an invoice to the customer's email
        address. The subscription starts immediately, unless the request includes
        the optional `start_date`. Each individual subscription is associated with a particular location.
      operationId: CreateSubscription
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateSubscriptionRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateSubscriptionResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
            - PAYMENTS_WRITE
            - SUBSCRIPTIONS_WRITE
            - ITEMS_READ
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: CreateSubscription
      tags:
        - Subscriptions
      x-oauthpermissions:
        - CUSTOMERS_READ
        - PAYMENTS_WRITE
        - SUBSCRIPTIONS_WRITE
        - ITEMS_READ
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/subscriptions/search:
    post:
      description: |-
        Searches for subscriptions.
        Results are ordered chronologically by subscription creation date. If
        the request specifies more than one location ID,
        the endpoint orders the result
        by location ID, and then by creation date within each location. If no locations are given
        in the query, all locations are searched.

        You can also optionally specify `customer_ids` to search by customer.
        If left unset, all customers
        associated with the specified locations are returned.
        If the request specifies customer IDs, the endpoint orders results
        first by location, within location by customer ID, and within
        customer by subscription creation date.

        For more information, see
        [Retrieve subscriptions](https://developer.squareup.com/docs/subscriptions-api/overview#retrieve-subscriptions).
      operationId: SearchSubscriptions
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchSubscriptionsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchSubscriptionsResponse"
          description: Success
      security:
        - oauth2:
            - SUBSCRIPTIONS_READ
      summary: SearchSubscriptions
      tags:
        - Subscriptions
      x-oauthpermissions:
        - SUBSCRIPTIONS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/subscriptions/{subscription_id}":
    get:
      description: Retrieves a subscription.
      operationId: RetrieveSubscription
      parameters:
        - description: The ID of the subscription to retrieve.
          in: path
          name: subscription_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveSubscriptionResponse"
          description: Success
      security:
        - oauth2:
            - SUBSCRIPTIONS_READ
      summary: RetrieveSubscription
      tags:
        - Subscriptions
      x-oauthpermissions:
        - SUBSCRIPTIONS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Updates a subscription. You can set, modify, and clear the
        `subscription` field values.
      operationId: UpdateSubscription
      parameters:
        - description: The ID for the subscription to update.
          in: path
          name: subscription_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateSubscriptionRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateSubscriptionResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
            - PAYMENTS_WRITE
            - SUBSCRIPTIONS_WRITE
            - ITEMS_READ
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: UpdateSubscription
      tags:
        - Subscriptions
      x-oauthpermissions:
        - CUSTOMERS_READ
        - PAYMENTS_WRITE
        - SUBSCRIPTIONS_WRITE
        - ITEMS_READ
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/subscriptions/{subscription_id}/cancel":
    post:
      description: |-
        Sets the `canceled_date` field to the end of the active billing period.
        After this date, the status changes from ACTIVE to CANCELED.
      operationId: CancelSubscription
      parameters:
        - description: The ID of the subscription to cancel.
          in: path
          name: subscription_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CancelSubscriptionResponse"
          description: Success
      security:
        - oauth2:
            - SUBSCRIPTIONS_WRITE
      summary: CancelSubscription
      tags:
        - Subscriptions
      x-oauthpermissions:
        - SUBSCRIPTIONS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/subscriptions/{subscription_id}/events":
    get:
      description: |-
        Lists all events for a specific subscription.
        In the current implementation, only `START_SUBSCRIPTION` and `STOP_SUBSCRIPTION` (when the subscription was canceled) events are returned.
      operationId: ListSubscriptionEvents
      parameters:
        - description: The ID of the subscription to retrieve the events for.
          in: path
          name: subscription_id
          required: true
          schema:
            type: string
        - description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          in: query
          name: cursor
          required: false
          schema:
            type: string
        - description: |-
            The upper limit on the number of subscription events to return
            in the response.

            Default: `200`
          in: query
          name: limit
          required: false
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ListSubscriptionEventsResponse"
          description: Success
      security:
        - oauth2:
            - SUBSCRIPTIONS_READ
      summary: ListSubscriptionEvents
      tags:
        - Subscriptions
      x-oauthpermissions:
        - SUBSCRIPTIONS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/subscriptions/{subscription_id}/resume":
    post:
      description: Resumes a deactivated subscription.
      operationId: ResumeSubscription
      parameters:
        - description: The ID of the subscription to resume.
          in: path
          name: subscription_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResumeSubscriptionResponse"
          description: Success
      security:
        - oauth2:
            - CUSTOMERS_READ
            - PAYMENTS_WRITE
            - SUBSCRIPTIONS_WRITE
            - ITEMS_READ
            - ORDERS_WRITE
            - INVOICES_WRITE
      summary: ResumeSubscription
      tags:
        - Subscriptions
      x-oauthpermissions:
        - CUSTOMERS_READ
        - PAYMENTS_WRITE
        - SUBSCRIPTIONS_WRITE
        - ITEMS_READ
        - ORDERS_WRITE
        - INVOICES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/team-members:
    post:
      description: |-
        Creates a single `TeamMember` object. The `TeamMember` object is returned on successful creates.
        You must provide the following values in your request to this endpoint:
        - `given_name`
        - `family_name`

        Learn about [Troubleshooting the Team API](https://developer.squareup.com/docs/team/troubleshooting#createteammember).
      operationId: CreateTeamMember
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateTeamMemberRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateTeamMemberResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: CreateTeamMember
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/team-members/bulk-create:
    post:
      description: |-
        Creates multiple `TeamMember` objects. The created `TeamMember` objects are returned on successful creates.
        This process is non-transactional and processes as much of the request as possible. If one of the creates in
        the request cannot be successfully processed, the request is not marked as failed, but the body of the response
        contains explicit error information for the failed create.

        Learn about [Troubleshooting the Team API](https://developer.squareup.com/docs/team/troubleshooting#bulk-create-team-members).
      operationId: BulkCreateTeamMembers
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BulkCreateTeamMembersRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BulkCreateTeamMembersResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: BulkCreateTeamMembers
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/team-members/bulk-update:
    post:
      description: |-
        Updates multiple `TeamMember` objects. The updated `TeamMember` objects are returned on successful updates.
        This process is non-transactional and processes as much of the request as possible. If one of the updates in
        the request cannot be successfully processed, the request is not marked as failed, but the body of the response
        contains explicit error information for the failed update.
        Learn about [Troubleshooting the Team API](https://developer.squareup.com/docs/team/troubleshooting#bulk-update-team-members).
      operationId: BulkUpdateTeamMembers
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BulkUpdateTeamMembersRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/BulkUpdateTeamMembersResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: BulkUpdateTeamMembers
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/team-members/search:
    post:
      description: |-
        Returns a paginated list of `TeamMember` objects for a business.
        The list can be filtered by the following:
        - location IDs
        - `status`
      operationId: SearchTeamMembers
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchTeamMembersRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchTeamMembersResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: SearchTeamMembers
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/team-members/{team_member_id}":
    get:
      description: |-
        Retrieves a `TeamMember` object for the given `TeamMember.id`.
        Learn about [Troubleshooting the Team API](https://developer.squareup.com/docs/team/troubleshooting#retrieve-a-team-member).
      operationId: RetrieveTeamMember
      parameters:
        - description: The ID of the team member to retrieve.
          in: path
          name: team_member_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveTeamMemberResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: RetrieveTeamMember
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Updates a single `TeamMember` object. The `TeamMember` object is returned on successful updates.
        Learn about [Troubleshooting the Team API](https://developer.squareup.com/docs/team/troubleshooting#update-a-team-member).
      operationId: UpdateTeamMember
      parameters:
        - description: The ID of the team member to update.
          in: path
          name: team_member_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateTeamMemberRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateTeamMemberResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: UpdateTeamMember
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/team-members/{team_member_id}/wage-setting":
    get:
      description: |-
        Retrieves a `WageSetting` object for a team member specified
        by `TeamMember.id`.
        Learn about [Troubleshooting the Team API](https://developer.squareup.com/docs/team/troubleshooting#retrievewagesetting).
      operationId: RetrieveWageSetting
      parameters:
        - description: The ID of the team member for which to retrieve the wage setting.
          in: path
          name: team_member_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RetrieveWageSettingResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_READ
      summary: RetrieveWageSetting
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
    put:
      description: |-
        Creates or updates a `WageSetting` object. The object is created if a
        `WageSetting` with the specified `team_member_id` does not exist. Otherwise,
        it fully replaces the `WageSetting` object for the team member.
        The `WageSetting` is returned on a successful update.
        Learn about [Troubleshooting the Team API](https://developer.squareup.com/docs/team/troubleshooting#create-or-update-a-wage-setting).
      operationId: UpdateWageSetting
      parameters:
        - description: The ID of the team member for which to update the `WageSetting` object.
          in: path
          name: team_member_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UpdateWageSettingRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UpdateWageSettingResponse"
          description: Success
      security:
        - oauth2:
            - EMPLOYEES_WRITE
      summary: UpdateWageSetting
      tags:
        - Team
      x-oauthpermissions:
        - EMPLOYEES_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/terminals/checkouts:
    post:
      description: |-
        Creates a Terminal checkout request and sends it to the specified device to take a payment
        for the requested amount.
      operationId: CreateTerminalCheckout
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateTerminalCheckoutRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateTerminalCheckoutResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CreateTerminalCheckout
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/terminals/checkouts/search:
    post:
      description: Retrieves a filtered list of Terminal checkout requests created by the account making the request.
      operationId: SearchTerminalCheckouts
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchTerminalCheckoutsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchTerminalCheckoutsResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: SearchTerminalCheckouts
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/terminals/checkouts/{checkout_id}":
    get:
      description: Retrieves a Terminal checkout request by `checkout_id`.
      operationId: GetTerminalCheckout
      parameters:
        - description: The unique ID for the desired `TerminalCheckout`.
          in: path
          name: checkout_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetTerminalCheckoutResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: GetTerminalCheckout
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/terminals/checkouts/{checkout_id}/cancel":
    post:
      description: Cancels a Terminal checkout request if the status of the request permits it.
      operationId: CancelTerminalCheckout
      parameters:
        - description: The unique ID for the desired `TerminalCheckout`.
          in: path
          name: checkout_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CancelTerminalCheckoutResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CancelTerminalCheckout
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/terminals/refunds:
    post:
      description: Creates a request to refund an Interac payment completed on a Square Terminal.
      operationId: CreateTerminalRefund
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateTerminalRefundRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateTerminalRefundResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CreateTerminalRefund
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  /v2/terminals/refunds/search:
    post:
      description: Retrieves a filtered list of Interac Terminal refund requests created by the seller making the request.
      operationId: SearchTerminalRefunds
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SearchTerminalRefundsRequest"
        description: |-
          An object containing the fields to POST for the request.

          See the corresponding object definition for field details.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SearchTerminalRefundsResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: SearchTerminalRefunds
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/terminals/refunds/{terminal_refund_id}":
    get:
      description: Retrieves an Interac Terminal refund object by ID.
      operationId: GetTerminalRefund
      parameters:
        - description: The unique ID for the desired `TerminalRefund`.
          in: path
          name: terminal_refund_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GetTerminalRefundResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_READ
      summary: GetTerminalRefund
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_READ
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
  "/v2/terminals/refunds/{terminal_refund_id}/cancel":
    post:
      description: Cancels an Interac Terminal refund request by refund request ID if the status of the request permits it.
      operationId: CancelTerminalRefund
      parameters:
        - description: The unique ID for the desired `TerminalRefund`.
          in: path
          name: terminal_refund_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CancelTerminalRefundResponse"
          description: Success
      security:
        - oauth2:
            - PAYMENTS_WRITE
      summary: CancelTerminalRefund
      tags:
        - Terminal
      x-oauthpermissions:
        - PAYMENTS_WRITE
      x-release-status: PUBLIC
      x-sq-version: 2021-08-18
components:
  requestBodies:
    BatchChangeInventoryRequest:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/BatchChangeInventoryRequest"
      description: |-
        An object containing the fields to POST for the request.

        See the corresponding object definition for field details.
      required: true
    BatchRetrieveInventoryChangesRequest:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/BatchRetrieveInventoryChangesRequest"
      description: |-
        An object containing the fields to POST for the request.

        See the corresponding object definition for field details.
      required: true
    BatchRetrieveInventoryCountsRequest:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/BatchRetrieveInventoryCountsRequest"
      description: |-
        An object containing the fields to POST for the request.

        See the corresponding object definition for field details.
      required: true
    V1Employee:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/V1Employee"
      description: |-
        An object containing the fields to POST for the request.

        See the corresponding object definition for field details.
      required: true
  schemas:
    ACHDetails:
      description: ACH-specific details about `BANK_ACCOUNT` type payments with the `transfer_type` of `ACH`.
      properties:
        account_number_suffix:
          description: The last few digits of the bank account number.
          maxLength: 4
          minLength: 1
          type: string
        account_type:
          description: |-
            The type of the bank account performing the transfer. The account type can be `CHECKING`,
            `SAVINGS`, or `UNKNOWN`.
          maxLength: 50
          type: string
        routing_number:
          description: The routing number for the bank account.
          maxLength: 50
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    AcceptDisputeRequest:
      description: Defines the request parameters for the `AcceptDispute` endpoint.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    AcceptDisputeResponse:
      description: Defines the fields in an `AcceptDispute` response.
      example:
        dispute:
          amount_money:
            amount: 2000
            currency: USD
          brand_dispute_id: "100000282394"
          card_brand: VISA
          created_at: 2018-10-18T15:59:13.613Z
          disputed_payments:
            - payment_id: 6Ee10wvqhfipStz297mtUhBXvaB
          due_at: 2018-11-01T00:00:00.000Z
          id: XDgyFu7yo1E2S5lQGGpYn
          reason: NO_KNOWLEDGE
          state: LOST
          updated_at: 2018-10-18T15:59:13.613Z
      properties:
        dispute:
          $ref: "#/components/schemas/Dispute"
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    AccumulateLoyaltyPointsRequest:
      description: A request to accumulate points for a purchase.
      example:
        request_body:
          accumulate_points:
            order_id: RFZfrdtm3mhO1oGzf5Cx7fEMsmGZY
          idempotency_key: 58b90739-c3e8-4b11-85f7-e636d48d72cb
          location_id: P034NEENMD09F
        request_params: ?account_id=5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
      properties:
        accumulate_points:
          $ref: "#/components/schemas/LoyaltyEventAccumulatePoints"
        idempotency_key:
          description: |-
            A unique string that identifies the `AccumulateLoyaltyPoints` request. 
            Keys can be any valid string but must be unique for every request.
          maxLength: 128
          minLength: 1
          type: string
        location_id:
          description: The [location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the purchase was made.
          type: string
      required:
        - accumulate_points
        - idempotency_key
        - location_id
      type: object
      x-release-status: PUBLIC
    AccumulateLoyaltyPointsResponse:
      description: A response containing the resulting loyalty event.
      example:
        event:
          accumulate_points:
            loyalty_program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
            order_id: RFZfrdtm3mhO1oGzf5Cx7fEMsmGZY
            points: 6
          created_at: 2020-05-08T21:41:12Z
          id: ee46aafd-1af6-3695-a385-276e2ef0be26
          location_id: P034NEENMD09F
          loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
          source: LOYALTY_API
          type: ACCUMULATE_POINTS
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        event:
          $ref: "#/components/schemas/LoyaltyEvent"
      type: object
      x-release-status: PUBLIC
    ActionCancelReason:
      description: ""
      enum:
        - BUYER_CANCELED
        - SELLER_CANCELED
        - TIMED_OUT
      type: string
      x-enum-elements:
        - description: A person canceled the `TerminalCheckout` from a Square device.
          name: BUYER_CANCELED
        - description: A client canceled the `TerminalCheckout` using the API.
          name: SELLER_CANCELED
        - description: The `TerminalCheckout` timed out (see `deadline_duration` on the `TerminalCheckout`).
          name: TIMED_OUT
      x-release-status: PUBLIC
    AddGroupToCustomerRequest:
      description: |-
        Defines the fields that are included in the request body of
        a request to the [AddGroupToCustomer](https://developer.squareup.com/reference/square_2021-08-18/customers-api/add-group-to-customer) endpoint.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    AddGroupToCustomerResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [AddGroupToCustomer](https://developer.squareup.com/reference/square_2021-08-18/customers-api/add-group-to-customer) endpoint.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    AdditionalRecipient:
      description: Represents an additional recipient (other than the merchant) receiving a portion of this tender.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        description:
          description: The description of the additional recipient.
          maxLength: 100
          type: string
        location_id:
          description: The location ID for a recipient (other than the merchant) receiving a portion of this tender.
          maxLength: 50
          minLength: 1
          type: string
        receivable_id:
          description: The unique ID for this [AdditionalRecipientReceivable](https://developer.squareup.com/reference/square_2021-08-18/objects/AdditionalRecipientReceivable), assigned by the server.
          maxLength: 192
          type: string
      required:
        - location_id
        - amount_money
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    Address:
      description: |-
        Represents a postal address in a country. The address format is based 
        on an [open-source library from Google](https://github.com/google/libaddressinput). For more information, 
        see [AddressValidationMetadata](https://github.com/google/libaddressinput/wiki/AddressValidationMetadata). 
        This format has dedicated fields for four address components: postal code, 
        locality (city), administrative district (state, prefecture, or province), and 
        sublocality (town or village). These components have dedicated fields in the 
        `Address` object because software sometimes behaves differently based on them. 
        For example, sales tax software may charge different amounts of sales tax 
        based on the postal code, and some software is only available in 
        certain states due to compliance reasons.

        For the remaining address components, the `Address` type provides the 
        `address_line_1` and `address_line_2` fields for free-form data entry. 
        These fields are free-form because the remaining address components have 
        too many variations around the world and typical software does not parse 
        these components. These fields enable users to enter anything they want. 

        Note that, in the current implementation, all other `Address` type fields are blank. 
        These include `address_line_3`, `sublocality_2`, `sublocality_3`, 
        `administrative_district_level_2`, `administrative_district_level_3`, 
        `first_name`, `last_name`, and `organization`. 

        When it comes to localization, the seller's language preferences 
        (see [Language preferences](https://developer.squareup.com/docs/locations-api#location-specific-and-seller-level-language-preferences)) 
        are ignored for addresses. Even though Square products (such as Square Point of Sale 
        and the Seller Dashboard) mostly use a seller's language preference in 
        communication, when it comes to addresses, they will use English for a US address, 
        Japanese for an address in Japan, and so on.
      properties:
        address_line_1:
          description: |-
            The first line of the address.

            Fields that start with `address_line` provide the address's most specific
            details, like street number, street name, and building name. They do *not*
            provide less specific details like city, state/province, or country (these
            details are provided in other fields).
          type: string
        address_line_2:
          description: The second line of the address, if any.
          type: string
        address_line_3:
          description: The third line of the address, if any.
          type: string
        administrative_district_level_1:
          description: |-
            A civil entity within the address's country. In the US, this
            is the state.
          type: string
        administrative_district_level_2:
          description: |-
            A civil entity within the address's `administrative_district_level_1`.
            In the US, this is the county.
          type: string
        administrative_district_level_3:
          description: |-
            A civil entity within the address's `administrative_district_level_2`,
            if any.
          type: string
        country:
          description: The address's country, in ISO 3166-1-alpha-2 format.
          type: string
        first_name:
          description: Optional first name when it's representing recipient.
          type: string
        last_name:
          description: Optional last name when it's representing recipient.
          type: string
        locality:
          description: The city or town of the address.
          type: string
        organization:
          description: Optional organization name when it's representing recipient.
          type: string
        postal_code:
          description: The address's postal code.
          type: string
        sublocality:
          description: A civil region within the address's `locality`, if any.
          type: string
        sublocality_2:
          description: A civil region within the address's `sublocality`, if any.
          type: string
        sublocality_3:
          description: A civil region within the address's `sublocality_2`, if any.
          type: string
      type: object
      x-release-status: PUBLIC
    AdjustLoyaltyPointsRequest:
      description: A request to adjust (add or subtract) points manually.
      example:
        request_body:
          adjust_points:
            points: 10
            reason: Complimentary points
          idempotency_key: bc29a517-3dc9-450e-aa76-fae39ee849d1
        request_params: ?account_id=5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
      properties:
        adjust_points:
          $ref: "#/components/schemas/LoyaltyEventAdjustPoints"
        idempotency_key:
          description: |-
            A unique string that identifies this `AdjustLoyaltyPoints` request. 
            Keys can be any valid string, but must be unique for every request.
          maxLength: 128
          minLength: 1
          type: string
      required:
        - idempotency_key
        - adjust_points
      type: object
      x-release-status: PUBLIC
    AdjustLoyaltyPointsResponse:
      description: |-
        A response that includes the loyalty event that 
        resulted from the successful API call.
      example:
        event:
          adjust_points:
            loyalty_program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
            points: 10
            reason: Complimentary points
          created_at: 2020-05-08T21:42:32Z
          id: 613a6fca-8d67-39d0-bad2-3b4bc45c8637
          loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
          source: LOYALTY_API
          type: ADJUST_POINTS
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        event:
          $ref: "#/components/schemas/LoyaltyEvent"
      type: object
      x-release-status: PUBLIC
    AppointmentSegment:
      description: Defines an appointment segment of a booking.
      properties:
        duration_minutes:
          description: The time span in minutes of an appointment segment.
          maximum: 1500
          minimum: 0
          type: integer
        service_variation_id:
          description: The ID of the [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) object representing the service booked in this segment.
          minLength: 1
          type: string
        service_variation_version:
          description: The current version of the item variation representing the service booked in this segment.
          format: int64
          type: integer
        team_member_id:
          description: The ID of the [TeamMember](https://developer.squareup.com/reference/square_2021-08-18/objects/TeamMember) object representing the team member booked in this segment.
          minLength: 1
          type: string
      required:
        - duration_minutes
        - service_variation_id
        - team_member_id
        - service_variation_version
      type: object
      x-is-beta: true
      x-release-status: BETA
    Availability:
      description: Describes a slot available for booking, encapsulating appointment segments, the location and starting time.
      properties:
        appointment_segments:
          description: The list of appointment segments available for booking
          items:
            $ref: "#/components/schemas/AppointmentSegment"
          type: array
        location_id:
          description: The ID of the location available for booking.
          type: string
        start_at:
          description: The RFC 3339 timestamp specifying the beginning time of the slot available for booking.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    BankAccount:
      description: |-
        Represents a bank account. For more information about 
        linking a bank account to a Square account, see 
        [Bank Accounts API](https://developer.squareup.com/docs/bank-accounts-api).
      properties:
        account_number_suffix:
          description: The last few digits of the account number.
          minLength: 1
          type: string
        account_type:
          description: The financial purpose of the associated bank account.
          type: string
        bank_name:
          description: |-
            Read only. Name of actual financial institution. 
            For example "Bank of America".
          maxLength: 100
          type: string
        country:
          description: The ISO 3166 Alpha-2 country code where the bank account is based.
          type: string
        creditable:
          description: Indicates whether it is possible for Square to send money to this bank account.
          type: boolean
        currency:
          description: |-
            The 3-character ISO 4217 currency code indicating the operating
            currency of the bank account. For example, the currency code for US dollars
            is `USD`.
          type: string
        debit_mandate_reference_id:
          description: |-
            Reference identifier that will be displayed to UK bank account owners
            when collecting direct debit authorization. Only required for UK bank accounts.
          type: string
        debitable:
          description: |-
            Indicates whether it is possible for Square to take money from this 
            bank account.
          type: boolean
        fingerprint:
          description: |-
            A Square-assigned, unique identifier for the bank account based on the
            account information. The account fingerprint can be used to compare account
            entries and determine if the they represent the same real-world bank account.
          type: string
        holder_name:
          description: |-
            Name of the account holder. This name must match the name 
            on the targeted bank account record.
          minLength: 1
          type: string
        id:
          description: The unique, Square-issued identifier for the bank account.
          maxLength: 30
          minLength: 1
          type: string
        location_id:
          description: The location to which the bank account belongs.
          type: string
        primary_bank_identification_number:
          description: |-
            Primary identifier for the bank. For more information, see 
            [Bank Accounts API](https://developer.squareup.com/docs/bank-accounts-api).
          maxLength: 40
          type: string
        reference_id:
          description: |-
            Client-provided identifier for linking the banking account to an entity
            in a third-party system (for example, a bank account number or a user identifier).
          type: string
        secondary_bank_identification_number:
          description: |-
            Secondary identifier for the bank. For more information, see 
            [Bank Accounts API](https://developer.squareup.com/docs/bank-accounts-api).
          maxLength: 40
          type: string
        status:
          description: Read-only. The current verification status of this BankAccount object.
          type: string
        version:
          description: The current version of the `BankAccount`.
          type: integer
      required:
        - id
        - account_number_suffix
        - country
        - currency
        - account_type
        - holder_name
        - primary_bank_identification_number
        - status
        - creditable
        - debitable
      type: object
      x-release-status: PUBLIC
    BankAccountPaymentDetails:
      description: Additional details about BANK_ACCOUNT type payments.
      properties:
        account_ownership_type:
          description: |-
            The ownership type of the bank account performing the transfer.
            The type can be `INDIVIDUAL`, `COMPANY`, or `UNKNOWN`.
          maxLength: 50
          type: string
        ach_details:
          $ref: "#/components/schemas/ACHDetails"
        bank_name:
          description: The name of the bank associated with the bank account.
          maxLength: 100
          type: string
        country:
          description: The two-letter ISO code representing the country the bank account is located in.
          maxLength: 2
          minLength: 2
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        fingerprint:
          description: |-
            Uniquely identifies the bank account for this seller and can be used
            to determine if payments are from the same bank account.
          maxLength: 255
          type: string
        statement_description:
          description: The statement description as sent to the bank.
          maxLength: 1000
          type: string
        transfer_type:
          description: The type of the bank transfer. The type can be `ACH` or `UNKNOWN`.
          maxLength: 50
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    BankAccountStatus:
      description: Indicates the current verification status of a `BankAccount` object.
      enum:
        - VERIFICATION_IN_PROGRESS
        - VERIFIED
        - DISABLED
      type: string
      x-enum-elements:
        - description: |-
            Indicates that the verification process has started. Some features
            (for example, creditable or debitable) may be provisionally enabled on the bank
            account.
          name: VERIFICATION_IN_PROGRESS
        - description: Indicates that the bank account was successfully verified.
          name: VERIFIED
        - description: |-
            Indicates that the bank account is disabled and is permanently unusable
            for funds transfer. A bank account can be disabled because of a failed verification
            attempt or a failed deposit attempt.
          name: DISABLED
      x-release-status: PUBLIC
    BankAccountType:
      description: Indicates the financial purpose of the bank account.
      enum:
        - CHECKING
        - SAVINGS
        - INVESTMENT
        - OTHER
        - BUSINESS_CHECKING
      type: string
      x-enum-elements:
        - description: |-
            An account at a financial institution against which checks can be
            drawn by the account depositor.
          name: CHECKING
        - description: |-
            An account at a financial institution that pays interest but cannot be
            used directly as money in the narrow sense of a medium of exchange.
          name: SAVINGS
        - description: |-
            An account at a financial institution that contains a deposit of funds
            and/or securities.
          name: INVESTMENT
        - description: |-
            An account at a financial institution which cannot be described by the
            other types.
          name: OTHER
        - description: |-
            An account at a financial institution against which checks can be
            drawn specifically for business purposes (non-personal use).
          name: BUSINESS_CHECKING
      x-release-status: PUBLIC
    BatchChangeInventoryRequest:
      description: ""
      example:
        request_body:
          changes:
            - physical_count:
                catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
                employee_id: LRK57NSQ5X7PUD05
                location_id: C6W5YS5QM06F5
                occurred_at: 2016-11-16T22:25:24.878Z
                quantity: "53"
                reference_id: 1536bfbf-efed-48bf-b17d-a197141b2a92
                state: IN_STOCK
              type: PHYSICAL_COUNT
          idempotency_key: 8fc6a5b0-9fe8-4b46-b46b-2ef95793abbe
          ignore_unchanged_counts: true
      properties:
        changes:
          description: |-
            The set of physical counts and inventory adjustments to be made.
            Changes are applied based on the client-supplied timestamp and may be sent
            out of order.
          items:
            $ref: "#/components/schemas/InventoryChange"
          type: array
        idempotency_key:
          description: |-
            A client-supplied, universally unique identifier (UUID) for the
            request.

            See [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency) in the
            [API Development 101](https://developer.squareup.com/docs/basics/api101/overview) section for more
            information.
          maxLength: 128
          minLength: 1
          type: string
        ignore_unchanged_counts:
          description: |-
            Indicates whether the current physical count should be ignored if
            the quantity is unchanged since the last physical count. Default: `true`.
          type: boolean
      required:
        - idempotency_key
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/BatchChangeInventory/BatchChangeInventoryRequest.csharp
        java: /sdk_samples/Inventory/BatchChangeInventory/BatchChangeInventoryRequest.java
        javascript: /sdk_samples/Inventory/BatchChangeInventory/BatchChangeInventoryRequest.javascript
        php: /sdk_samples/Inventory/BatchChangeInventory/BatchChangeInventoryRequest.php
        python: /sdk_samples/Inventory/BatchChangeInventory/BatchChangeInventoryRequest.python
        ruby: /sdk_samples/Inventory/BatchChangeInventory/BatchChangeInventoryRequest.ruby
    BatchChangeInventoryResponse:
      description: ""
      example:
        counts:
          - calculated_at: 2016-11-16T22:28:01.223Z
            catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
            catalog_object_type: ITEM_VARIATION
            location_id: C6W5YS5QM06F5
            quantity: "53"
            state: IN_STOCK
        errors: []
      properties:
        changes:
          description: Changes created for the request.
          items:
            $ref: "#/components/schemas/InventoryChange"
          type: array
          x-is-beta: true
          x-release-status: BETA
        counts:
          description: The current counts for all objects referenced in the request.
          items:
            $ref: "#/components/schemas/InventoryCount"
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    BatchDeleteCatalogObjectsRequest:
      description: ""
      example:
        request_body:
          object_ids:
            - W62UWFY35CWMYGVWK6TWJDNI
            - AA27W3M2GGTF3H6AVPNB77CK
      properties:
        object_ids:
          description: |-
            The IDs of the CatalogObjects to be deleted. When an object is deleted, other objects
            in the graph that depend on that object will be deleted as well (for example, deleting a
            CatalogItem will delete its CatalogItemVariation.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.csharp
        java: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.java
        javascript: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.javascript
        php: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.php
        python: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.python
        ruby: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsRequest.ruby
    BatchDeleteCatalogObjectsResponse:
      description: ""
      example:
        deleted_at: 2016-11-16T22:25:24.878Z
        deleted_object_ids:
          - W62UWFY35CWMYGVWK6TWJDNI
          - AA27W3M2GGTF3H6AVPNB77CK
      properties:
        deleted_at:
          description: The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) of this deletion in RFC 3339 format, e.g., "2016-09-04T23:59:33.123Z".
          type: string
        deleted_object_ids:
          description: The IDs of all CatalogObjects deleted by this request.
          items:
            type: string
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.csharp
        java: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.java
        javascript: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.javascript
        php: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.php
        python: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.python
        ruby: /sdk_samples/Catalog/BatchDeleteCatalogObjects/BatchDeleteCatalogObjectsResponse.ruby
    BatchRetrieveCatalogObjectsRequest:
      description: ""
      example:
        request_body:
          include_related_objects: true
          object_ids:
            - W62UWFY35CWMYGVWK6TWJDNI
            - AA27W3M2GGTF3H6AVPNB77CK
      properties:
        catalog_version:
          description: |-
            The specific version of the catalog objects to be included in the response. 
            This allows you to retrieve historical versions of objects. The specified version value is matched against
            the [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s' `version` attribute.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        include_related_objects:
          description: |-
            If `true`, the response will include additional objects that are related to the
            requested objects, as follows:

            If the `objects` field of the response contains a CatalogItem, its associated
            CatalogCategory objects, CatalogTax objects, CatalogImage objects and
            CatalogModifierLists will be returned in the `related_objects` field of the
            response. If the `objects` field of the response contains a CatalogItemVariation,
            its parent CatalogItem will be returned in the `related_objects` field of
            the response.
          type: boolean
        object_ids:
          description: The IDs of the CatalogObjects to be retrieved.
          items:
            type: string
          type: array
      required:
        - object_ids
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.csharp
        java: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.java
        javascript: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.javascript
        php: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.php
        python: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.python
        ruby: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsRequest.ruby
    BatchRetrieveCatalogObjectsResponse:
      description: ""
      example:
        objects:
          - id: W62UWFY35CWMYGVWK6TWJDNI
            is_deleted: false
            item_data:
              category_id: BJNQCF2FJ6S6UIDT65ABHLRX
              description: Hot Leaf Juice
              name: Tea
              tax_ids:
                - HURXQOOAIC4IZSI2BEXQRYFY
              variations:
                - id: 2TZFAOHWGG7PAK2QEXWYPZSP
                  is_deleted: false
                  item_variation_data:
                    item_id: W62UWFY35CWMYGVWK6TWJDNI
                    name: Mug
                    ordinal: 0
                    price_money:
                      amount: 150
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2016-11-16T22:25:24.878Z
                  version: 1479335124878
            present_at_all_locations: true
            type: ITEM
            updated_at: 2016-11-16T22:25:24.878Z
            version: 1479335124878
          - id: AA27W3M2GGTF3H6AVPNB77CK
            is_deleted: false
            item_data:
              category_id: BJNQCF2FJ6S6UIDT65ABHLRX
              description: Hot Bean Juice
              name: Coffee
              tax_ids:
                - HURXQOOAIC4IZSI2BEXQRYFY
              variations:
                - id: LBTYIHNHU52WOIHWT7SNRIYH
                  is_deleted: false
                  item_variation_data:
                    item_id: AA27W3M2GGTF3H6AVPNB77CK
                    name: Regular
                    ordinal: 0
                    price_money:
                      amount: 250
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2016-11-16T22:25:24.878Z
                  version: 1479335124878
                - id: PKYIC7HGGKW5CYVSCVDEIMHY
                  is_deleted: false
                  item_variation_data:
                    item_id: AA27W3M2GGTF3H6AVPNB77CK
                    name: Large
                    ordinal: 1
                    price_money:
                      amount: 350
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2016-11-16T22:25:24.878Z
                  version: 1479335124878
            present_at_all_locations: true
            type: ITEM
            updated_at: 2016-11-16T22:25:24.878Z
            version: 1479335124878
        related_objects:
          - category_data:
              name: Beverages
            id: BJNQCF2FJ6S6UIDT65ABHLRX
            is_deleted: false
            present_at_all_locations: true
            type: CATEGORY
            updated_at: 2016-11-16T22:25:24.878Z
            version: 1479335124878
          - id: HURXQOOAIC4IZSI2BEXQRYFY
            is_deleted: false
            present_at_all_locations: true
            tax_data:
              calculation_phase: TAX_SUBTOTAL_PHASE
              enabled: true
              inclusion_type: ADDITIVE
              name: Sales Tax
              percentage: "5.0"
            type: TAX
            updated_at: 2016-11-16T22:25:24.878Z
            version: 1479335124878
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        objects:
          description: A list of [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s returned.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
        related_objects:
          description: A list of [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s referenced by the object in the `objects` field.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.csharp
        java: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.java
        javascript: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.javascript
        php: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.php
        python: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.python
        ruby: /sdk_samples/Catalog/BatchRetrieveCatalogObjects/BatchRetrieveCatalogObjectsResponse.ruby
    BatchRetrieveInventoryChangesRequest:
      description: ""
      example:
        request_body:
          catalog_object_ids:
            - W62UWFY35CWMYGVWK6TWJDNI
          location_ids:
            - C6W5YS5QM06F5
          states:
            - IN_STOCK
          types:
            - PHYSICAL_COUNT
          updated_after: 2016-11-01T00:00:00.000Z
          updated_before: 2016-12-01T00:00:00.000Z
      properties:
        catalog_object_ids:
          description: |-
            The filter to return results by `CatalogObject` ID.
            The filter is only applicable when set. The default value is null.
          items:
            type: string
          type: array
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        location_ids:
          description: |-
            The filter to return results by `Location` ID. 
            The filter is only applicable when set. The default value is null.
          items:
            type: string
          type: array
        states:
          description: |-
            The filter to return `ADJUSTMENT` query results by
            `InventoryState`. This filter is only applied when set.
            The default value is null.
          items:
            type: string
          type: array
        types:
          description: |-
            The filter to return results by `InventoryChangeType` values other than `TRANSFER`.
            The default value is `[PHYSICAL_COUNT, ADJUSTMENT]`.
          items:
            type: string
          type: array
        updated_after:
          description: |-
            The filter to return results with their `calculated_at` value  
            after the given time as specified in an RFC 3339 timestamp. 
            The default value is the UNIX epoch of (`1970-01-01T00:00:00Z`).
          type: string
        updated_before:
          description: |-
            The filter to return results with their `created_at` or `calculated_at` value  
            strictly before the given time as specified in an RFC 3339 timestamp. 
            The default value is the UNIX epoch of (`1970-01-01T00:00:00Z`).
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/BatchRetrieveInventoryChanges/BatchRetrieveInventoryChangesRequest.csharp
        java: /sdk_samples/Inventory/BatchRetrieveInventoryChanges/BatchRetrieveInventoryChangesRequest.java
        javascript: /sdk_samples/Inventory/BatchRetrieveInventoryChanges/BatchRetrieveInventoryChangesRequest.javascript
        php: /sdk_samples/Inventory/BatchRetrieveInventoryChanges/BatchRetrieveInventoryChangesRequest.php
        python: /sdk_samples/Inventory/BatchRetrieveInventoryChanges/BatchRetrieveInventoryChangesRequest.python
        ruby: /sdk_samples/Inventory/BatchRetrieveInventoryChanges/BatchRetrieveInventoryChangesRequest.ruby
    BatchRetrieveInventoryChangesResponse:
      description: ""
      example:
        changes:
          - physical_count:
              catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
              catalog_object_type: ITEM_VARIATION
              created_at: 2016-11-16T22:25:24.878Z
              employee_id: LRK57NSQ5X7PUD05
              id: 46YDTW253DWGGK9HMAE6XCAO
              location_id: C6W5YS5QM06F5
              occurred_at: 2016-11-16T22:24:49.028Z
              quantity: "86"
              reference_id: 22c07cf4-5626-4224-89f9-691112019399
              source:
                application_id: 416ff29c-86c4-4feb-b58c-9705f21f3ea0
                name: Square Point of Sale 4.37
                product: SQUARE_POS
              state: IN_STOCK
            type: PHYSICAL_COUNT
        errors: []
      properties:
        changes:
          description: |-
            The current calculated inventory changes for the requested objects
            and locations.
          items:
            $ref: "#/components/schemas/InventoryChange"
          type: array
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If unset,
            this is the final response.
            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    BatchRetrieveInventoryCountsRequest:
      description: ""
      example:
        request_body:
          catalog_object_ids:
            - W62UWFY35CWMYGVWK6TWJDNI
          location_ids:
            - 59TNP9SA8VGDA
          updated_after: 2016-11-16T00:00:00.000Z
      properties:
        catalog_object_ids:
          description: |-
            The filter to return results by `CatalogObject` ID.
            The filter is applicable only when set.  The default is null.
          items:
            type: string
          type: array
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        location_ids:
          description: |-
            The filter to return results by `Location` ID. 
            This filter is applicable only when set. The default is null.
          items:
            type: string
          type: array
        states:
          description: |-
            The filter to return results by `InventoryState`. The filter is only applicable when set.
            Ignored are untracked states of `NONE`, `SOLD`, and `UNLINKED_RETURN`.
            The default is null.
          items:
            type: string
          type: array
        updated_after:
          description: |-
            The filter to return results with their `calculated_at` value 
            after the given time as specified in an RFC 3339 timestamp. 
            The default value is the UNIX epoch of (`1970-01-01T00:00:00Z`).
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/BatchRetrieveInventoryCounts/BatchRetrieveInventoryCountsRequest.csharp
        java: /sdk_samples/Inventory/BatchRetrieveInventoryCounts/BatchRetrieveInventoryCountsRequest.java
        javascript: /sdk_samples/Inventory/BatchRetrieveInventoryCounts/BatchRetrieveInventoryCountsRequest.javascript
        php: /sdk_samples/Inventory/BatchRetrieveInventoryCounts/BatchRetrieveInventoryCountsRequest.php
        python: /sdk_samples/Inventory/BatchRetrieveInventoryCounts/BatchRetrieveInventoryCountsRequest.python
        ruby: /sdk_samples/Inventory/BatchRetrieveInventoryCounts/BatchRetrieveInventoryCountsRequest.ruby
    BatchRetrieveInventoryCountsResponse:
      description: ""
      example:
        counts:
          - calculated_at: 2016-11-16T22:28:01.223Z
            catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
            catalog_object_type: ITEM_VARIATION
            location_id: 59TNP9SA8VGDA
            quantity: "79"
            state: IN_STOCK
        errors: []
      properties:
        counts:
          description: |-
            The current calculated inventory counts for the requested objects
            and locations.
          items:
            $ref: "#/components/schemas/InventoryCount"
          type: array
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If unset,
            this is the final response.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    BatchRetrieveOrdersRequest:
      description: |-
        Defines the fields that are included in requests to the
        `BatchRetrieveOrders` endpoint.
      example:
        request_body:
          location_id: 057P5VYJ4A5X1
          order_ids:
            - CAISEM82RcpmcFBM0TfOyiHV3es
            - CAISENgvlJ6jLWAzERDzjyHVybY
      properties:
        location_id:
          description: |-
            The ID of the location for these orders. This field is optional: omit it to retrieve
            orders within the scope of the current authorization's merchant ID.
          type: string
        order_ids:
          description: The IDs of the orders to retrieve. A maximum of 100 orders can be retrieved per request.
          items:
            minLength: 1
            type: string
          type: array
      required:
        - order_ids
      type: object
      x-release-status: PUBLIC
    BatchRetrieveOrdersResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `BatchRetrieveOrders` endpoint.
      example:
        orders:
          - id: CAISEM82RcpmcFBM0TfOyiHV3es
            line_items:
              - base_price_money:
                  amount: 1599
                  currency: USD
                name: Awesome product
                quantity: "1"
                total_money:
                  amount: 1599
                  currency: USD
                uid: 945986d1-9586-11e6-ad5a-28cfe92138cf
              - base_price_money:
                  amount: 2000
                  currency: USD
                name: Another awesome product
                quantity: "3"
                total_money:
                  amount: 6000
                  currency: USD
                uid: a8f4168c-9586-11e6-bdf0-28cfe92138cf
            location_id: 057P5VYJ4A5X1
            reference_id: my-order-001
            total_money:
              amount: 7599
              currency: USD
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        orders:
          description: The requested orders. This will omit any requested orders that do not exist.
          items:
            $ref: "#/components/schemas/Order"
          type: array
      type: object
      x-release-status: PUBLIC
    BatchUpsertCatalogObjectsRequest:
      description: ""
      example:
        request_body:
          batches:
            - objects:
                - id: "#Tea"
                  item_data:
                    category_id: "#Beverages"
                    description: Hot Leaf Juice
                    name: Tea
                    tax_ids:
                      - "#SalesTax"
                    variations:
                      - id: "#Tea_Mug"
                        item_variation_data:
                          item_id: "#Tea"
                          name: Mug
                          price_money:
                            amount: 150
                            currency: USD
                          pricing_type: FIXED_PRICING
                        present_at_all_locations: true
                        type: ITEM_VARIATION
                  present_at_all_locations: true
                  type: ITEM
                - id: "#Coffee"
                  item_data:
                    category_id: "#Beverages"
                    description: Hot Bean Juice
                    name: Coffee
                    tax_ids:
                      - "#SalesTax"
                    variations:
                      - id: "#Coffee_Regular"
                        item_variation_data:
                          item_id: "#Coffee"
                          name: Regular
                          price_money:
                            amount: 250
                            currency: USD
                          pricing_type: FIXED_PRICING
                        present_at_all_locations: true
                        type: ITEM_VARIATION
                      - id: "#Coffee_Large"
                        item_variation_data:
                          item_id: "#Coffee"
                          name: Large
                          price_money:
                            amount: 350
                            currency: USD
                          pricing_type: FIXED_PRICING
                        present_at_all_locations: true
                        type: ITEM_VARIATION
                  present_at_all_locations: true
                  type: ITEM
                - category_data:
                    name: Beverages
                  id: "#Beverages"
                  present_at_all_locations: true
                  type: CATEGORY
                - id: "#SalesTax"
                  present_at_all_locations: true
                  tax_data:
                    applies_to_custom_amounts: true
                    calculation_phase: TAX_SUBTOTAL_PHASE
                    enabled: true
                    inclusion_type: ADDITIVE
                    name: Sales Tax
                    percentage: "5.0"
                  type: TAX
          idempotency_key: 789ff020-f723-43a9-b4b5-43b5dc1fa3dc
      properties:
        batches:
          description: |-
            A batch of CatalogObjects to be inserted/updated atomically.
            The objects within a batch will be inserted in an all-or-nothing fashion, i.e., if an error occurs
            attempting to insert or update an object within a batch, the entire batch will be rejected. However, an error
            in one batch will not affect other batches within the same request.

            For each object, its `updated_at` field is ignored and replaced with a current [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates), and its
            `is_deleted` field must not be set to `true`.

            To modify an existing object, supply its ID. To create a new object, use an ID starting
            with `#`. These IDs may be used to create relationships between an object and attributes of
            other objects that reference it. For example, you can create a CatalogItem with
            ID `#ABC` and a CatalogItemVariation with its `item_id` attribute set to
            `#ABC` in order to associate the CatalogItemVariation with its parent
            CatalogItem.

            Any `#`-prefixed IDs are valid only within a single atomic batch, and will be replaced by server-generated IDs.

            Each batch may contain up to 1,000 objects. The total number of objects across all batches for a single request
            may not exceed 10,000. If either of these limits is violated, an error will be returned and no objects will
            be inserted or updated.
          items:
            $ref: "#/components/schemas/CatalogObjectBatch"
          type: array
        idempotency_key:
          description: |-
            A value you specify that uniquely identifies this
            request among all your requests. A common way to create
            a valid idempotency key is to use a Universally unique
            identifier (UUID).

            If you're unsure whether a particular request was successful,
            you can reattempt it with the same idempotency key without
            worrying about creating duplicate objects.

            See [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency) for more information.
          minLength: 1
          type: string
      required:
        - idempotency_key
        - batches
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.csharp
        java: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.java
        javascript: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.javascript
        php: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.php
        python: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.python
        ruby: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsRequest.ruby
    BatchUpsertCatalogObjectsResponse:
      description: ""
      example:
        id_mappings:
          - client_object_id: "#Tea"
            object_id: ZSDZN34NAXDLC6D5ZQMNSOUM
          - client_object_id: "#Coffee"
            object_id: PJMCEBHHUS3OKDB6PYUHLCPP
          - client_object_id: "#Beverages"
            object_id: LYT72K3WGJFFCIMB63XARP3I
          - client_object_id: "#SalesTax"
            object_id: XHSHLHNWSI3HVI4BW5ZUZXI3
          - client_object_id: "#Tea_Mug"
            object_id: NAYHET5R52MIYCEF34ZMAHFM
          - client_object_id: "#Coffee_Regular"
            object_id: OTYDX45SPG7LJQUVCBZI4INH
          - client_object_id: "#Coffee_Large"
            object_id: GZDA3JB37FYVOPI4AOEBOITI
        objects:
          - id: ZSDZN34NAXDLC6D5ZQMNSOUM
            is_deleted: false
            item_data:
              category_id: LYT72K3WGJFFCIMB63XARP3I
              description: Hot Leaf Juice
              name: Tea
              tax_ids:
                - XHSHLHNWSI3HVI4BW5ZUZXI3
              variations:
                - id: NAYHET5R52MIYCEF34ZMAHFM
                  is_deleted: false
                  item_variation_data:
                    item_id: ZSDZN34NAXDLC6D5ZQMNSOUM
                    name: Mug
                    ordinal: 0
                    price_money:
                      amount: 150
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2017-05-10T18:48:39.798Z
                  version: 1494442119798
            present_at_all_locations: true
            type: ITEM
            updated_at: 2017-05-10T18:48:39.798Z
            version: 1494442119798
          - id: PJMCEBHHUS3OKDB6PYUHLCPP
            is_deleted: false
            item_data:
              category_id: LYT72K3WGJFFCIMB63XARP3I
              description: Hot Bean Juice
              name: Coffee
              tax_ids:
                - XHSHLHNWSI3HVI4BW5ZUZXI3
              variations:
                - id: OTYDX45SPG7LJQUVCBZI4INH
                  is_deleted: false
                  item_variation_data:
                    item_id: PJMCEBHHUS3OKDB6PYUHLCPP
                    name: Regular
                    ordinal: 0
                    price_money:
                      amount: 250
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2017-05-10T18:48:39.798Z
                  version: 1494442119798
                - id: GZDA3JB37FYVOPI4AOEBOITI
                  is_deleted: false
                  item_variation_data:
                    item_id: PJMCEBHHUS3OKDB6PYUHLCPP
                    name: Large
                    ordinal: 1
                    price_money:
                      amount: 350
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2017-05-10T18:48:39.798Z
                  version: 1494442119798
            present_at_all_locations: true
            type: ITEM
            updated_at: 2017-05-10T18:48:39.798Z
            version: 1494442119798
          - category_data:
              name: Beverages
            id: LYT72K3WGJFFCIMB63XARP3I
            is_deleted: false
            present_at_all_locations: true
            type: CATEGORY
            updated_at: 2017-05-10T18:48:39.798Z
            version: 1494442119798
          - id: XHSHLHNWSI3HVI4BW5ZUZXI3
            is_deleted: false
            present_at_all_locations: true
            tax_data:
              applies_to_custom_amounts: true
              calculation_phase: TAX_SUBTOTAL_PHASE
              enabled: true
              inclusion_type: ADDITIVE
              name: Sales Tax
              percentage: "5.0"
            type: TAX
            updated_at: 2017-05-10T18:48:39.798Z
            version: 1494442119798
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        id_mappings:
          description: The mapping between client and server IDs for this upsert.
          items:
            $ref: "#/components/schemas/CatalogIdMapping"
          type: array
        objects:
          description: The created successfully created CatalogObjects.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
        updated_at:
          description: The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) of this update in RFC 3339 format, e.g., "2016-09-04T23:59:33.123Z".
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.csharp
        java: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.java
        javascript: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.javascript
        php: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.php
        python: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.python
        ruby: /sdk_samples/Catalog/BatchUpsertCatalogObjects/BatchUpsertCatalogObjectsResponse.ruby
    Booking:
      description: |-
        Represents a booking as a time-bound service contract for a seller's staff member to provide a specified service
        at a given location to a requesting customer in one or more appointment segments.
      properties:
        appointment_segments:
          description: A list of appointment segments for this booking.
          items:
            $ref: "#/components/schemas/AppointmentSegment"
          type: array
        created_at:
          description: The timestamp specifying the creation time of this booking, in RFC 3339 format.
          type: string
          x-read-only: true
        customer_id:
          description: The ID of the [Customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) object representing the customer attending this booking
          type: string
        customer_note:
          description: The free-text field for the customer to supply notes about the booking. For example, the note can be preferences that cannot be expressed by supported attributes of a relevant [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) instance.
          maxLength: 4096
          type: string
        id:
          description: A unique ID of this object representing a booking.
          type: string
          x-read-only: true
        location_id:
          description: The ID of the [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) object representing the location where the booked service is provided.
          type: string
        seller_note:
          description: |-
            The free-text field for the seller to supply notes about the booking. For example, the note can be preferences that cannot be expressed by supported attributes of a specific [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) instance.
            This field should not be visible to customers.
          maxLength: 4096
          type: string
        start_at:
          description: The timestamp specifying the starting time of this booking, in RFC 3339 format.
          type: string
        status:
          description: The status of the booking, describing where the booking stands with respect to the booking state machine.
          type: string
          x-read-only: true
        updated_at:
          description: The timestamp specifying the most recent update time of this booking, in RFC 3339 format.
          type: string
          x-read-only: true
        version:
          description: The revision number for the booking used for optimistic concurrency.
          minimum: 0
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    BookingStatus:
      description: Supported booking statuses.
      enum:
        - PENDING
        - CANCELLED_BY_CUSTOMER
        - CANCELLED_BY_SELLER
        - DECLINED
        - ACCEPTED
        - NO_SHOW
      type: string
      x-enum-elements:
        - description: An unaccepted booking. It is visible to both sellers and customers.
          name: PENDING
        - description: A customer-cancelled booking. It is visible to both the seller and the customer.
          name: CANCELLED_BY_CUSTOMER
        - description: A seller-cancelled booking. It is visible to both the seller and the customer.
          name: CANCELLED_BY_SELLER
        - description: A declined booking. It had once been pending, but was then declined by the seller.
          name: DECLINED
        - description: An accepted booking agreed to or accepted by the seller.
          name: ACCEPTED
        - description: |-
            A no-show booking. The booking was accepted at one time, but have now been marked as a no-show by
            the seller because the client either missed the booking or cancelled it without enough notice.
          name: NO_SHOW
      x-is-beta: true
      x-release-status: BETA
    Break:
      description: A record of an employee's break during a shift.
      properties:
        break_type_id:
          description: The `BreakType` that this `Break` was templated on.
          minLength: 1
          type: string
        end_at:
          description: |-
            RFC 3339; follows the same timezone information as `Shift`. Precision up to
            the minute is respected; seconds are truncated.
          type: string
        expected_duration:
          description: |-
            Format: RFC-3339 P[n]Y[n]M[n]DT[n]H[n]M[n]S. The expected length of
            the break.
          minLength: 1
          type: string
        id:
          description: The UUID for this object.
          type: string
        is_paid:
          description: |-
            Whether this break counts towards time worked for compensation
            purposes.
          type: boolean
        name:
          description: A human-readable name.
          minLength: 1
          type: string
        start_at:
          description: |-
            RFC 3339; follows the same timezone information as `Shift`. Precision up to
            the minute is respected; seconds are truncated.
          minLength: 1
          type: string
      required:
        - start_at
        - break_type_id
        - name
        - expected_duration
        - is_paid
      type: object
      x-release-status: PUBLIC
    BreakType:
      description: |-
        A defined break template that sets an expectation for possible `Break`
        instances on a `Shift`.
      properties:
        break_name:
          description: |-
            A human-readable name for this type of break. The name is displayed to
            employees in Square products.
          minLength: 1
          type: string
        created_at:
          description: A read-only timestamp in RFC 3339 format.
          type: string
          x-read-only: true
        expected_duration:
          description: |-
            Format: RFC-3339 P[n]Y[n]M[n]DT[n]H[n]M[n]S. The expected length of
            this break. Precision less than minutes is truncated.
          minLength: 1
          type: string
        id:
          description: The UUID for this object.
          maxLength: 255
          type: string
        is_paid:
          description: |-
            Whether this break counts towards time worked for compensation
            purposes.
          type: boolean
        location_id:
          description: The ID of the business location this type of break applies to.
          minLength: 1
          type: string
        updated_at:
          description: A read-only timestamp in RFC 3339 format.
          type: string
          x-read-only: true
        version:
          description: |-
            Used for resolving concurrency issues. The request fails if the version
            provided does not match the server version at the time of the request. If a value is not
            provided, Square's servers execute a "blind" write; potentially
            overwriting another writer's data.
          type: integer
      required:
        - location_id
        - break_name
        - expected_duration
        - is_paid
      type: object
      x-release-status: PUBLIC
    BulkCreateTeamMembersRequest:
      description: Represents a bulk create request for `TeamMember` objects.
      example:
        request_body:
          team_members:
            idempotency-key-1:
              team_member:
                assigned_locations:
                  assignment_type: EXPLICIT_LOCATIONS
                  location_ids:
                    - YSGH2WBKG94QZ
                    - GA2Y9HSJ8KRYT
                email_address: joe_doe@gmail.com
                family_name: Doe
                given_name: Joe
                phone_number: "+14159283333"
                reference_id: reference_id_1
            idempotency-key-2:
              team_member:
                assigned_locations:
                  assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
                email_address: jane_smith@gmail.com
                family_name: Smith
                given_name: Jane
                phone_number: "+14159223334"
                reference_id: reference_id_2
      properties:
        team_members:
          additionalProperties:
            $ref: "#/components/schemas/CreateTeamMemberRequest"
          description: The data used to create the `TeamMember` objects. Each key is the `idempotency_key` that maps to the `CreateTeamMemberRequest`.
          type: object
      required:
        - team_members
      type: object
      x-release-status: PUBLIC
    BulkCreateTeamMembersResponse:
      description: Represents a response from a bulk create request containing the created `TeamMember` objects or error messages.
      example:
        team_members:
          idempotency-key-1:
            team_member:
              assigned_locations:
                assignment_type: EXPLICIT_LOCATIONS
                location_ids:
                  - GA2Y9HSJ8KRYT
                  - YSGH2WBKG94QZ
              email_address: joe_doe@gmail.com
              family_name: Doe
              given_name: Joe
              id: ywhG1qfIOoqsHfVRubFV
              is_owner: false
              phone_number: "+14159283333"
              reference_id: reference_id_1
              status: ACTIVE
          idempotency-key-2:
            team_member:
              assigned_locations:
                assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
              email_address: jane_smith@gmail.com
              family_name: Smith
              given_name: Jane
              id: IF_Ncrg7fHhCqxVI9T6R
              is_owner: false
              phone_number: "+14159223334"
              reference_id: reference_id_2
              status: ACTIVE
      properties:
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_members:
          additionalProperties:
            $ref: "#/components/schemas/CreateTeamMemberResponse"
          description: The successfully created `TeamMember` objects. Each key is the `idempotency_key` that maps to the `CreateTeamMemberRequest`.
          type: object
      type: object
      x-release-status: PUBLIC
    BulkUpdateTeamMembersRequest:
      description: Represents a bulk update request for `TeamMember` objects.
      example:
        request_body:
          team_members:
            AFMwA08kR-MIF-3Vs0OE:
              team_member:
                assigned_locations:
                  assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
                email_address: jane_smith@gmail.com
                family_name: Smith
                given_name: Jane
                is_owner: false
                phone_number: "+14159223334"
                reference_id: reference_id_2
                status: ACTIVE
            fpgteZNMaf0qOK-a4t6P:
              team_member:
                assigned_locations:
                  assignment_type: EXPLICIT_LOCATIONS
                  location_ids:
                    - YSGH2WBKG94QZ
                    - GA2Y9HSJ8KRYT
                email_address: joe_doe@gmail.com
                family_name: Doe
                given_name: Joe
                is_owner: false
                phone_number: "+14159283333"
                reference_id: reference_id_1
                status: ACTIVE
      properties:
        team_members:
          additionalProperties:
            $ref: "#/components/schemas/UpdateTeamMemberRequest"
          description: The data used to update the `TeamMember` objects. Each key is the `team_member_id` that maps to the `UpdateTeamMemberRequest`.
          type: object
      required:
        - team_members
      type: object
      x-release-status: PUBLIC
    BulkUpdateTeamMembersResponse:
      description: Represents a response from a bulk update request containing the updated `TeamMember` objects or error messages.
      example:
        team_members:
          AFMwA08kR-MIF-3Vs0OE:
            team_member:
              assigned_locations:
                assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
              created_at: 2020-06-11T22:46:57.001Z
              email_address: jane_smith@gmail.com
              family_name: Smith
              given_name: Jane
              id: AFMwA08kR-MIF-3Vs0OE
              is_owner: false
              phone_number: "+14159223334"
              reference_id: reference_id_2
              status: ACTIVE
          fpgteZNMaf0qOK-a4t6P:
            team_member:
              assigned_locations:
                assignment_type: EXPLICIT_LOCATIONS
                location_ids:
                  - GA2Y9HSJ8KRYT
                  - YSGH2WBKG94QZ
              created_at: 2020-06-11T22:46:57.095Z
              email_address: joe_doe@gmail.com
              family_name: Doe
              given_name: Joe
              id: fpgteZNMaf0qOK-a4t6P
              is_owner: false
              phone_number: "+14159283333"
              reference_id: reference_id_1
              status: ACTIVE
      properties:
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_members:
          additionalProperties:
            $ref: "#/components/schemas/UpdateTeamMemberResponse"
          description: The successfully updated `TeamMember` objects. Each key is the `team_member_id` that maps to the `UpdateTeamMemberRequest`.
          type: object
      type: object
      x-release-status: PUBLIC
    BusinessAppointmentSettings:
      description: The service appointment settings, including where and how the service is provided.
      properties:
        alignment_time:
          description: The time unit of the service duration for bookings.
          type: string
        any_team_member_booking_enabled:
          description: |-
            Indicates whether a customer can choose from all available time slots and have a staff member assigned
            automatically (`true`) or not (`false`).
          type: boolean
        cancellation_fee_money:
          $ref: "#/components/schemas/Money"
        cancellation_policy:
          description: The cancellation policy adopted by the seller.
          type: string
        cancellation_policy_text:
          description: The free-form text of the seller's cancellation policy.
          type: string
        cancellation_window_seconds:
          description: The cut-off time in seconds for allowing clients to cancel or reschedule an appointment.
          type: integer
        location_types:
          description: Types of the location allowed for bookings.
          items:
            type: string
          type: array
        max_appointments_per_day_limit:
          description: The maximum number of daily appointments per team member or per location.
          type: integer
        max_appointments_per_day_limit_type:
          description: |-
            Indicates whether the daily appointment limit applies to team members or to
            business locations.
          type: string
        max_booking_lead_time_seconds:
          description: The maximum lead time in seconds before a service can be booked. Bookings must be created at most this far ahead of the booking's starting time.
          type: integer
        min_booking_lead_time_seconds:
          description: The minimum lead time in seconds before a service can be booked. Bookings must be created at least this far ahead of the booking's starting time.
          type: integer
        multiple_service_booking_enabled:
          description: Indicates whether a customer can book multiple services in a single online booking.
          type: boolean
        skip_booking_flow_staff_selection:
          description: Indicates whether customers has an assigned staff member (`true`) or can select s staff member of their choice (`false`).
          type: boolean
      type: object
      x-is-beta: true
      x-release-status: BETA
    BusinessAppointmentSettingsAlignmentTime:
      description: Time units of a service duration for bookings.
      enum:
        - SERVICE_DURATION
        - QUARTER_HOURLY
        - HALF_HOURLY
        - HOURLY
      type: string
      x-enum-elements:
        - description: The service duration unit is one visit of a fixed time interval specified by the seller.
          name: SERVICE_DURATION
        - description: The service duration unit is a 15-minute interval. Bookings can be scheduled every quarter hour.
          name: QUARTER_HOURLY
        - description: The service duration unit is a 30-minute interval. Bookings can be scheduled every half hour.
          name: HALF_HOURLY
        - description: The service duration unit is a 60-minute interval. Bookings can be scheduled every hour.
          name: HOURLY
      x-is-beta: true
      x-release-status: BETA
    BusinessAppointmentSettingsBookingLocationType:
      description: Types of location where service is provided.
      enum:
        - BUSINESS_LOCATION
        - CUSTOMER_LOCATION
        - PHONE
      type: string
      x-enum-elements:
        - description: The service is provided at a seller location.
          name: BUSINESS_LOCATION
        - description: The service is provided at a customer location.
          name: CUSTOMER_LOCATION
        - description: The service is provided over the phone.
          name: PHONE
      x-is-beta: true
      x-release-status: BETA
    BusinessAppointmentSettingsCancellationPolicy:
      description: The category of the seller’s cancellation policy.
      enum:
        - CANCELLATION_TREATED_AS_NO_SHOW
        - CUSTOM_POLICY
      type: string
      x-enum-elements:
        - description: Cancellations are treated as no shows and may incur a fee as specified by `cancellation_fee_money`.
          name: CANCELLATION_TREATED_AS_NO_SHOW
        - description: Cancellations follow the seller-specified policy that is described in free-form text and not enforced automatically by Square.
          name: CUSTOM_POLICY
      x-is-beta: true
      x-release-status: BETA
    BusinessAppointmentSettingsMaxAppointmentsPerDayLimitType:
      description: Types of daily appointment limits.
      enum:
        - PER_TEAM_MEMBER
        - PER_LOCATION
      type: string
      x-enum-elements:
        - description: The maximum number of daily appointments is set on a per team member basis.
          name: PER_TEAM_MEMBER
        - description: The maximum number of daily appointments is set on a per location basis.
          name: PER_LOCATION
      x-is-beta: true
      x-release-status: BETA
    BusinessBookingProfile:
      description: ""
      properties:
        allow_user_cancel:
          description: Indicates whether customers can cancel or reschedule their own bookings (`true`) or not (`false`).
          type: boolean
        booking_enabled:
          description: Indicates whether the seller is open for booking.
          type: boolean
        booking_policy:
          description: The policy for the seller to automatically accept booking requests (`ACCEPT_ALL`) or not (`REQUIRES_ACCEPTANCE`).
          type: string
        business_appointment_settings:
          $ref: "#/components/schemas/BusinessAppointmentSettings"
        created_at:
          description: The RFC 3339 timestamp specifying the booking's creation time.
          type: string
          x-read-only: true
        customer_timezone_choice:
          description: |-
            The choice of customer's time zone information of a booking.
            The Square online booking site and all notifications to customers uses either the seller location’s time zone
            or the time zone the customer chooses at booking.
          type: string
        seller_id:
          description: The ID of the seller, obtainable using the Merchants API.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    BusinessBookingProfileBookingPolicy:
      description: Policies for accepting bookings.
      enum:
        - ACCEPT_ALL
        - REQUIRES_ACCEPTANCE
      type: string
      x-enum-elements:
        - description: The seller accepts all booking requests automatically.
          name: ACCEPT_ALL
        - description: The seller must accept requests to complete bookings.
          name: REQUIRES_ACCEPTANCE
      x-is-beta: true
      x-release-status: BETA
    BusinessBookingProfileCustomerTimezoneChoice:
      description: Choices of customer-facing time zone used for bookings.
      enum:
        - BUSINESS_LOCATION_TIMEZONE
        - CUSTOMER_CHOICE
      type: string
      x-enum-elements:
        - description: Use the time zone of the business location for bookings.
          name: BUSINESS_LOCATION_TIMEZONE
        - description: Use the customer-chosen time zone for bookings.
          name: CUSTOMER_CHOICE
      x-is-beta: true
      x-release-status: BETA
    BusinessHours:
      description: Represents the hours of operation for a business location.
      properties:
        periods:
          description: |-
            The list of time periods during which the business is open. There may be at most 10
            periods per day.
          items:
            $ref: "#/components/schemas/BusinessHoursPeriod"
          type: array
      type: object
      x-release-status: PUBLIC
    BusinessHoursPeriod:
      description: Represents a period of time during which a business location is open.
      properties:
        day_of_week:
          description: The day of week for this time period.
          type: string
        end_local_time:
          description: |-
            The end time of a business hours period, specified in local time using partial-time
            RFC 3339 format.
          type: string
        start_local_time:
          description: |-
            The start time of a business hours period, specified in local time using partial-time
            RFC 3339 format.
          type: string
      type: object
      x-release-status: PUBLIC
    CalculateLoyaltyPointsRequest:
      description: |-
        A request to calculate the points that a buyer can earn from 
        a specified purchase.
      example:
        request_body:
          order_id: RFZfrdtm3mhO1oGzf5Cx7fEMsmGZY
        request_params: ?program_id=d619f755-2d17-41f3-990d-c04ecedd64dd
      properties:
        order_id:
          description: |-
            The [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) ID for which to calculate the points.
            Specify this field if your application uses the Orders API to process orders.
            Otherwise, specify the `transaction_amount_money`.
          type: string
        transaction_amount_money:
          $ref: "#/components/schemas/Money"
      type: object
      x-release-status: PUBLIC
    CalculateLoyaltyPointsResponse:
      description: |-
        A response that includes the points that the buyer can earn from 
        a specified purchase.
      example:
        points: 6
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        points:
          description: The points that the buyer can earn from a specified purchase.
          minimum: 0
          type: integer
      type: object
      x-release-status: PUBLIC
    CalculateOrderRequest:
      description: ""
      example:
        request_body:
          idempotency_key: b3e98fe3-b8de-471c-82f1-545f371e637c
          order:
            discounts:
              - name: 50% Off
                percentage: "50"
                scope: ORDER
            line_items:
              - base_price_money:
                  amount: 500
                  currency: USD
                name: Item 1
                quantity: "1"
              - base_price_money:
                  amount: 300
                  currency: USD
                name: Item 2
                quantity: "2"
            location_id: D7AVYMEAPJ3A3
      properties:
        order:
          $ref: "#/components/schemas/Order"
        proposed_rewards:
          description: |-
            Identifies one or more loyalty reward tiers to apply during the order calculation.
            The discounts defined by the reward tiers are added to the order only to preview the
            effect of applying the specified rewards. The rewards do not correspond to actual
            redemptions; that is, no `reward`s are created. Therefore, the reward `id`s are
            random strings used only to reference the reward tier.
          items:
            $ref: "#/components/schemas/OrderReward"
          type: array
      required:
        - order
      type: object
      x-is-beta: true
      x-release-status: BETA
    CalculateOrderResponse:
      description: ""
      example:
        order:
          created_at: 2020-05-18T16:30:49.614Z
          discounts:
            - applied_money:
                amount: 550
                currency: USD
              name: 50% Off
              percentage: "50"
              scope: ORDER
              type: FIXED_PERCENTAGE
              uid: zGsRZP69aqSSR9lq9euSPB
          line_items:
            - applied_discounts:
                - applied_money:
                    amount: 250
                    currency: USD
                  discount_uid: zGsRZP69aqSSR9lq9euSPB
                  uid: 9zr9S4dxvPAixvn0lpa1VC
              base_price_money:
                amount: 500
                currency: USD
              gross_sales_money:
                amount: 500
                currency: USD
              name: Item 1
              quantity: "1"
              total_discount_money:
                amount: 250
                currency: USD
              total_money:
                amount: 250
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: ULkg0tQTRK2bkU9fNv3IJD
              variation_total_price_money:
                amount: 500
                currency: USD
            - applied_discounts:
                - applied_money:
                    amount: 300
                    currency: USD
                  discount_uid: zGsRZP69aqSSR9lq9euSPB
                  uid: qa8LwwZK82FgSEkQc2HYVC
              base_price_money:
                amount: 300
                currency: USD
              gross_sales_money:
                amount: 600
                currency: USD
              name: Item 2
              quantity: "2"
              total_discount_money:
                amount: 300
                currency: USD
              total_money:
                amount: 300
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: mumY8Nun4BC5aKe2yyx5a
              variation_total_price_money:
                amount: 600
                currency: USD
          location_id: D7AVYMEAPJ3A3
          net_amounts:
            discount_money:
              amount: 550
              currency: USD
            service_charge_money:
              amount: 0
              currency: USD
            tax_money:
              amount: 0
              currency: USD
            tip_money:
              amount: 0
              currency: USD
            total_money:
              amount: 550
              currency: USD
          state: OPEN
          total_discount_money:
            amount: 550
            currency: USD
          total_money:
            amount: 550
            currency: USD
          total_service_charge_money:
            amount: 0
            currency: USD
          total_tax_money:
            amount: 0
            currency: USD
          total_tip_money:
            amount: 0
            currency: USD
          updated_at: 2020-05-18T16:30:49.614Z
          version: 1
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        order:
          $ref: "#/components/schemas/Order"
      type: object
      x-is-beta: true
      x-release-status: BETA
    CancelBookingRequest:
      description: ""
      example:
        booking_version: 1
      properties:
        booking_version:
          description: The revision number for the booking used for optimistic concurrency.
          minimum: 0
          type: integer
        idempotency_key:
          description: A unique key to make this request an idempotent operation.
          maxLength: 255
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    CancelBookingResponse:
      description: ""
      example:
        booking:
          appointment_segments:
            - duration_minutes: 60
              service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
              service_variation_version: 1599775456731
              team_member_id: TMXUrsBWWcHTt79t
          created_at: 2020-10-28T15:47:41Z
          customer_id: EX2QSVGTZN4K1E5QE1CBFNVQ8M
          customer_note: ""
          id: zkras0xv0xwswx
          location_id: LEQHH0YY8B42M
          seller_note: ""
          start_at: 2020-11-26T13:00:00Z
          status: CANCELLED_BY_CUSTOMER
          updated_at: 2020-10-28T15:49:25Z
          version: 1
        errors: []
      properties:
        booking:
          $ref: "#/components/schemas/Booking"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    CancelInvoiceRequest:
      description: Describes a `CancelInvoice` request.
      example:
        request_body:
          version: 0
      properties:
        version:
          description: |-
            The version of the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) to cancel.
            If you do not know the version, you can call 
            [GetInvoice](https://developer.squareup.com/reference/square_2021-08-18/invoices-api/get-invoice) or [ListInvoices](https://developer.squareup.com/reference/square_2021-08-18/invoices-api/list-invoices).
          type: integer
      required:
        - version
      type: object
      x-release-status: PUBLIC
    CancelInvoiceResponse:
      description: The response returned by the `CancelInvoice` request.
      example:
        invoice:
          accepted_payment_methods:
            bank_account: false
            card: true
            square_gift_card: false
          created_at: 2020-06-18T17:45:13Z
          custom_fields:
            - label: Event Reference Number
              placement: ABOVE_LINE_ITEMS
              value: "Ref. #1234"
            - label: Terms of Service
              placement: BELOW_LINE_ITEMS
              value: The terms of service are...
          delivery_method: EMAIL
          description: We appreciate your business!
          id: inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
          invoice_number: inv-100
          location_id: ES0RJRZYEC39A
          order_id: CAISENgvlJ6jLWAzERDzjyHVybY
          payment_requests:
            - automatic_payment_source: NONE
              computed_amount_money:
                amount: 10000
                currency: USD
              due_date: 2030-01-24
              reminders:
                - message: Your invoice is due tomorrow
                  relative_scheduled_days: -1
                  status: PENDING
                  uid: beebd363-e47f-4075-8785-c235aaa7df11
              request_type: BALANCE
              tipping_enabled: true
              total_completed_amount_money:
                amount: 0
                currency: USD
              uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
          primary_recipient:
            customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            email_address: Amelia.Earhart@example.com
            family_name: Earhart
            given_name: Amelia
            phone_number: 1-212-555-4240
          scheduled_at: 2030-01-13T10:00:00Z
          status: CANCELED
          timezone: America/Los_Angeles
          title: Event Planning Services
          updated_at: 2020-06-18T18:23:11Z
          version: 1
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        invoice:
          $ref: "#/components/schemas/Invoice"
      type: object
      x-release-status: PUBLIC
    CancelPaymentByIdempotencyKeyRequest:
      description: |-
        Describes a request to cancel a payment using 
        [CancelPaymentByIdempotencyKey](https://developer.squareup.com/reference/square_2021-08-18/payments-api/cancel-payment-by-idempotency-key).
      example:
        request_body:
          idempotency_key: a7e36d40-d24b-11e8-b568-0800200c9a66
      properties:
        idempotency_key:
          description: The `idempotency_key` identifying the payment to be canceled.
          maxLength: 45
          minLength: 1
          type: string
      required:
        - idempotency_key
      type: object
      x-release-status: PUBLIC
    CancelPaymentByIdempotencyKeyResponse:
      description: |-
        Defines the response returned by 
        [CancelPaymentByIdempotencyKey](https://developer.squareup.com/reference/square_2021-08-18/payments-api/cancel-payment-by-idempotency-key).
        On success, `errors` is empty.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    CancelPaymentRequest:
      description: |-
        Describes the request to cancel (void) a payment using 
        [CancelPayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/cancel-payment). 
        You can only cancel a payment that is approved (not completed).
        For more information, see 
        [Delayed capture of a payment](https://developer.squareup.com/docs/payments-api/take-payments/card-payments#delayed-capture-of-a-card-payment).
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    CancelPaymentResponse:
      description: Defines the response returned by [CancelPayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/cancel-payment).
      example:
        payment:
          amount_money:
            amount: 200
            currency: USD
          app_fee_money:
            amount: 10
            currency: USD
          approved_money:
            amount: 200
            currency: USD
          card_details:
            auth_result_code: eWZBDh
            avs_status: AVS_ACCEPTED
            card:
              bin: "411111"
              card_brand: VISA
              card_type: DEBIT
              exp_month: 2
              exp_year: 2024
              fingerprint: sq-1-9PP0tWfcM6vIsYmfsesdjfhduHSDFNdJFNDfDNFjdfjpseirDErsaP
              last_4: "1234"
              prepaid_type: PREPAID
            card_payment_timeline:
              authorized_at: 2018-10-17T20:38:46.753Z
              voided_at: 2018-10-17T20:38:57.793Z
            cvv_status: CVV_ACCEPTED
            entry_method: KEYED
            statement_description: SQ *MY MERCHANT
            status: VOIDED
          created_at: 2018-10-17T20:38:46.743Z
          customer_id: RDX9Z4XTIZR7MRZJUXNY9HUK6I
          id: GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
          location_id: XTI0H92143A39
          note: Brief description
          order_id: m2Hr8Hk8A3CTyQQ1k4ynExg92tO3
          reference_id: "123456"
          source_type: CARD
          status: CANCELED
          total_money:
            amount: 200
            currency: USD
          updated_at: 2018-10-17T20:38:57.693Z
          version_token: lAITJ6l8I8tFu62mCf2W4sxJQxN9FOaH5zwfsdPf7Dm6o
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        payment:
          $ref: "#/components/schemas/Payment"
      type: object
      x-release-status: PUBLIC
    CancelSubscriptionRequest:
      description: |-
        Defines parameters in a
        [CancelSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/cancel-subscription) endpoint request.
      properties: {}
      type: object
      x-release-status: PUBLIC
    CancelSubscriptionResponse:
      description: |-
        Defines fields that are included in a
        [CancelSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/cancel-subscription) response.
      example:
        subscription:
          canceled_date: 2020-05-01
          card_id: ccof:qy5x8hHGYsgLrp4Q4GB
          created_at: 2020-08-03T21:53:10Z
          customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
          id: 910afd30-464a-4e00-a8d8-2296eEXAMPLE
          location_id: S8GWD5R9QB376
          paid_until_date: 2020-05-01
          plan_id: 6JHXF3B2CW3YKHDV4XEM674H
          start_date: 2020-04-24
          status: ACTIVE
          timezone: America/Los_Angeles
          version: 1594311617331
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        subscription:
          $ref: "#/components/schemas/Subscription"
      type: object
      x-release-status: PUBLIC
    CancelTerminalCheckoutRequest:
      description: ""
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    CancelTerminalCheckoutResponse:
      description: ""
      example:
        checkout:
          amount_money:
            amount: 123
            currency: USD
          app_id: APP_ID
          cancel_reason: SELLER_CANCELED
          created_at: 2020-03-16T15:31:19.934Z
          deadline_duration: PT10M
          device_options:
            device_id: dbb5d83a-7838-11ea-bc55-0242ac130003
            skip_receipt_screen: true
            tip_settings:
              allow_tipping: true
          id: S1yDlPQx7slqO
          reference_id: id36815
          status: CANCELED
          updated_at: 2020-03-16T15:31:45.787Z
      properties:
        checkout:
          $ref: "#/components/schemas/TerminalCheckout"
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    CancelTerminalRefundRequest:
      description: ""
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    CancelTerminalRefundResponse:
      description: ""
      example:
        refund:
          amount_money:
            amount: 100
            currency: CAD
          app_id: sandbox-sq0idb-c2OuYt13YaCAeJq_2cd8OQ
          cancel_reason: SELLER_CANCELED
          card:
            bin: "411111"
            card_brand: INTERAC
            card_type: CREDIT
            exp_month: 1
            exp_year: 2022
            fingerprint: sq-1-B1fP9MNNmZgVVaPKRND6oDKYbz25S2cTvg9Mzwg3RMTK1zT1PiGRT-AE3nTA8vSmmw
            last_4: "1111"
          created_at: 2020-10-21T22:47:23.241Z
          deadline_duration: PT5M
          device_id: 42690809-faa2-4701-a24b-19d3d34c9aaa
          id: g6ycb6HD-5O5OvgkcNUhl7JBuINflcjKqUzXZY
          location_id: 76C9W6K8CNNQ5
          order_id: kcuKDKreRaI4gF4TjmEgZjHk8Z7YY
          payment_id: 5O5OvgkcNUhl7JBuINflcjKqUzXZY
          reason: reason
          status: CANCELED
          updated_at: 2020-10-21T22:47:30.096Z
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refund:
          $ref: "#/components/schemas/TerminalRefund"
      type: object
      x-release-status: PUBLIC
    CaptureTransactionRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CaptureTransaction/CaptureTransactionRequest.csharp
        java: /sdk_samples/CaptureTransaction/CaptureTransactionRequest.java
        javascript: /sdk_samples/CaptureTransaction/CaptureTransactionRequest.javascript
        php: /sdk_samples/CaptureTransaction/CaptureTransactionRequest.php
        python: /sdk_samples/CaptureTransaction/CaptureTransactionRequest.python
        ruby: /sdk_samples/CaptureTransaction/CaptureTransactionRequest.ruby
    CaptureTransactionResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [CaptureTransaction](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/capture-transaction) endpoint.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CaptureTransaction/CaptureTransactionResponse.csharp
        java: /sdk_samples/CaptureTransaction/CaptureTransactionResponse.java
        javascript: /sdk_samples/CaptureTransaction/CaptureTransactionResponse.javascript
        php: /sdk_samples/CaptureTransaction/CaptureTransactionResponse.php
        python: /sdk_samples/CaptureTransaction/CaptureTransactionResponse.python
        ruby: /sdk_samples/CaptureTransaction/CaptureTransactionResponse.ruby
    Card:
      description: |-
        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.
      properties:
        billing_address:
          $ref: "#/components/schemas/Address"
        bin:
          description: |-
            The first six digits of the card number, known as the Bank Identification Number (BIN). Only the Payments API
            returns this field.
          maxLength: 6
          type: string
          x-read-only: true
        card_brand:
          description: The card's brand.
          type: string
          x-read-only: true
        card_type:
          description: |-
            The type of the card.
            The Card object includes this field only in response to Payments API calls.
          type: string
          x-read-only: true
        cardholder_name:
          description: The name of the cardholder.
          maxLength: 96
          type: string
        customer_id:
          description: The ID of a customer created using the Customers API to be associated with the card.
          type: string
        enabled:
          description: Indicates whether or not a card can be used for payments.
          type: boolean
          x-read-only: true
        exp_month:
          description: The expiration month of the associated card as an integer between 1 and 12.
          format: int64
          type: integer
        exp_year:
          description: The four-digit year of the card's expiration date.
          format: int64
          type: integer
        fingerprint:
          description: |-
            __Not currently set.__ Intended as a Square-assigned identifier, based
            on the card number, to identify the card across multiple locations within a
            single application.
          maxLength: 255
          type: string
          x-read-only: true
        id:
          description: Unique ID for this card. Generated by Square.
          maxLength: 64
          type: string
          x-read-only: true
        last_4:
          description: The last 4 digits of the card number.
          maxLength: 4
          type: string
          x-read-only: true
        prepaid_type:
          description: |-
            Indicates whether the Card is prepaid or not.
            The Card object includes this field only in response to Payments API calls.
          type: string
          x-read-only: true
        reference_id:
          description: |-
            An optional user-defined reference ID that associates this card with
            another entity in an external system. For example, a customer ID from an
            external customer management system.
          maxLength: 128
          type: string
        version:
          description: |-
            Current version number of the card. Increments with each card update. Requests to update an
            existing Card object will be rejected unless the version in the request matches the current
            version for the Card.
          format: int64
          type: integer
      type: object
      x-release-status: PUBLIC
    CardBrand:
      description: Indicates a card's brand, such as `VISA` or `MASTERCARD`.
      enum:
        - OTHER_BRAND
        - VISA
        - MASTERCARD
        - AMERICAN_EXPRESS
        - DISCOVER
        - DISCOVER_DINERS
        - JCB
        - CHINA_UNIONPAY
        - SQUARE_GIFT_CARD
        - SQUARE_CAPITAL_CARD
        - INTERAC
        - EFTPOS
        - FELICA
        - EBT
      type: string
      x-enum-elements:
        - description: ""
          name: OTHER_BRAND
        - description: ""
          name: VISA
        - description: ""
          name: MASTERCARD
        - description: ""
          name: AMERICAN_EXPRESS
        - description: ""
          name: DISCOVER
        - description: ""
          name: DISCOVER_DINERS
        - description: ""
          name: JCB
        - description: ""
          name: CHINA_UNIONPAY
        - description: ""
          name: SQUARE_GIFT_CARD
        - description: ""
          name: SQUARE_CAPITAL_CARD
        - description: ""
          name: INTERAC
        - description: ""
          name: EFTPOS
        - description: ""
          name: FELICA
        - description: ""
          name: EBT
      x-release-status: PUBLIC
    CardPaymentDetails:
      description: Reflects the current status of a card payment. Contains only non-confidential information.
      properties:
        application_cryptogram:
          description: For EMV payments, the cryptogram generated for the payment.
          maxLength: 16
          type: string
        application_identifier:
          description: For EMV payments, the application ID identifies the EMV application used for the payment.
          maxLength: 32
          type: string
        application_name:
          description: For EMV payments, the human-readable name of the EMV application used for the payment.
          maxLength: 16
          type: string
        auth_result_code:
          description: |-
            The status code returned by the card issuer that describes the payment's
            authorization status.
          maxLength: 10
          type: string
        avs_status:
          description: |-
            The status code returned from the Address Verification System (AVS) check. The code can be
            `AVS_ACCEPTED`, `AVS_REJECTED`, or `AVS_NOT_CHECKED`.
          maxLength: 50
          type: string
        card:
          $ref: "#/components/schemas/Card"
        card_payment_timeline:
          $ref: "#/components/schemas/CardPaymentTimeline"
        cvv_status:
          description: |-
            The status code returned from the Card Verification Value (CVV) check. The code can be
            `CVV_ACCEPTED`, `CVV_REJECTED`, or `CVV_NOT_CHECKED`.
          maxLength: 50
          type: string
        device_details:
          $ref: "#/components/schemas/DeviceDetails"
        entry_method:
          description: |-
            The method used to enter the card's details for the payment. The method can be
            `KEYED`, `SWIPED`, `EMV`, `ON_FILE`, or `CONTACTLESS`.
          maxLength: 50
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refund_requires_card_presence:
          description: |-
            Whether the card must be physically present for the payment to
            be refunded.  If set to `true`, the card must be present.
          type: boolean
          x-is-beta: true
          x-release-status: BETA
        statement_description:
          description: |-
            The statement description sent to the card networks.

            Note: The actual statement description varies and is likely to be truncated and appended with
            additional information on a per issuer basis.
          maxLength: 50
          type: string
        status:
          description: |-
            The card payment's current state. The state can be AUTHORIZED, CAPTURED, VOIDED, or
            FAILED.
          maxLength: 50
          type: string
        verification_method:
          description: |-
            For EMV payments, the method used to verify the cardholder's identity. The method can be
            `PIN`, `SIGNATURE`, `PIN_AND_SIGNATURE`, `ON_DEVICE`, or `NONE`.
          maxLength: 50
          type: string
        verification_results:
          description: |-
            For EMV payments, the results of the cardholder verification. The result can be
            `SUCCESS`, `FAILURE`, or `UNKNOWN`.
          maxLength: 50
          type: string
      type: object
      x-release-status: PUBLIC
    CardPaymentTimeline:
      description: The timeline for card payments.
      properties:
        authorized_at:
          description: The timestamp when the payment was authorized, in RFC 3339 format.
          type: string
        captured_at:
          description: The timestamp when the payment was captured, in RFC 3339 format.
          type: string
        voided_at:
          description: The timestamp when the payment was voided, in RFC 3339 format.
          type: string
      type: object
      x-release-status: PUBLIC
    CardPrepaidType:
      description: Indicates a card's prepaid type, such as `NOT_PREPAID` or `PREPAID`.
      enum:
        - UNKNOWN_PREPAID_TYPE
        - NOT_PREPAID
        - PREPAID
      type: string
      x-enum-elements:
        - description: ""
          name: UNKNOWN_PREPAID_TYPE
        - description: ""
          name: NOT_PREPAID
        - description: ""
          name: PREPAID
      x-release-status: PUBLIC
    CardSquareProduct:
      description: ""
      enum:
        - UNKNOWN_SQUARE_PRODUCT
        - CONNECT_API
        - DASHBOARD
        - REGISTER_CLIENT
        - BUYER_DASHBOARD
        - WEB
        - INVOICES
        - GIFT_CARD
        - VIRTUAL_TERMINAL
        - READER_SDK
      type: string
      x-enum-elements:
        - description: ""
          name: UNKNOWN_SQUARE_PRODUCT
        - description: ""
          name: CONNECT_API
        - description: ""
          name: DASHBOARD
        - description: ""
          name: REGISTER_CLIENT
        - description: ""
          name: BUYER_DASHBOARD
        - description: ""
          name: WEB
        - description: ""
          name: INVOICES
        - description: ""
          name: GIFT_CARD
        - description: ""
          name: VIRTUAL_TERMINAL
        - description: ""
          name: READER_SDK
      x-release-status: PUBLIC
    CardType:
      description: Indicates a card's type, such as `CREDIT` or `DEBIT`.
      enum:
        - UNKNOWN_CARD_TYPE
        - CREDIT
        - DEBIT
      type: string
      x-enum-elements:
        - description: ""
          name: UNKNOWN_CARD_TYPE
        - description: ""
          name: CREDIT
        - description: ""
          name: DEBIT
      x-release-status: PUBLIC
    CashDrawerDevice:
      description: ""
      properties:
        id:
          description: The device Square-issued ID
          type: string
        name:
          description: The device merchant-specified name.
          type: string
      type: object
      x-release-status: PUBLIC
    CashDrawerEventType:
      description: |-
        The types of events on a CashDrawerShift.
        Each event type represents an employee action on the actual cash drawer
        represented by a CashDrawerShift.
      enum:
        - NO_SALE
        - CASH_TENDER_PAYMENT
        - OTHER_TENDER_PAYMENT
        - CASH_TENDER_CANCELLED_PAYMENT
        - OTHER_TENDER_CANCELLED_PAYMENT
        - CASH_TENDER_REFUND
        - OTHER_TENDER_REFUND
        - PAID_IN
        - PAID_OUT
      type: string
      x-enum-elements:
        - description: |-
            Triggered when a no sale occurs on a cash drawer.
            A CashDrawerEvent of this type must have a zero money amount.
          name: NO_SALE
        - description: |-
            Triggered when a cash tender payment occurs on a cash drawer.
            A CashDrawerEvent of this type can must not have a negative amount.
          name: CASH_TENDER_PAYMENT
        - description: |-
            Triggered when a check, gift card, or other non-cash payment occurs
            on a cash drawer.
            A CashDrawerEvent of this type must have a zero money amount.
          name: OTHER_TENDER_PAYMENT
        - description: |-
            Triggered when a split tender bill is cancelled after cash has been
            tendered.
            A CASH_TENDER_CANCELLED_PAYMENT should have a corresponding CASH_TENDER_PAYMENT.
            A CashDrawerEvent of this type must not have a negative amount.
          name: CASH_TENDER_CANCELLED_PAYMENT
        - description: |-
            Triggered when a split tender bill is cancelled after a non-cash tender
            has been tendered. An OTHER_TENDER_CANCELLED_PAYMENT should have a corresponding
            OTHER_TENDER_PAYMENT. A CashDrawerEvent of this type must have a zero money
            amount.
          name: OTHER_TENDER_CANCELLED_PAYMENT
        - description: |-
            Triggered when a cash tender refund occurs.
            A CashDrawerEvent of this type must not have a negative amount.
          name: CASH_TENDER_REFUND
        - description: |-
            Triggered when an other tender refund occurs.
            A CashDrawerEvent of this type must have a zero money amount.
          name: OTHER_TENDER_REFUND
        - description: |-
            Triggered when money unrelated to a payment is added to the cash drawer.
            For example, an employee adds coins to the drawer.
            A CashDrawerEvent of this type must not have a negative amount.
          name: PAID_IN
        - description: |-
            Triggered when money is removed from the drawer for other reasons
            than making change.
            For example, an employee pays a delivery person with cash from the cash drawer.
            A CashDrawerEvent of this type must not have a negative amount.
          name: PAID_OUT
      x-release-status: PUBLIC
    CashDrawerShift:
      description: |-
        This model gives the details of a cash drawer shift.
        The cash_payment_money, cash_refund_money, cash_paid_in_money,
        and cash_paid_out_money fields are all computed by summing their respective
        event types.
      properties:
        cash_paid_in_money:
          $ref: "#/components/schemas/Money"
        cash_paid_out_money:
          $ref: "#/components/schemas/Money"
        cash_payment_money:
          $ref: "#/components/schemas/Money"
        cash_refunds_money:
          $ref: "#/components/schemas/Money"
        closed_at:
          description: The time when the shift was closed, in ISO 8601 format.
          type: string
        closed_cash_money:
          $ref: "#/components/schemas/Money"
        closing_employee_id:
          description: |-
            The ID of the employee that closed the cash drawer shift by auditing
            the cash drawer contents.
          type: string
        description:
          description: The free-form text description of a cash drawer by an employee.
          type: string
        device:
          $ref: "#/components/schemas/CashDrawerDevice"
        employee_ids:
          description: |-
            The IDs of all employees that were logged into Square Point of Sale at any
            point while the cash drawer shift was open.
          items:
            type: string
          type: array
        ended_at:
          description: The time when the shift ended, in ISO 8601 format.
          type: string
        ending_employee_id:
          description: The ID of the employee that ended the cash drawer shift.
          type: string
        expected_cash_money:
          $ref: "#/components/schemas/Money"
        id:
          description: The shift unique ID.
          type: string
        opened_at:
          description: The time when the shift began, in ISO 8601 format.
          type: string
        opened_cash_money:
          $ref: "#/components/schemas/Money"
        opening_employee_id:
          description: The ID of the employee that started the cash drawer shift.
          type: string
        state:
          description: The shift current state.
          type: string
      type: object
      x-release-status: PUBLIC
    CashDrawerShiftEvent:
      description: ""
      properties:
        created_at:
          description: The event time in ISO 8601 format.
          type: string
          x-read-only: true
        description:
          description: |-
            An optional description of the event, entered by the employee that
            created the event.
          type: string
        employee_id:
          description: The ID of the employee that created the event.
          type: string
        event_money:
          $ref: "#/components/schemas/Money"
        event_type:
          description: The type of cash drawer shift event.
          type: string
        id:
          description: The unique ID of the event.
          type: string
      type: object
      x-release-status: PUBLIC
    CashDrawerShiftState:
      description: The current state of a cash drawer shift.
      enum:
        - OPEN
        - ENDED
        - CLOSED
      type: string
      x-enum-elements:
        - description: An open cash drawer shift.
          name: OPEN
        - description: A cash drawer shift that is ended but has not yet had an employee content audit.
          name: ENDED
        - description: |-
            An ended cash drawer shift that is closed with a completed employee
            content audit and recorded result.
          name: CLOSED
      x-release-status: PUBLIC
    CashDrawerShiftSummary:
      description: |-
        The summary of a closed cash drawer shift.
        This model contains only the money counted to start a cash drawer shift, counted
        at the end of the shift, and the amount that should be in the drawer at shift
        end based on summing all cash drawer shift events.
      properties:
        closed_at:
          description: The shift close time in ISO 8601 format.
          type: string
        closed_cash_money:
          $ref: "#/components/schemas/Money"
        description:
          description: An employee free-text description of a cash drawer shift.
          type: string
        ended_at:
          description: The shift end time in ISO 8601 format.
          type: string
        expected_cash_money:
          $ref: "#/components/schemas/Money"
        id:
          description: The shift unique ID.
          type: string
        opened_at:
          description: The shift start time in ISO 8601 format.
          type: string
        opened_cash_money:
          $ref: "#/components/schemas/Money"
        state:
          description: The shift current state.
          type: string
      type: object
      x-release-status: PUBLIC
    CashPaymentDetails:
      description: |-
        Stores details about a cash payment. Contains only non-confidential information. For more information, see 
        [Take Cash Payments](https://developer.squareup.com/docs/payments-api/take-payments/cash-payments).
      properties:
        buyer_supplied_money:
          $ref: "#/components/schemas/Money"
        change_back_money:
          $ref: "#/components/schemas/Money"
      required:
        - buyer_supplied_money
      type: object
      x-release-status: PUBLIC
    CatalogCategory:
      description: A category to which a `CatalogItem` instance belongs.
      example:
        object:
          category_data:
            name: Beverages
          id: "#Beverages"
          present_at_all_locations: true
          type: CATEGORY
      properties:
        name:
          description: The category name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points.
          maxLength: 255
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogCustomAttributeDefinition:
      description: |-
        Contains information defining a custom attribute. Custom attributes are
        intended to store additional information about a catalog object or to associate a
        catalog object with an entity in another system. Do not use custom attributes
        to store any sensitive information (personally identifiable information, card details, etc.).
        [Read more about custom attributes](https://developer.squareup.com/docs/catalog-api/add-custom-attributes)
      properties:
        allowed_object_types:
          description: |-
            The set of Catalog Object Types that this Custom Attribute may be applied to.
            Currently, only `ITEM` and `ITEM_VARIATION` are allowed. At least one type must be included.
          items:
            type: string
          type: array
        app_visibility:
          description: |-
            The visibility of a custom attribute to applications other than the application
            that created the attribute.
          type: string
        custom_attribute_usage_count:
          description: |-
            __Read-only.__ The number of custom attributes that reference this
            custom attribute definition. Set by the server in response to a ListCatalog
            request with `include_counts` set to `true`.  If the actual count is greater
            than 100, `custom_attribute_usage_count` will be set to `100`.
          type: integer
          x-read-only: true
        description:
          description: |-
            Seller-oriented description of the meaning of this Custom Attribute,
            any constraints that the seller should observe, etc. May be displayed as a tooltip in Square UIs.
          maxLength: 255
          type: string
        key:
          description: |-
            The name of the desired custom attribute key that can be used to access
            the custom attribute value on catalog objects. Cannot be modified after the
            custom attribute definition has been created.
            Must be between 1 and 60 characters, and may only contain the characters `[a-zA-Z0-9_-]`.
          maxLength: 60
          minLength: 1
          pattern: ^[a-zA-Z0-9_-]*$
          type: string
        name:
          description: |2-
             The name of this definition for API and seller-facing UI purposes.
            The name must be unique within the (merchant, application) pair. Required.
            May not be empty and may not exceed 255 characters. Can be modified after creation.
          maxLength: 255
          minLength: 1
          type: string
        number_config:
          $ref: "#/components/schemas/CatalogCustomAttributeDefinitionNumberConfig"
        selection_config:
          $ref: "#/components/schemas/CatalogCustomAttributeDefinitionSelectionConfig"
        seller_visibility:
          description: |-
            The visibility of a custom attribute in seller-facing UIs (including Square Point
            of Sale applications and Square Dashboard). May be modified.
          type: string
        source_application:
          $ref: "#/components/schemas/SourceApplication"
        string_config:
          $ref: "#/components/schemas/CatalogCustomAttributeDefinitionStringConfig"
        type:
          description: |-
            The type of this custom attribute. Cannot be modified after creation.
            Required.
          type: string
      required:
        - type
        - name
        - allowed_object_types
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeDefinitionAppVisibility:
      description: |-
        Defines the visibility of a custom attribute to applications other than their
        creating application.
      enum:
        - APP_VISIBILITY_HIDDEN
        - APP_VISIBILITY_READ_ONLY
        - APP_VISIBILITY_READ_WRITE_VALUES
      type: string
      x-enum-elements:
        - description: Other applications cannot read this custom attribute.
          name: APP_VISIBILITY_HIDDEN
        - description: |-
            Other applications can read this custom attribute definition and
            values.
          name: APP_VISIBILITY_READ_ONLY
        - description: |-
            Other applications can read and write custom attribute values on objects.
            They can read but cannot edit the custom attribute definition.
          name: APP_VISIBILITY_READ_WRITE_VALUES
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeDefinitionNumberConfig:
      description: ""
      properties:
        precision:
          description: |-
            An integer between 0 and 5 that represents the maximum number of
            positions allowed after the decimal in number custom attribute values
            For example:

            - if the precision is 0, the quantity can be 1, 2, 3, etc.
            - if the precision is 1, the quantity can be 0.1, 0.2, etc.
            - if the precision is 2, the quantity can be 0.01, 0.12, etc.

            Default: 5
          maximum: 5
          minimum: 0
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeDefinitionSelectionConfig:
      description: Configuration associated with `SELECTION`-type custom attribute definitions.
      properties:
        allowed_selections:
          description: |-
            The set of valid `CatalogCustomAttributeSelections`. Up to a maximum of 100
            selections can be defined. Can be modified.
          items:
            $ref: "#/components/schemas/CatalogCustomAttributeDefinitionSelectionConfigCustomAttributeSelection"
          type: array
        max_allowed_selections:
          description: |-
            The maximum number of selections that can be set. The maximum value for this
            attribute is 100. The default value is 1. The value can be modified, but changing the value will not
            affect existing custom attribute values on objects. Clients need to
            handle custom attributes with more selected values than allowed by this limit.
          maximum: 100
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeDefinitionSelectionConfigCustomAttributeSelection:
      description: A named selection for this `SELECTION`-type custom attribute definition.
      properties:
        name:
          description: Selection name, unique within `allowed_selections`.
          maxLength: 255
          minLength: 1
          type: string
        uid:
          description: Unique ID set by Square.
          type: string
      required:
        - name
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeDefinitionSellerVisibility:
      description: |-
        Defines the visibility of a custom attribute to sellers in Square
        client applications, Square APIs or in Square UIs (including Square Point
        of Sale applications and Square Dashboard).
      enum:
        - SELLER_VISIBILITY_HIDDEN
        - SELLER_VISIBILITY_READ_WRITE_VALUES
      type: string
      x-enum-elements:
        - description: |-
            Sellers cannot read this custom attribute in Square client
            applications or Square APIs.
          name: SELLER_VISIBILITY_HIDDEN
        - description: |-
            Sellers can read and write this custom attribute value in catalog objects,
            but cannot edit the custom attribute definition.
          name: SELLER_VISIBILITY_READ_WRITE_VALUES
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeDefinitionStringConfig:
      description: Configuration associated with Custom Attribute Definitions of type `STRING`.
      properties:
        enforce_uniqueness:
          description: |-
            If true, each Custom Attribute instance associated with this Custom Attribute
            Definition must have a unique value within the seller's catalog. For
            example, this may be used for a value like a SKU that should not be
            duplicated within a seller's catalog. May not be modified after the
            definition has been created.
          type: boolean
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeDefinitionType:
      description: Defines the possible types for a custom attribute.
      enum:
        - STRING
        - BOOLEAN
        - NUMBER
        - SELECTION
      type: string
      x-enum-elements:
        - description: A free-form string containing up to 255 characters.
          name: STRING
        - description: A `true` or `false` value.
          name: BOOLEAN
        - description: A decimal string representation of a number. Can support up to 5 digits after the decimal point.
          name: NUMBER
        - description: One or more choices from `allowed_selections`.
          name: SELECTION
      x-is-beta: true
      x-release-status: BETA
    CatalogCustomAttributeValue:
      description: |-
        An instance of a custom attribute. Custom attributes can be defined and
        added to `ITEM` and `ITEM_VARIATION` type catalog objects.
        [Read more about custom attributes](https://developer.squareup.com/docs/catalog-api/add-custom-attributes).
      properties:
        boolean_value:
          description: A `true` or `false` value. Populated if `type` = `BOOLEAN`.
          type: boolean
        custom_attribute_definition_id:
          description: __Read-only.__ The id of the [CatalogCustomAttributeDefinition](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogCustomAttributeDefinition) this value belongs to.
          type: string
          x-read-only: true
        key:
          description: __Read-only.__ A copy of key from the associated `CatalogCustomAttributeDefinition`.
          type: string
          x-read-only: true
        name:
          description: The name of the custom attribute.
          type: string
        number_value:
          description: |-
            Populated if `type` = `NUMBER`. Contains a string
            representation of a decimal number, using a `.` as the decimal separator.
          type: string
        selection_uid_values:
          description: One or more choices from `allowed_selections`. Populated if `type` = `SELECTION`.
          items:
            type: string
          type: array
        string_value:
          description: The string value of the custom attribute.  Populated if `type` = `STRING`.
          type: string
        type:
          description: __Read-only.__ A copy of type from the associated `CatalogCustomAttributeDefinition`.
          type: string
          x-read-only: true
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogDiscount:
      description: A discount applicable to items.
      example:
        object:
          discount_data:
            discount_type: FIXED_PERCENTAGE
            label_color: red
            name: Welcome to the Dark(Roast) Side!
            percentage: "5.4"
            pin_required: false
          id: "#Maythe4th"
          present_at_all_locations: true
          type: DISCOUNT
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        discount_type:
          description: Indicates whether the discount is a fixed amount or percentage, or entered at the time of sale.
          type: string
        label_color:
          description: The color of the discount display label in the Square Point of Sale app. This must be a valid hex color code.
          type: string
        modify_tax_basis:
          description: |-
            Indicates whether this discount should reduce the price used to calculate tax.

            Most discounts should use `MODIFY_TAX_BASIS`. However, in some circumstances taxes must
            be calculated based on an item's price, ignoring a particular discount. For example,
            in many US jurisdictions, a manufacturer coupon or instant rebate reduces the price a
            customer pays but does not reduce the sale price used to calculate how much sales tax is
            due. In this case, the discount representing that manufacturer coupon should have
            `DO_NOT_MODIFY_TAX_BASIS` for this field.

            If you are unsure whether you need to use this field, consult your tax professional.
          type: string
        name:
          description: The discount name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The percentage of the discount as a string representation of a decimal number, using a `.` as the decimal
            separator and without a `%` sign. A value of `7.5` corresponds to `7.5%`. Specify a percentage of `0` if `discount_type`
            is `VARIABLE_PERCENTAGE`.

            Do not use this field for amount-based or variable discounts.
          type: string
        pin_required:
          description: |-
            Indicates whether a mobile staff member needs to enter their PIN to apply the
            discount to a payment in the Square Point of Sale app.
          type: boolean
      type: object
      x-release-status: PUBLIC
    CatalogDiscountModifyTaxBasis:
      description: ""
      enum:
        - MODIFY_TAX_BASIS
        - DO_NOT_MODIFY_TAX_BASIS
      type: string
      x-enum-elements:
        - description: Application of the discount will modify the tax basis.
          name: MODIFY_TAX_BASIS
        - description: Application of the discount will not modify the tax basis.
          name: DO_NOT_MODIFY_TAX_BASIS
      x-release-status: PUBLIC
    CatalogDiscountType:
      description: How to apply a CatalogDiscount to a CatalogItem.
      enum:
        - FIXED_PERCENTAGE
        - FIXED_AMOUNT
        - VARIABLE_PERCENTAGE
        - VARIABLE_AMOUNT
      type: string
      x-enum-elements:
        - description: Apply the discount as a fixed percentage (e.g., 5%) off the item price.
          name: FIXED_PERCENTAGE
        - description: Apply the discount as a fixed amount (e.g., $1.00) off the item price.
          name: FIXED_AMOUNT
        - description: Apply the discount as a variable percentage off the item price. The percentage will be specified at the time of sale.
          name: VARIABLE_PERCENTAGE
        - description: Apply the discount as a variable amount off the item price. The amount will be specified at the time of sale.
          name: VARIABLE_AMOUNT
      x-release-status: PUBLIC
    CatalogIdMapping:
      description: |-
        A mapping between a temporary client-supplied ID and a permanent server-generated ID.

        When calling [UpsertCatalogObject](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/upsert-catalog-object) or
        [BatchUpsertCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/batch-upsert-catalog-objects) to
        create a [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) instance, you can supply
        a temporary ID for the to-be-created object, especially when the object is to be referenced
        elsewhere in the same request body. This temporary ID can be any string unique within
        the call, but must be prefixed by "#".

        After the request is submitted and the object created, a permanent server-generated ID is assigned
        to the new object. The permanent ID is unique across the Square catalog.
      properties:
        client_object_id:
          description: The client-supplied temporary `#`-prefixed ID for a new `CatalogObject`.
          type: string
        object_id:
          description: The permanent ID for the CatalogObject created by the server.
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogImage:
      description: |-
        An image file to use in Square catalogs. It can be associated with catalog
        items, item variations, and categories.
      properties:
        caption:
          description: |-
            A caption that describes what is shown in the image. Displayed in the
            Square Online Store. This is a searchable attribute for use in applicable query filters
            using the [SearchCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-objects).
          type: string
        name:
          description: |-
            The internal name to identify this image in calls to the Square API.
            This is a searchable attribute for use in applicable query filters
            using the [SearchCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-objects).
            It is not unique and should not be shown in a buyer facing context.
          type: string
        url:
          description: |-
            The URL of this image, generated by Square after an image is uploaded
            using the [CreateCatalogImage](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/create-catalog-image) endpoint.
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogInfoRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/CatalogInfo/CatalogInfoRequest.csharp
        java: /sdk_samples/Catalog/CatalogInfo/CatalogInfoRequest.java
        javascript: /sdk_samples/Catalog/CatalogInfo/CatalogInfoRequest.javascript
        php: /sdk_samples/Catalog/CatalogInfo/CatalogInfoRequest.php
        python: /sdk_samples/Catalog/CatalogInfo/CatalogInfoRequest.python
        ruby: /sdk_samples/Catalog/CatalogInfo/CatalogInfoRequest.ruby
    CatalogInfoResponse:
      description: ""
      example:
        limits:
          batch_delete_max_object_ids: 200
          batch_retrieve_max_object_ids: 1000
          batch_upsert_max_objects_per_batch: 1000
          batch_upsert_max_total_objects: 10000
          search_max_page_limit: 1000
          update_item_modifier_lists_max_item_ids: 1000
          update_item_modifier_lists_max_modifier_lists_to_disable: 1000
          update_item_modifier_lists_max_modifier_lists_to_enable: 1000
          update_item_taxes_max_item_ids: 1000
          update_item_taxes_max_taxes_to_disable: 1000
          update_item_taxes_max_taxes_to_enable: 1000
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        limits:
          $ref: "#/components/schemas/CatalogInfoResponseLimits"
        standard_unit_description_group:
          $ref: "#/components/schemas/StandardUnitDescriptionGroup"
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.csharp
        java: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.java
        javascript: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.javascript
        php: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.php
        python: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.python
        ruby: /sdk_samples/Catalog/CatalogInfo/CatalogInfoResponse.ruby
    CatalogInfoResponseLimits:
      description: ""
      properties:
        batch_delete_max_object_ids:
          description: |-
            The maximum number of object IDs that may be included in a single
            `/v2/catalog/batch-delete` request.
          type: integer
        batch_retrieve_max_object_ids:
          description: |-
            The maximum number of object IDs that may appear in a `/v2/catalog/batch-retrieve`
            request.
          type: integer
        batch_upsert_max_objects_per_batch:
          description: |-
            The maximum number of objects that may appear within a single batch in a
            `/v2/catalog/batch-upsert` request.
          type: integer
        batch_upsert_max_total_objects:
          description: |-
            The maximum number of objects that may appear across all batches in a
            `/v2/catalog/batch-upsert` request.
          type: integer
        search_max_page_limit:
          description: |-
            The maximum number of results that may be returned in a page of a
            `/v2/catalog/search` response.
          type: integer
        update_item_modifier_lists_max_item_ids:
          description: |-
            The maximum number of item IDs that may be included in a single
            `/v2/catalog/update-item-modifier-lists` request.
          type: integer
        update_item_modifier_lists_max_modifier_lists_to_disable:
          description: |-
            The maximum number of modifier list IDs to be disabled that may be included in
            a single `/v2/catalog/update-item-modifier-lists` request.
          type: integer
        update_item_modifier_lists_max_modifier_lists_to_enable:
          description: |-
            The maximum number of modifier list IDs to be enabled that may be included in
            a single `/v2/catalog/update-item-modifier-lists` request.
          type: integer
        update_item_taxes_max_item_ids:
          description: |-
            The maximum number of item IDs that may be included in a single
            `/v2/catalog/update-item-taxes` request.
          type: integer
        update_item_taxes_max_taxes_to_disable:
          description: |-
            The maximum number of tax IDs to be disabled that may be included in a single
            `/v2/catalog/update-item-taxes` request.
          type: integer
        update_item_taxes_max_taxes_to_enable:
          description: |-
            The maximum number of tax IDs to be enabled that may be included in a single
            `/v2/catalog/update-item-taxes` request.
          type: integer
      type: object
      x-release-status: PUBLIC
    CatalogItem:
      description: A [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) instance of the `ITEM` type, also referred to as an item, in the catalog.
      example:
        object:
          id: "#Cocoa"
          item_data:
            abbreviation: Ch
            description: Hot chocolate
            name: Cocoa
            visibility: PRIVATE
          present_at_all_locations: true
          type: ITEM
      properties:
        abbreviation:
          description: |-
            The text of the item's display label in the Square Point of Sale app. Only up to the first five characters of the string are used.
            This attribute is searchable, and its value length is of Unicode code points.
          maxLength: 24
          type: string
        available_electronically:
          description: If `true`, the item can be added to electronically fulfilled orders from the merchant's online store.
          type: boolean
        available_for_pickup:
          description: If `true`, the item can be added to pickup orders from the merchant's online store.
          type: boolean
        available_online:
          description: If `true`, the item can be added to shipping orders from the merchant's online store.
          type: boolean
        category_id:
          description: The ID of the item's category, if any.
          type: string
        description:
          description: The item's description. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points.
          maxLength: 4096
          type: string
        item_options:
          description: |-
            List of item options IDs for this item. Used to manage and group item
            variations in a specified order.

            Maximum: 6 item options.
          items:
            $ref: "#/components/schemas/CatalogItemOptionForItem"
          type: array
          x-is-beta: true
          x-release-status: BETA
        label_color:
          description: The color of the item's display label in the Square Point of Sale app. This must be a valid hex color code.
          type: string
        modifier_list_info:
          description: |-
            A set of `CatalogItemModifierListInfo` objects
            representing the modifier lists that apply to this item, along with the overrides and min
            and max limits that are specific to this item. Modifier lists
            may also be added to or deleted from an item using `UpdateItemModifierLists`.
          items:
            $ref: "#/components/schemas/CatalogItemModifierListInfo"
          type: array
        name:
          description: The item's name. This is a searchable attribute for use in applicable query filters, its value must not be empty, and the length is of Unicode code points.
          maxLength: 512
          type: string
        product_type:
          description: |-
            The product type of the item. May not be changed once an item has been created.

            Only items of product type `REGULAR` or `APPOINTMENTS_SERVICE` may be created by this API; items with other product
            types are read-only.
          type: string
        skip_modifier_screen:
          description: |-
            If `false`, the Square Point of Sale app will present the `CatalogItem`'s
            details screen immediately, allowing the merchant to choose `CatalogModifier`s
            before adding the item to the cart.  This is the default behavior.

            If `true`, the Square Point of Sale app will immediately add the item to the cart with the pre-selected
            modifiers, and merchants can edit modifiers by drilling down onto the item's details.

            Third-party clients are encouraged to implement similar behaviors.
          type: boolean
        sort_name:
          description: |-
            A name to sort the item by. If this name is unspecified, namely, the `sort_name` field is absent, the regular `name` field is used for sorting.

            It is currently supported for sellers of the Japanese locale only.
          type: string
          x-is-beta: true
          x-release-status: BETA
        tax_ids:
          description: |-
            A set of IDs indicating the taxes enabled for
            this item. When updating an item, any taxes listed here will be added to the item.
            Taxes may also be added to or deleted from an item using `UpdateItemTaxes`.
          items:
            type: string
          type: array
        variations:
          description: |-
            A list of [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) objects for this item. An item must have
            at least one variation.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
      type: object
      x-release-status: PUBLIC
    CatalogItemModifierListInfo:
      description: Options to control the properties of a `CatalogModifierList` applied to a `CatalogItem` instance.
      properties:
        enabled:
          description: If `true`, enable this `CatalogModifierList`. The default value is `true`.
          type: boolean
        max_selected_modifiers:
          description: If 0 or larger, the largest number of `CatalogModifier`s that can be selected from this `CatalogModifierList`.
          type: integer
        min_selected_modifiers:
          description: If 0 or larger, the smallest number of `CatalogModifier`s that must be selected from this `CatalogModifierList`.
          type: integer
        modifier_list_id:
          description: The ID of the `CatalogModifierList` controlled by this `CatalogModifierListInfo`.
          minLength: 1
          type: string
        modifier_overrides:
          description: A set of `CatalogModifierOverride` objects that override whether a given `CatalogModifier` is enabled by default.
          items:
            $ref: "#/components/schemas/CatalogModifierOverride"
          type: array
      required:
        - modifier_list_id
      type: object
      x-release-status: PUBLIC
    CatalogItemOption:
      description: A group of variations for a `CatalogItem`.
      properties:
        description:
          description: |-
            The item option's human-readable description. Displayed in the Square
            Point of Sale app for the seller and in the Online Store or on receipts for
            the buyer. This is a searchable attribute for use in applicable query filters.
          type: string
        display_name:
          description: The item option's display name for the customer. This is a searchable attribute for use in applicable query filters.
          type: string
        name:
          description: |-
            The item option's display name for the seller. Must be unique across
            all item options. This is a searchable attribute for use in applicable query filters.
          type: string
        show_colors:
          description: If true, display colors for entries in `values` when present.
          type: boolean
        values:
          description: |-
            A list of CatalogObjects containing the
            `CatalogItemOptionValue`s for this item.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogItemOptionForItem:
      description: |2-
         An option that can be assigned to an item.
        For example, a t-shirt item may offer a color option or a size option.
      properties:
        item_option_id:
          description: The unique id of the item option, used to form the dimensions of the item option matrix in a specified order.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogItemOptionValue:
      description: |-
        An enumerated value that can link a
        `CatalogItemVariation` to an item option as one of
        its item option values.
      properties:
        color:
          description: |-
            The HTML-supported hex color for the item option (e.g., "#ff8d4e85").
            Only displayed if `show_colors` is enabled on the parent `ItemOption`. When
            left unset, `color` defaults to white ("#ffffff") when `show_colors` is
            enabled on the parent `ItemOption`.
          type: string
        description:
          description: A human-readable description for the option value. This is a searchable attribute for use in applicable query filters.
          type: string
        item_option_id:
          description: Unique ID of the associated item option.
          type: string
        name:
          description: Name of this item option value. This is a searchable attribute for use in applicable query filters.
          type: string
        ordinal:
          description: Determines where this option value appears in a list of option values.
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogItemOptionValueForItemVariation:
      description: |-
        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 option. An item option value would represent each variation of t-shirt:
        For example, "Color:Red, Size:Small" or "Color:Blue, Size:Medium".
      properties:
        item_option_id:
          description: The unique id of an item option.
          type: string
        item_option_value_id:
          description: The unique id of the selected value for the item option.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogItemProductType:
      description: The type of a CatalogItem. Connect V2 only allows the creation of `REGULAR` or `APPOINTMENTS_SERVICE` items.
      enum:
        - REGULAR
        - GIFT_CARD
        - APPOINTMENTS_SERVICE
      type: string
      x-enum-elements:
        - description: An ordinary item.
          name: REGULAR
        - description: A Square gift card.
          name: GIFT_CARD
        - description: A service that can be booked using the Square Appointments app.
          name: APPOINTMENTS_SERVICE
      x-release-status: PUBLIC
    CatalogItemVariation:
      description: |-
        An item variation (i.e., product) in the Catalog object model. Each item
        may have a maximum of 250 item variations.
      properties:
        available_for_booking:
          description: |-
            If the `CatalogItem` that owns this item variation is of type
            `APPOINTMENTS_SERVICE`, a bool representing whether this service is available for booking.
          type: boolean
          x-is-beta: true
          x-release-status: BETA
        inventory_alert_threshold:
          description: |-
            If the inventory quantity for the variation is less than or equal to this value and `inventory_alert_type`
            is `LOW_QUANTITY`, the variation displays an alert in the merchant dashboard.

            This value is always an integer.
          format: int64
          type: integer
        inventory_alert_type:
          description: |-
            Indicates whether the item variation displays an alert when its inventory quantity is less than or equal
            to its `inventory_alert_threshold`.
          type: string
        item_id:
          description: The ID of the `CatalogItem` associated with this item variation.
          type: string
        item_option_values:
          description: |-
            List of item option values associated with this item variation. Listed
            in the same order as the item options of the parent item.
          items:
            $ref: "#/components/schemas/CatalogItemOptionValueForItemVariation"
          type: array
          x-is-beta: true
          x-release-status: BETA
        location_overrides:
          description: Per-location price and inventory overrides.
          items:
            $ref: "#/components/schemas/ItemVariationLocationOverrides"
          type: array
        measurement_unit_id:
          description: |-
            ID of the ‘CatalogMeasurementUnit’ that is used to measure the quantity
            sold of this item variation. If left unset, the item will be sold in
            whole quantities.
          type: string
        name:
          description: The item variation's name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points.
          maxLength: 255
          type: string
        ordinal:
          description: |-
            The order in which this item variation should be displayed. This value is read-only. On writes, the ordinal
            for each item variation within a parent `CatalogItem` is set according to the item variations's
            position. On reads, the value is not guaranteed to be sequential or unique.
          type: integer
          x-read-only: true
        price_money:
          $ref: "#/components/schemas/Money"
        pricing_type:
          description: |-
            Indicates whether the item variation's price is fixed or determined at the time
            of sale.
          type: string
        service_duration:
          description: |-
            If the `CatalogItem` that owns this item variation is of type
            `APPOINTMENTS_SERVICE`, then this is the duration of the service in milliseconds. For
            example, a 30 minute appointment would have the value `1800000`, which is equal to
            30 (minutes) * 60 (seconds per minute) * 1000 (milliseconds per second).
          format: int64
          type: integer
        sku:
          description: The item variation's SKU, if any. This is a searchable attribute for use in applicable query filters.
          type: string
        stockable:
          description: |-
            Whether stock is counted directly on this variation (TRUE) or only on its components (FALSE).
            For backward compatibility missing values will be interpreted as TRUE.
          type: boolean
          x-is-beta: true
          x-release-status: BETA
        stockable_conversion:
          $ref: "#/components/schemas/CatalogStockConversion"
        team_member_ids:
          description: |-
            Tokens of employees that can perform the service represented by this variation. Only valid for
            variations of type `APPOINTMENTS_SERVICE`.
          items:
            type: string
          type: array
          x-is-beta: true
          x-release-status: BETA
        track_inventory:
          description: If `true`, inventory tracking is active for the variation.
          type: boolean
        upc:
          description: |-
            The universal product code (UPC) of the item variation, if any. This is a searchable attribute for use in applicable query filters.

            The value of this attribute should be a number of 12-14 digits long.  This restriction is enforced on the Square Seller Dashboard,
            Square Point of Sale or Retail Point of Sale apps, where this attribute shows in the GTIN field. If a non-compliant UPC value is assigned
            to this attribute using the API, the value is not editable on the Seller Dashboard, Square Point of Sale or Retail Point of Sale apps
            unless it is updated to fit the expected format.
          type: string
        user_data:
          description: Arbitrary user metadata to associate with the item variation. This attribute value length is of Unicode code points.
          maxLength: 255
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogMeasurementUnit:
      description: |-
        Represents the unit used to measure a `CatalogItemVariation` and
        specifies the precision for decimal quantities.
      properties:
        measurement_unit:
          $ref: "#/components/schemas/MeasurementUnit"
        precision:
          description: |-
            An integer between 0 and 5 that represents the maximum number of
            positions allowed after the decimal in quantities measured with this unit.
            For example:

            - if the precision is 0, the quantity can be 1, 2, 3, etc.
            - if the precision is 1, the quantity can be 0.1, 0.2, etc.
            - if the precision is 2, the quantity can be 0.01, 0.12, etc.

            Default: 3
          type: integer
      type: object
      x-release-status: PUBLIC
    CatalogModifier:
      description: A modifier applicable to items at the time of sale.
      example:
        object:
          modifier_data:
            name: Almond Milk
            price_money:
              amount: 250
              currency: USD
          present_at_all_locations: true
          type: MODIFIER
      properties:
        modifier_list_id:
          description: The ID of the `CatalogModifierList` associated with this modifier.
          type: string
        name:
          description: The modifier name.  This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points.
          maxLength: 255
          type: string
        ordinal:
          description: Determines where this `CatalogModifier` appears in the `CatalogModifierList`.
          type: integer
        price_money:
          $ref: "#/components/schemas/Money"
      type: object
      x-release-status: PUBLIC
    CatalogModifierList:
      description: |-
        A list of modifiers applicable to items at the time of sale.

        For example, a "Condiments" modifier list applicable to a "Hot Dog" item
        may contain "Ketchup", "Mustard", and "Relish" modifiers.
        Use the `selection_type` field to specify whether or not multiple selections from
        the modifier list are allowed.
      example:
        id: "#MilkType"
        modifier_list_data:
          modifiers:
            - modifier_data:
                name: Whole Milk
                price_money:
                  amount: 0
                  currency: USD
              present_at_all_locations: true
              type: MODIFIER
            - modifier_data:
                name: Almond Milk
                price_money:
                  amount: 250
                  currency: USD
              present_at_all_locations: true
              type: MODIFIER
            - modifier_data:
                name: Soy Milk
                price_money:
                  amount: 250
                  currency: USD
              present_at_all_locations: true
              type: MODIFIER
          name: Milk Type
          selection_type: SINGLE
        present_at_all_locations: true
        type: MODIFIER_LIST
      properties:
        modifiers:
          description: |-
            The options included in the `CatalogModifierList`.
            You must include at least one `CatalogModifier`.
            Each CatalogObject must have type `MODIFIER` and contain
            `CatalogModifier` data.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
        name:
          description: The name for the `CatalogModifierList` instance. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points.
          maxLength: 255
          type: string
        ordinal:
          description: Determines where this modifier list appears in a list of `CatalogModifierList` values.
          type: integer
        selection_type:
          description: |-
            Indicates whether multiple options from the modifier list
            can be applied to a single `CatalogItem`.
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogModifierListSelectionType:
      description: Indicates whether a CatalogModifierList supports multiple selections.
      enum:
        - SINGLE
        - MULTIPLE
      type: string
      x-enum-elements:
        - description: |-
            Indicates that a CatalogModifierList allows only a
            single CatalogModifier to be selected.
          name: SINGLE
        - description: |-
            Indicates that a CatalogModifierList allows multiple
            CatalogModifier to be selected.
          name: MULTIPLE
      x-release-status: PUBLIC
    CatalogModifierOverride:
      description: Options to control how to override the default behavior of the specified modifier.
      properties:
        modifier_id:
          description: The ID of the `CatalogModifier` whose default behavior is being overridden.
          minLength: 1
          type: string
        on_by_default:
          description: If `true`, this `CatalogModifier` should be selected by default for this `CatalogItem`.
          type: boolean
      required:
        - modifier_id
      type: object
      x-release-status: PUBLIC
    CatalogObject:
      description: |-
        The wrapper object for the Catalog entries of a given object type.

        The type of a particular `CatalogObject` is determined by the value of the
        `type` attribute and only the corresponding data attribute can be set on the `CatalogObject` instance.
        For example, the following list shows some instances of `CatalogObject` of a given `type` and
        their corresponding data attribute that can be set:
        - For a `CatalogObject` of the `ITEM` type, set the `item_data` attribute to yield the `CatalogItem` object.
        - For a `CatalogObject` of the `ITEM_VARIATION` type, set the `item_variation_data` attribute to yield the `CatalogItemVariation` object.
        - For a `CatalogObject` of the `MODIFIER` type, set the `modifier_data` attribute to yield the `CatalogModifier` object.
        - For a `CatalogObject` of the `MODIFIER_LIST` type, set the `modifier_list_data` attribute to yield the `CatalogModifierList` object.
        - For a `CatalogObject` of the `CATEGORY` type, set the `category_data` attribute to yield the `CatalogCategory` object.
        - For a `CatalogObject` of the `DISCOUNT` type, set the `discount_data` attribute to yield the `CatalogDiscount` object.
        - For a `CatalogObject` of the `TAX` type, set the `tax_data` attribute to yield the `CatalogTax` object.
        - For a `CatalogObject` of the `IMAGE` type, set the `image_data` attribute to yield the `CatalogImageData`  object.
        - For a `CatalogObject` of the `QUICK_AMOUNTS_SETTINGS` type, set the `quick_amounts_settings_data` attribute to yield the `CatalogQuickAmountsSettings` object.
        - For a `CatalogObject` of the `PRICING_RULE` type, set the `pricing_rule_data` attribute to yield the `CatalogPricingRule` object.
        - For a `CatalogObject` of the `TIME_PERIOD` type, set the `time_period_data` attribute to yield the `CatalogTimePeriod` object.
        - For a `CatalogObject` of the `PRODUCT_SET` type, set the `product_set_data` attribute to yield the `CatalogProductSet`  object.
        - For a `CatalogObject` of the `SUBSCRIPTION_PLAN` type, set the `subscription_plan_data` attribute to yield the `CatalogSubscriptionPlan` object.


        For a more detailed discussion of the Catalog data model, please see the
        [Design a Catalog](https://developer.squareup.com/docs/catalog-api/design-a-catalog) guide.
      example:
        catalog_object:
          absent_at_location_ids:
            - "{{ LOCATIONID-1 }}"
            - "{{ LOCATIONID-N }}"
          category_data: "{{ CatalogCategory object only if type=CATEGORY }}"
          connect_v1_ids:
            catalog_v1_id: "{{ itemID from Catalog v1 }}"
            location_id: "{{ location where v1 ID is used }}"
          discount_data: "{{ CatalogDiscount object only if type=DISCOUNT }}"
          id: "{{ set by Catalog during object creation }}"
          is_deleted: "{{ [true | false] }}"
          item_data: "{{ CatalogItem object only if type=ITEM }}"
          item_variation_data: "{{ CatalogItemVariation object only if type=ITEM_VARIATION }}"
          modifier_data: "{{ CatalogModifier object only if type=MODIFIER }}"
          modifier_list_data: "{{ CatalogModifierList object only if type=MODIFIER_LIST }}"
          present_at_all_locations: "{{ [true | false] }}"
          present_at_location_ids:
            - "{{ LOCATIONID-1 }}"
            - "{{ LOCATIONID-N }}"
          tax_data: "{{ CatalogTax object only if type=TAX }}"
          type: "{{ [ITEM | ITEM_VARIATION | MODIFIER | MODIFIER_LIST | CATEGORY | DISCOUNT | TAX] }}"
          updated_at: "{{ date & time of most recent update }}"
          version: "{{ version of the CatalogObject }}"
      properties:
        absent_at_location_ids:
          description: |-
            A list of locations where the object is not present, even if `present_at_all_locations` is `true`.
            This can include locations that are deactivated.
          items:
            type: string
          type: array
        catalog_v1_ids:
          description: |-
            The Connect v1 IDs for this object at each location where it is present, where they
            differ from the object's Connect V2 ID. The field will only be present for objects that
            have been created or modified by legacy APIs.
          items:
            $ref: "#/components/schemas/CatalogV1Id"
          type: array
        category_data:
          $ref: "#/components/schemas/CatalogCategory"
        custom_attribute_definition_data:
          $ref: "#/components/schemas/CatalogCustomAttributeDefinition"
        custom_attribute_values:
          additionalProperties:
            $ref: "#/components/schemas/CatalogCustomAttributeValue"
          description: |-
            A map (key-value pairs) of application-defined custom attribute values. The value of a key-value pair
            is a [CatalogCustomAttributeValue](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogCustomAttributeValue) object. The key is the `key` attribute
            value defined in the associated [CatalogCustomAttributeDefinition](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogCustomAttributeDefinition)
            object defined by the application making the request.

            If the `CatalogCustomAttributeDefinition` object is
            defined by another application, the `CatalogCustomAttributeDefinition`'s key attribute value is prefixed by
            the defining application ID. For example, if the `CatalogCustomAttributeDefinition` has a `key` attribute of
            `"cocoa_brand"` and the defining application ID is `"abcd1234"`, the key in the map is `"abcd1234:cocoa_brand"`
            if the application making the request is different from the application defining the custom attribute definition.
            Otherwise, the key used in the map is simply `"cocoa_brand"`.

            Application-defined custom attributes that are set at a global (location-independent) level.
            Custom attribute values are intended to store additional information about a catalog object
            or associations with an entity in another system. Do not use custom attributes
            to store any sensitive information (personally identifiable information, card details, etc.).
          type: object
          x-is-beta: true
          x-release-status: BETA
        discount_data:
          $ref: "#/components/schemas/CatalogDiscount"
        id:
          description: |-
            An identifier to reference this object in the catalog. When a new `CatalogObject`
            is inserted, the client should set the id to a temporary identifier starting with
            a "`#`" character. Other objects being inserted or updated within the same request
            may use this identifier to refer to the new object.

            When the server receives the new object, it will supply a unique identifier that
            replaces the temporary identifier for all future references.
          minLength: 1
          type: string
        image_data:
          $ref: "#/components/schemas/CatalogImage"
        image_id:
          description: Identifies the `CatalogImage` attached to this `CatalogObject`.
          type: string
        is_deleted:
          description: |-
            If `true`, the object has been deleted from the database. Must be `false` for new objects
            being inserted. When deleted, the `updated_at` field will equal the deletion time.
          type: boolean
        item_data:
          $ref: "#/components/schemas/CatalogItem"
        item_option_data:
          $ref: "#/components/schemas/CatalogItemOption"
        item_option_value_data:
          $ref: "#/components/schemas/CatalogItemOptionValue"
        item_variation_data:
          $ref: "#/components/schemas/CatalogItemVariation"
        measurement_unit_data:
          $ref: "#/components/schemas/CatalogMeasurementUnit"
        modifier_data:
          $ref: "#/components/schemas/CatalogModifier"
        modifier_list_data:
          $ref: "#/components/schemas/CatalogModifierList"
        present_at_all_locations:
          description: |-
            If `true`, this object is present at all locations (including future locations), except where specified in
            the `absent_at_location_ids` field. If `false`, this object is not present at any locations (including future locations),
            except where specified in the `present_at_location_ids` field. If not specified, defaults to `true`.
          type: boolean
        present_at_location_ids:
          description: |-
            A list of locations where the object is present, even if `present_at_all_locations` is `false`.
            This can include locations that are deactivated.
          items:
            type: string
          type: array
        pricing_rule_data:
          $ref: "#/components/schemas/CatalogPricingRule"
        product_set_data:
          $ref: "#/components/schemas/CatalogProductSet"
        quick_amounts_settings_data:
          $ref: "#/components/schemas/CatalogQuickAmountsSettings"
        subscription_plan_data:
          $ref: "#/components/schemas/CatalogSubscriptionPlan"
        tax_data:
          $ref: "#/components/schemas/CatalogTax"
        time_period_data:
          $ref: "#/components/schemas/CatalogTimePeriod"
        type:
          description: |-
            The type of this object. Each object type has expected
            properties expressed in a structured format within its corresponding `*_data` field below.
          type: string
        updated_at:
          description: |-
            Last modification [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) in RFC 3339 format, e.g., `"2016-08-15T23:59:33.123Z"`
            would indicate the UTC time (denoted by `Z`) of August 15, 2016 at 23:59:33 and 123 milliseconds.
          type: string
          x-read-only: true
        version:
          description: |-
            The version of the object. When updating an object, the version supplied
            must match the version in the database, otherwise the write will be rejected as conflicting.
          format: int64
          type: integer
      required:
        - type
        - id
      type: object
      x-example_type: Schema
      x-release-status: PUBLIC
    CatalogObjectBatch:
      description: A batch of catalog objects.
      properties:
        objects:
          description: A list of CatalogObjects belonging to this batch.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
      required:
        - objects
      type: object
      x-release-status: PUBLIC
    CatalogObjectReference:
      description: |-
        A reference to a Catalog object at a specific version. In general this is
        used as an entry point into a graph of catalog objects, where the objects exist
        at a specific version.
      properties:
        catalog_version:
          description: The version of the object.
          format: int64
          type: integer
        object_id:
          description: The ID of the referenced object.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogObjectType:
      description: |-
        Possible types of CatalogObjects returned from the Catalog, each
        containing type-specific properties in the `*_data` field corresponding to the object type.
      enum:
        - ITEM
        - IMAGE
        - CATEGORY
        - ITEM_VARIATION
        - TAX
        - DISCOUNT
        - MODIFIER_LIST
        - MODIFIER
        - PRICING_RULE
        - PRODUCT_SET
        - TIME_PERIOD
        - MEASUREMENT_UNIT
        - SUBSCRIPTION_PLAN
        - ITEM_OPTION
        - ITEM_OPTION_VAL
        - CUSTOM_ATTRIBUTE_DEFINITION
        - QUICK_AMOUNTS_SETTINGS
      type: string
      x-enum-elements:
        - description: |-
            An item, corresponding to `CatalogItem`. The item-specific data
            will be stored in the `item_data` field.
          name: ITEM
        - description: |-
            An image, corresponding to `CatalogImage`. The image-specific data
            will be stored in the `image_data` field.
          name: IMAGE
        - description: |-
            A category, corresponding to `CatalogCategory`. The category-specific data
            will be stored in the `category_data` field.
          name: CATEGORY
        - description: |-
            An item variation, corresponding to `CatalogItemVariation`. The
            item variation-specific data will be stored in the `item_variation_data` field.
          name: ITEM_VARIATION
        - description: |-
            A tax, corresponding to `CatalogTax`. The tax-specific data
            will be stored in the `tax_data` field.
          name: TAX
        - description: |-
            A discount, corresponding to `CatalogDiscount`. The discount-specific data
            will be stored in the `discount_data` field.
          name: DISCOUNT
        - description: |-
            A modifier list, corresponding to `CatalogModifierList`.
            The modifier list-specific data will be stored in the `modifier_list_data` field.
          name: MODIFIER_LIST
        - description: |-
            A modifier, corresponding to `CatalogModifier`. The modifier-specific data
            will be stored in the `modifier_data` field.
          name: MODIFIER
        - description: |-
            A pricing rule, corresponding to `CatalogPricingRule`. The pricing-rule-specific data
            will be stored in the `pricing_rule_data` field.
          name: PRICING_RULE
        - description: |-
            A product set, corresponding to `CatalogProductSet`.
            The product-set-specific data will be stored in the `product_set_data` field.
          name: PRODUCT_SET
        - description: |-
            A time period, corresponding to `CatalogTimePeriod`.
            The time-period-specific data will be stored in the `time_period_data` field.
          name: TIME_PERIOD
        - description: |-
            A measurement unit, corresponding to `CatalogMeasurementUnit`. The unit of
            measure and precision in which an item variation should be sold.
          name: MEASUREMENT_UNIT
        - description: |-
            A subscription plan, corresponding to
            [CatalogSubscriptionPlan](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogSubscriptionPlan).

            The subscription plan data is stored in the `subscription_plan_data` field of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject).
          name: SUBSCRIPTION_PLAN
        - description: |-
            Represents a list of item option values that can be assigned to item
            variations. For example, a color option or size option for a t-shirt.
          name: ITEM_OPTION
        - description: |-
            Represents an option value associated with one or more item options.
            For example, an item option of "Size" may have item option values such as
            "Small" or "Medium".
          name: ITEM_OPTION_VAL
        - description: Represents the definition of a custom attribute
          name: CUSTOM_ATTRIBUTE_DEFINITION
        - description: |-
            Represents a set of Quick Amounts and their settings at each location.
            For example, a location may have a list of both AUTO and MANUAL quick amounts that are set to DISABLED.
          name: QUICK_AMOUNTS_SETTINGS
      x-release-status: PUBLIC
    CatalogPricingRule:
      description: |-
        Defines how discounts are automatically applied to a set of items that match the pricing rule
        during the active time period.
      properties:
        apply_products_id:
          description: |-
            __Deprecated__: Please use the `exclude_products_id` field to apply
            an exclude set instead. Exclude sets allow better control over quantity
            ranges and offer more flexibility for which matched items receive a discount.

            `CatalogProductSet` to apply the pricing to.
            An apply rule matches within the subset of the cart that fits the match rules (the match set).
            An apply rule can only match once in the match set.
            If not supplied, the pricing will be applied to all products in the match set.
            Other products retain their base price, or a price generated by other rules.
          type: string
          x-is-deprecated: true
          x-release-status: DEPRECATED
        customer_group_ids_any:
          description: |-
            A list of IDs of customer groups, the members of which are eligible for discounts specified in this pricing rule.
            Notice that a group ID is generated by the Customers API.
            If this field is not set, the specified discount applies to matched products sold to anyone whether the buyer
            has a customer profile created or not. If this `customer_group_ids_any` field is set, the specified discount
            applies only to matched products sold to customers belonging to the specified customer groups.
          items:
            type: string
          type: array
        discount_id:
          description: |-
            Unique ID for the `CatalogDiscount` to take off
            the price of all matched items.
          type: string
        exclude_products_id:
          description: |-
            `CatalogProductSet` to exclude from the pricing rule.
            An exclude rule matches within the subset of the cart that fits the match rules (the match set).
            An exclude rule can only match once in the match set.
            If not supplied, the pricing will be applied to all products in the match set.
            Other products retain their base price, or a price generated by other rules.
          type: string
        exclude_strategy:
          description: |-
            If an `exclude_products_id` was given, controls which subset of matched
            products is excluded from any discounts.

            Default value: `LEAST_EXPENSIVE`
          type: string
        match_products_id:
          description: |-
            Unique ID for the `CatalogProductSet` that will be matched by this rule. A match rule
            matches within the entire cart, and can match multiple times. This field will always be set.
          type: string
        name:
          description: |-
            User-defined name for the pricing rule. For example, "Buy one get one
            free" or "10% off".
          type: string
        time_period_ids:
          description: |-
            A list of unique IDs for the catalog time periods when
            this pricing rule is in effect. If left unset, the pricing rule is always
            in effect.
          items:
            type: string
          type: array
        valid_from_date:
          description: Represents the date the Pricing Rule is valid from. Represented in RFC 3339 full-date format (YYYY-MM-DD).
          type: string
        valid_from_local_time:
          description: |-
            Represents the local time the pricing rule should be valid from. Represented in RFC 3339 partial-time format
            (HH:MM:SS). Partial seconds will be truncated.
          type: string
        valid_until_date:
          description: Represents the date the Pricing Rule is valid until. Represented in RFC 3339 full-date format (YYYY-MM-DD).
          type: string
        valid_until_local_time:
          description: |-
            Represents the local time the pricing rule should be valid until. Represented in RFC 3339 partial-time format
            (HH:MM:SS). Partial seconds will be truncated.
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogPricingType:
      description: Indicates whether the price of a CatalogItemVariation should be entered manually at the time of sale.
      enum:
        - FIXED_PRICING
        - VARIABLE_PRICING
      type: string
      x-enum-elements:
        - description: The catalog item variation's price is fixed.
          name: FIXED_PRICING
        - description: The catalog item variation's price is entered at the time of sale.
          name: VARIABLE_PRICING
      x-release-status: PUBLIC
    CatalogProductSet:
      description: |-
        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, including a category in a product set will include all of its
        items and associated item variations in the product set. Including an item in
        a product set will also include its item variations.
      properties:
        all_products:
          description: |-
            If set to `true`, the product set will include every item in the catalog.
            Only one of `product_ids_all`, `product_ids_any`, or `all_products` can be set.
          type: boolean
        name:
          description: |-
            User-defined name for the product set. For example, "Clearance Items"
            or "Winter Sale Items".
          type: string
        product_ids_all:
          description: |-
            Unique IDs for any `CatalogObject` included in this product set.
            All objects in this set must be included in an order for a pricing rule to apply.

            Only one of `product_ids_all`, `product_ids_any`, or `all_products` can be set.

            Max: 500 catalog object IDs.
          items:
            type: string
          type: array
        product_ids_any:
          description: |2-
             Unique IDs for any `CatalogObject` included in this product set. Any
            number of these catalog objects can be in an order for a pricing rule to apply.

            This can be used with `product_ids_all` in a parent `CatalogProductSet` to
            match groups of products for a bulk discount, such as a discount for an
            entree and side combo.

            Only one of `product_ids_all`, `product_ids_any`, or `all_products` can be set.

            Max: 500 catalog object IDs.
          items:
            type: string
          type: array
        quantity_exact:
          description: |-
            If set, there must be exactly this many items from `products_any` or `products_all`
            in the cart for the discount to apply.

            Cannot be combined with either `quantity_min` or `quantity_max`.
          format: int64
          type: integer
        quantity_max:
          description: |-
            If set, the pricing rule will apply to a maximum of this many items from
            `products_any` or `products_all`.
          format: int64
          type: integer
        quantity_min:
          description: |-
            If set, there must be at least this many items from `products_any` or `products_all`
            in a cart for the discount to apply. See `quantity_exact`. Defaults to 0 if
            `quantity_exact`, `quantity_min` and `quantity_max` are all unspecified.
          format: int64
          type: integer
      type: object
      x-release-status: PUBLIC
    CatalogQuery:
      description: |-
        A query composed of one or more different types of filters to narrow the scope of targeted objects when calling the `SearchCatalogObjects` endpoint.

        Although a query can have multiple filters, only certain query types can be combined per call to [SearchCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-objects).
        Any combination of the following types may be used together:
        - [exact_query](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogQueryExact)
        - [prefix_query](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogQueryPrefix)
        - [range_query](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogQueryRange)
        - [sorted_attribute_query](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogQuerySortedAttribute)
        - [text_query](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogQueryText)
        All other query types cannot be combined with any others.

        When a query filter is based on an attribute, the attribute must be searchable.
        Searchable attributes are listed as follows, along their parent types that can be searched for with applicable query filters.

        * Searchable attribute and objects queryable by searchable attributes **
        - `name`:  `CatalogItem`, `CatalogItemVariation`, `CatalogCategory`, `CatalogTax`, `CatalogDiscount`, `CatalogModifier`, 'CatalogModifierList`, `CatalogItemOption`, `CatalogItemOptionValue`
        - `description`: `CatalogItem`, `CatalogItemOptionValue`
        - `abbreviation`: `CatalogItem`
        - `upc`: `CatalogItemVariation`
        - `sku`: `CatalogItemVariation`
        - `caption`: `CatalogImage`
        - `display_name`: `CatalogItemOption`

        For example, to search for [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem) objects by searchable attributes, you can use
        the `"name"`, `"description"`, or `"abbreviation"` attribute in an applicable query filter.
      properties:
        exact_query:
          $ref: "#/components/schemas/CatalogQueryExact"
        item_variations_for_item_option_values_query:
          $ref: "#/components/schemas/CatalogQueryItemVariationsForItemOptionValues"
        items_for_item_options_query:
          $ref: "#/components/schemas/CatalogQueryItemsForItemOptions"
        items_for_modifier_list_query:
          $ref: "#/components/schemas/CatalogQueryItemsForModifierList"
        items_for_tax_query:
          $ref: "#/components/schemas/CatalogQueryItemsForTax"
        prefix_query:
          $ref: "#/components/schemas/CatalogQueryPrefix"
        range_query:
          $ref: "#/components/schemas/CatalogQueryRange"
        set_query:
          $ref: "#/components/schemas/CatalogQuerySet"
        sorted_attribute_query:
          $ref: "#/components/schemas/CatalogQuerySortedAttribute"
        text_query:
          $ref: "#/components/schemas/CatalogQueryText"
      type: object
      x-release-status: PUBLIC
    CatalogQueryExact:
      description: The query filter to return the search result by exact match of the specified attribute name and value.
      properties:
        attribute_name:
          description: The name of the attribute to be searched. Matching of the attribute name is exact.
          minLength: 1
          type: string
        attribute_value:
          description: |-
            The desired value of the search attribute. Matching of the attribute value is case insensitive and can be partial.
            For example, if a specified value of "sma", objects with the named attribute value of "Small", "small" are both matched.
          type: string
      required:
        - attribute_name
        - attribute_value
      type: object
      x-release-status: PUBLIC
    CatalogQueryItemVariationsForItemOptionValues:
      description: The query filter to return the item variations containing the specified item option value IDs.
      properties:
        item_option_value_ids:
          description: |-
            A set of `CatalogItemOptionValue` IDs to be used to find associated
            `CatalogItemVariation`s. All ItemVariations that contain all of the given
            Item Option Values (in any order) will be returned.
          items:
            type: string
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogQueryItemsForItemOptions:
      description: The query filter to return the items containing the specified item option IDs.
      properties:
        item_option_ids:
          description: |-
            A set of `CatalogItemOption` IDs to be used to find associated
            `CatalogItem`s. All Items that contain all of the given Item Options (in any order)
            will be returned.
          items:
            type: string
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogQueryItemsForModifierList:
      description: The query filter to return the items containing the specified modifier list IDs.
      properties:
        modifier_list_ids:
          description: A set of `CatalogModifierList` IDs to be used to find associated `CatalogItem`s.
          items:
            type: string
          type: array
      required:
        - modifier_list_ids
      type: object
      x-release-status: PUBLIC
    CatalogQueryItemsForTax:
      description: The query filter to return the items containing the specified tax IDs.
      properties:
        tax_ids:
          description: A set of `CatalogTax` IDs to be used to find associated `CatalogItem`s.
          items:
            type: string
          type: array
      required:
        - tax_ids
      type: object
      x-release-status: PUBLIC
    CatalogQueryPrefix:
      description: The query filter to return the search result whose named attribute values are prefixed by the specified attribute value.
      properties:
        attribute_name:
          description: The name of the attribute to be searched.
          minLength: 1
          type: string
        attribute_prefix:
          description: The desired prefix of the search attribute value.
          minLength: 1
          type: string
      required:
        - attribute_name
        - attribute_prefix
      type: object
      x-release-status: PUBLIC
    CatalogQueryRange:
      description: The query filter to return the search result whose named attribute values fall between the specified range.
      properties:
        attribute_max_value:
          description: The desired maximum value for the search attribute (inclusive).
          format: int64
          type: integer
        attribute_min_value:
          description: The desired minimum value for the search attribute (inclusive).
          format: int64
          type: integer
        attribute_name:
          description: The name of the attribute to be searched.
          minLength: 1
          type: string
      required:
        - attribute_name
      type: object
      x-release-status: PUBLIC
    CatalogQuerySet:
      description: |-
        The query filter to return the search result(s) by exact match of the specified `attribute_name` and any of
        the `attribute_values`.
      properties:
        attribute_name:
          description: The name of the attribute to be searched. Matching of the attribute name is exact.
          minLength: 1
          type: string
        attribute_values:
          description: |-
            The desired values of the search attribute. Matching of the attribute values is exact and case insensitive.
            A maximum of 250 values may be searched in a request.
          items:
            type: string
          type: array
      required:
        - attribute_name
        - attribute_values
      type: object
      x-release-status: PUBLIC
    CatalogQuerySortedAttribute:
      description: The query expression to specify the key to sort search results.
      properties:
        attribute_name:
          description: The attribute whose value is used as the sort key.
          minLength: 1
          type: string
        initial_attribute_value:
          description: |-
            The first attribute value to be returned by the query. Ascending sorts will return only
            objects with this value or greater, while descending sorts will return only objects with this value
            or less. If unset, start at the beginning (for ascending sorts) or end (for descending sorts).
          type: string
        sort_order:
          description: The desired sort order, `"ASC"` (ascending) or `"DESC"` (descending).
          type: string
      required:
        - attribute_name
      type: object
      x-release-status: PUBLIC
    CatalogQueryText:
      description: The query filter to return the search result whose searchable attribute values contain all of the specified keywords or tokens, independent of the token order or case.
      properties:
        keywords:
          description: A list of 1, 2, or 3 search keywords. Keywords with fewer than 3 characters are ignored.
          items:
            type: string
          type: array
      required:
        - keywords
      type: object
      x-release-status: PUBLIC
    CatalogQuickAmount:
      description: Represents a Quick Amount in the Catalog.
      properties:
        amount:
          $ref: "#/components/schemas/Money"
        ordinal:
          description: The order in which this Quick Amount should be displayed.
          format: int64
          type: integer
        score:
          description: |-
            Describes the ranking of the Quick Amount provided by machine learning model, in the range [0, 100].
            MANUAL type amount will always have score = 100.
          format: int64
          type: integer
        type:
          description: Represents the type of the Quick Amount.
          type: string
      required:
        - type
        - amount
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogQuickAmountType:
      description: Determines the type of a specific Quick Amount.
      enum:
        - QUICK_AMOUNT_TYPE_MANUAL
        - QUICK_AMOUNT_TYPE_AUTO
      type: string
      x-enum-elements:
        - description: Quick Amount is created manually by the seller.
          name: QUICK_AMOUNT_TYPE_MANUAL
        - description: Quick Amount is generated automatically by machine learning algorithms.
          name: QUICK_AMOUNT_TYPE_AUTO
      x-is-beta: true
      x-release-status: BETA
    CatalogQuickAmountsSettings:
      description: A parent Catalog Object model represents a set of Quick Amounts and the settings control the amounts.
      properties:
        amounts:
          description: Represents a set of Quick Amounts at this location.
          items:
            $ref: "#/components/schemas/CatalogQuickAmount"
          type: array
        eligible_for_auto_amounts:
          description: |-
            Represents location's eligibility for auto amounts
            The boolean should be consistent with whether there are AUTO amounts in the `amounts`.
          type: boolean
        option:
          description: Represents the option seller currently uses on Quick Amounts.
          type: string
      required:
        - option
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogQuickAmountsSettingsOption:
      description: Determines a seller's option on Quick Amounts feature.
      enum:
        - DISABLED
        - MANUAL
        - AUTO
      type: string
      x-enum-elements:
        - description: Option for seller to disable Quick Amounts.
          name: DISABLED
        - description: Option for seller to choose manually created Quick Amounts.
          name: MANUAL
        - description: Option for seller to choose automatically created Quick Amounts.
          name: AUTO
      x-is-beta: true
      x-release-status: BETA
    CatalogStockConversion:
      description: |-
        Represents the rule of conversion between a stockable [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation)
        and a non-stockable sell-by or receive-by `CatalogItemVariation` that
        share the same underlying stock.
      properties:
        nonstockable_quantity:
          description: |-
            The converted equivalent quantity of the non-stockable [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) 
            in its measurement unit. The `stockable_quantity` value and this `nonstockable_quantity` value together
            define the conversion ratio between stockable item variation and the non-stockable item variation.
            It accepts a decimal number in a string format that can take up to 10 digits before the decimal point
            and up to 5 digits after the decimal point.
          maxLength: 16
          minLength: 1
          type: string
        stockable_item_variation_id:
          description: |-
            References to the stockable [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation)
            for this stock conversion. Selling, receiving or recounting the non-stockable `CatalogItemVariation` 
            defined with a stock conversion results in adjustments of this stockable `CatalogItemVariation`.
            This immutable field must reference a stockable `CatalogItemVariation`
            that shares the parent [CatalogItem](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItem) of the converted `CatalogItemVariation.`
          minLength: 1
          type: string
        stockable_quantity:
          description: |-
            The quantity of the stockable item variation (as identified by `stockable_item_variation_id`) 
            equivalent to the non-stockable item variation quantity (as specified in `nonstockable_quantity`) 
            as defined by this stock conversion.  It accepts a decimal number in a string format that can take
            up to 10 digits before the decimal point and up to 5 digits after the decimal point.
          maxLength: 16
          minLength: 1
          type: string
      required:
        - stockable_item_variation_id
        - stockable_quantity
        - nonstockable_quantity
      type: object
      x-is-beta: true
      x-release-status: BETA
    CatalogSubscriptionPlan:
      description: |-
        Describes a subscription plan. For more information, see
        [Set Up and Manage a Subscription Plan](https://developer.squareup.com/docs/subscriptions-api/setup-plan).
      properties:
        name:
          description: The name of the plan.
          type: string
        phases:
          description: A list of SubscriptionPhase containing the [SubscriptionPhase](https://developer.squareup.com/reference/square_2021-08-18/objects/SubscriptionPhase) for this plan.
          items:
            $ref: "#/components/schemas/SubscriptionPhase"
          type: array
      required:
        - name
        - phases
      type: object
      x-release-status: PUBLIC
    CatalogTax:
      description: A tax applicable to an item.
      example:
        object:
          id: "#SalesTax"
          present_at_all_locations: true
          tax_data:
            calculation_phase: TAX_SUBTOTAL_PHASE
            enabled: true
            fee_applies_to_custom_amounts: true
            inclusion_type: ADDITIVE
            name: Sales Tax
            percentage: "5.0"
          type: TAX
      properties:
        applies_to_custom_amounts:
          description: |-
            If `true`, the fee applies to custom amounts entered into the Square Point of Sale
            app that are not associated with a particular `CatalogItem`.
          type: boolean
        calculation_phase:
          description: Whether the tax is calculated based on a payment's subtotal or total.
          type: string
        enabled:
          description: A Boolean flag to indicate whether the tax is displayed as enabled (`true`) in the Square Point of Sale app or not (`false`).
          type: boolean
        inclusion_type:
          description: Whether the tax is `ADDITIVE` or `INCLUSIVE`.
          type: string
        name:
          description: The tax's name. This is a searchable attribute for use in applicable query filters, and its value length is of Unicode code points.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The percentage of the tax in decimal form, using a `'.'` as the decimal separator and without a `'%'` sign.
            A value of `7.5` corresponds to 7.5%.
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogTimePeriod:
      description: Represents a time period - either a single period or a repeating period.
      properties:
        event:
          description: |-
            An iCalendar (RFC 5545) [event](https://tools.ietf.org/html/rfc5545#section-3.6.1), which
            specifies the name, timing, duration and recurrence of this time period.

            Example:

            ```
            DTSTART:20190707T180000
            DURATION:P2H
            RRULE:FREQ=WEEKLY;BYDAY=MO,WE,FR
            ```

            Only `SUMMARY`, `DTSTART`, `DURATION` and `RRULE` fields are supported.
            `DTSTART` must be in local (unzoned) time format. Note that while `BEGIN:VEVENT`
            and `END:VEVENT` is not required in the request. The response will always
            include them.
          type: string
      type: object
      x-release-status: PUBLIC
    CatalogV1Id:
      description: A Square API V1 identifier of an item, including the object ID and its associated location ID.
      properties:
        catalog_v1_id:
          description: The ID for an object used in the Square API V1, if the object ID differs from the Square API V2 object ID.
          type: string
        location_id:
          description: The ID of the `Location` this Connect V1 ID is associated with.
          type: string
      type: object
      x-release-status: PUBLIC
    ChargeRequest:
      description: |-
        Defines the parameters that can be included in the body of
        a request to the [Charge](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/charge) endpoint.

        Deprecated - recommend using [CreatePayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/create-payment)
      example:
        request_body:
          additional_recipients:
            - amount_money:
                amount: 20
                currency: USD
              description: Application fees
              location_id: 057P5VYJ4A5X1
          amount_money:
            amount: 200
            currency: USD
          billing_address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          card_nonce: card_nonce_from_square_123
          delay_capture: false
          idempotency_key: 74ae1696-b1e3-4328-af6d-f1e04d947a13
          note: some optional note
          reference_id: some optional reference id
          shipping_address:
            address_line_1: 123 Main St
            administrative_district_level_1: CA
            country: US
            locality: San Francisco
            postal_code: "94114"
      properties:
        additional_recipients:
          description: |-
            The basic primitive of multi-party transaction. The value is optional.
            The transaction facilitated by you can be split from here.

            If you provide this value, the `amount_money` value in your additional_recipients
            must not be more than 90% of the `amount_money` value in the charge request.
            The `location_id` must be the valid location of the app owner merchant.

            This field requires the `PAYMENTS_WRITE_ADDITIONAL_RECIPIENTS` OAuth permission.

            This field is currently not supported in sandbox.
          items:
            $ref: "#/components/schemas/AdditionalRecipient"
          type: array
        amount_money:
          $ref: "#/components/schemas/Money"
        billing_address:
          $ref: "#/components/schemas/Address"
        buyer_email_address:
          description: |-
            The buyer's email address, if available. This value is optional,
            but this transaction is ineligible for chargeback protection if it is not
            provided.
          type: string
        card_nonce:
          description: |-
            A payment token generated from the [Card.tokenize()](https://developer.squareup.com/reference/sdks/web/payments/objects/Card#Card.tokenize) that represents the card
            to charge.

            The application that provides a payment token to this endpoint must be the
            _same application_ that generated the payment token with the Web Payments SDK.
            Otherwise, the nonce is invalid.

            Do not provide a value for this field if you provide a value for
            `customer_card_id`.
          maxLength: 192
          type: string
        customer_card_id:
          description: |-
            The ID of the customer card on file to charge. Do
            not provide a value for this field if you provide a value for `card_nonce`.

            If you provide this value, you _must_ also provide a value for
            `customer_id`.
          maxLength: 192
          type: string
        customer_id:
          description: |-
            The ID of the customer to associate this transaction with. This field
            is required if you provide a value for `customer_card_id`, and optional
            otherwise.
          maxLength: 50
          type: string
        delay_capture:
          description: |-
            If `true`, the request will only perform an Auth on the provided
            card. You can then later perform either a Capture (with the
            [CaptureTransaction](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/capture-transaction) endpoint) or a Void
            (with the [VoidTransaction](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/void-transaction) endpoint).

            Default value: `false`
          type: boolean
        idempotency_key:
          description: |-
            A value you specify that uniquely identifies this
            transaction among transactions you've created.

            If you're unsure whether a particular transaction succeeded,
            you can reattempt it with the same idempotency key without
            worrying about double-charging the buyer.

            See [Idempotency keys](https://developer.squareup.com/docs/working-with-apis/idempotency) for more information.
          maxLength: 192
          minLength: 1
          type: string
        note:
          description: |-
            An optional note to associate with the transaction.

            This value cannot exceed 60 characters.
          maxLength: 60
          type: string
        order_id:
          description: |-
            The ID of the order to associate with this transaction.

            If you provide this value, the `amount_money` value of your request must
            __exactly match__ the value of the order's `total_money` field.
          maxLength: 192
          type: string
        reference_id:
          description: |-
            An optional ID you can associate with the transaction for your own
            purposes (such as to associate the transaction with an entity ID in your
            own database).

            This value cannot exceed 40 characters.
          maxLength: 40
          type: string
        shipping_address:
          $ref: "#/components/schemas/Address"
        verification_token:
          description: |-
            A token generated by SqPaymentForm's verifyBuyer() that represents
            customer's device info and 3ds challenge result.
          type: string
      required:
        - idempotency_key
        - amount_money
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Charge/ChargeRequest.csharp
        java: /sdk_samples/Charge/ChargeRequest.java
        javascript: /sdk_samples/Charge/ChargeRequest.javascript
        php: /sdk_samples/Charge/ChargeRequest.php
        python: /sdk_samples/Charge/ChargeRequest.python
        ruby: /sdk_samples/Charge/ChargeRequest.ruby
    ChargeRequestAdditionalRecipient:
      description: |-
        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
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        description:
          description: The description of the additional recipient.
          maxLength: 100
          minLength: 1
          type: string
        location_id:
          description: The location ID for a recipient (other than the merchant) receiving a portion of the tender.
          maxLength: 50
          minLength: 1
          type: string
      required:
        - location_id
        - description
        - amount_money
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    ChargeResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [Charge](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/charge) endpoint.

        One of `errors` or `transaction` is present in a given response (never both).
      example:
        transaction:
          created_at: 2016-03-10T22:57:56Z
          id: KnL67ZIwXCPtzOrqj0HrkxMF
          location_id: 18YC4JDH91E1H
          product: EXTERNAL_API
          reference_id: some optional reference id
          tenders:
            - additional_recipients:
                - amount_money:
                    amount: 20
                    currency: USD
                  description: Application fees
                  location_id: 057P5VYJ4A5X1
                  receivable_id: ISu5xwxJ5v0CMJTQq7RvqyMF
              amount_money:
                amount: 200
                currency: USD
              card_details:
                card:
                  card_brand: VISA
                  last_4: "1111"
                entry_method: KEYED
                status: CAPTURED
              created_at: 2016-03-10T22:57:56Z
              id: MtZRYYdDrYNQbOvV7nbuBvMF
              location_id: 18YC4JDH91E1H
              note: some optional note
              transaction_id: KnL67ZIwXCPtzOrqj0HrkxMF
              type: CARD
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        transaction:
          $ref: "#/components/schemas/Transaction"
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Charge/ChargeResponse.csharp
        java: /sdk_samples/Charge/ChargeResponse.java
        javascript: /sdk_samples/Charge/ChargeResponse.javascript
        php: /sdk_samples/Charge/ChargeResponse.php
        python: /sdk_samples/Charge/ChargeResponse.python
        ruby: /sdk_samples/Charge/ChargeResponse.ruby
    CheckAppointmentsOnboardedRequest:
      description: ""
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
    Checkout:
      description: |-
        Square Checkout lets merchants accept online payments for supported
        payment types using a checkout workflow hosted on squareup.com.
      properties:
        additional_recipients:
          description: |-
            Additional recipients (other than the merchant) receiving a portion of this checkout.
            For example, fees assessed on the purchase by a third party integration.
          items:
            $ref: "#/components/schemas/AdditionalRecipient"
          type: array
          x-is-deprecated: true
          x-release-status: DEPRECATED
        ask_for_shipping_address:
          description: |-
            If `true`, Square Checkout will collect shipping information on your
            behalf and store that information with the transaction information in your
            Square Dashboard.

            Default: `false`.
          type: boolean
        checkout_page_url:
          description: |-
            The URL that the buyer's browser should be redirected to after the
            checkout is completed.
          type: string
        created_at:
          description: The time when the checkout was created, in RFC 3339 format.
          type: string
          x-read-only: true
        id:
          description: ID generated by Square Checkout when a new checkout is requested.
          type: string
        merchant_support_email:
          description: |-
            The email address to display on the Square Checkout confirmation page
            and confirmation email that the buyer can use to contact the merchant.

            If this value is not set, the confirmation page and email will display the
            primary email address associated with the merchant's Square account.

            Default: none; only exists if explicitly set.
          type: string
        order:
          $ref: "#/components/schemas/Order"
        pre_populate_buyer_email:
          description: |-
            If provided, the buyer's email is pre-populated on the checkout page
            as an editable text field.

            Default: none; only exists if explicitly set.
          type: string
        pre_populate_shipping_address:
          $ref: "#/components/schemas/Address"
        redirect_url:
          description: |-
            The URL to redirect to after checkout is completed with `checkoutId`,
            Square's `orderId`, `transactionId`, and `referenceId` appended as URL
            parameters. For example, if the provided redirect_url is
            `http://www.example.com/order-complete`, a successful transaction redirects
            the customer to:

            <pre><code>http://www.example.com/order-complete?checkoutId=xxxxxx&amp;orderId=xxxxxx&amp;referenceId=xxxxxx&amp;transactionId=xxxxxx</code></pre>

            If you do not provide a redirect URL, Square Checkout will display an order
            confirmation page on your behalf; however Square strongly recommends that
            you provide a redirect URL so you can verify the transaction results and
            finalize the order through your existing/normal confirmation workflow.
          type: string
      type: object
      x-release-status: PUBLIC
    CheckoutOptionsPaymentType:
      description: ""
      enum:
        - CARD_PRESENT
        - MANUAL_CARD_ENTRY
        - FELICA_ID
        - FELICA_QUICPAY
        - FELICA_TRANSPORTATION_GROUP
        - FELICA_ALL
      type: string
      x-enum-elements:
        - description: Accept credit card or debit card payments via tap, dip or swipe.
          name: CARD_PRESENT
        - description: Launches the manual credit or debit card entry screen for the buyer to complete.
          name: MANUAL_CARD_ENTRY
        - description: Launches the iD checkout screen for the buyer to complete.
          name: FELICA_ID
        - description: Launches the QUICPay checkout screen for the buyer to complete.
          name: FELICA_QUICPAY
        - description: Launches the Transportation Group checkout screen for the buyer to complete.
          name: FELICA_TRANSPORTATION_GROUP
        - description: |-
            Launches a checkout screen for the buyer on the Square Terminal that
            allows them to select a specific FeliCa brand or select the check balance screen.
          name: FELICA_ALL
      x-release-status: PUBLIC
    CompletePaymentRequest:
      description: |-
        Describes a request to complete (capture) a payment using 
        [CompletePayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/complete-payment).

        By default, payments are set to `autocomplete` immediately after they are created.
        To complete payments manually, set `autocomplete` to `false`.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    CompletePaymentResponse:
      description: Defines the response returned by[CompletePayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/complete-payment).
      example:
        payment:
          amount_money:
            amount: 200
            currency: USD
          app_fee_money:
            amount: 10
            currency: USD
          approved_money:
            amount: 200
            currency: USD
          card_details:
            auth_result_code: MhIjEN
            avs_status: AVS_ACCEPTED
            card:
              bin: "411111"
              card_brand: VISA
              card_type: DEBIT
              exp_month: 7
              exp_year: 2026
              fingerprint: sq-1-TpmjbNBMFdibiIjpQI5LiRgNUBC7u1689i0TgHjnlyHEWYB7tnn-K4QbW4ttvtaqXw
              last_4: "2796"
              prepaid_type: PREPAID
            card_payment_timeline:
              authorized_at: 2019-07-10T13:23:49.234Z
              captured_at: 2019-07-10T13:23:49.446Z
            cvv_status: CVV_ACCEPTED
            entry_method: ON_FILE
            statement_description: SQ *MY MERCHANT
            status: CAPTURED
          created_at: 2019-07-10T13:39:55.317Z
          customer_id: RDX9Z4XTIZR7MRZJUXNY9HUK6I
          id: GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
          location_id: XTI0H92143A39
          note: Brief description
          order_id: m2Hr8Hk8A3CTyQQ1k4ynExg92tO3
          receipt_number: GQTF
          receipt_url: https://squareup.com/receipt/preview/GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
          reference_id: "123456"
          source_type: CARD
          status: COMPLETED
          total_money:
            amount: 200
            currency: USD
          updated_at: 2019-07-10T13:40:05.982Z
          version_token: 7knzZI16u3QBh2xXD7FH4GFwESqgam7Z9w2Ya0aSD9i6o
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        payment:
          $ref: "#/components/schemas/Payment"
      type: object
      x-release-status: PUBLIC
    Coordinates:
      description: Latitude and longitude coordinates.
      properties:
        latitude:
          description: The latitude of the coordinate expressed in degrees.
          type: number
        longitude:
          description: The longitude of the coordinate expressed in degrees.
          type: number
      type: object
      x-release-status: PUBLIC
    Country:
      description: |-
        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/country_codes.htm).
      enum:
        - ZZ
        - AD
        - AE
        - AF
        - AG
        - AI
        - AL
        - AM
        - AO
        - AQ
        - AR
        - AS
        - AT
        - AU
        - AW
        - AX
        - AZ
        - BA
        - BB
        - BD
        - BE
        - BF
        - BG
        - BH
        - BI
        - BJ
        - BL
        - BM
        - BN
        - BO
        - BQ
        - BR
        - BS
        - BT
        - BV
        - BW
        - BY
        - BZ
        - CA
        - CC
        - CD
        - CF
        - CG
        - CH
        - CI
        - CK
        - CL
        - CM
        - CN
        - CO
        - CR
        - CU
        - CV
        - CW
        - CX
        - CY
        - CZ
        - DE
        - DJ
        - DK
        - DM
        - DO
        - DZ
        - EC
        - EE
        - EG
        - EH
        - ER
        - ES
        - ET
        - FI
        - FJ
        - FK
        - FM
        - FO
        - FR
        - GA
        - GB
        - GD
        - GE
        - GF
        - GG
        - GH
        - GI
        - GL
        - GM
        - GN
        - GP
        - GQ
        - GR
        - GS
        - GT
        - GU
        - GW
        - GY
        - HK
        - HM
        - HN
        - HR
        - HT
        - HU
        - ID
        - IE
        - IL
        - IM
        - IN
        - IO
        - IQ
        - IR
        - IS
        - IT
        - JE
        - JM
        - JO
        - JP
        - KE
        - KG
        - KH
        - KI
        - KM
        - KN
        - KP
        - KR
        - KW
        - KY
        - KZ
        - LA
        - LB
        - LC
        - LI
        - LK
        - LR
        - LS
        - LT
        - LU
        - LV
        - LY
        - MA
        - MC
        - MD
        - ME
        - MF
        - MG
        - MH
        - MK
        - ML
        - MM
        - MN
        - MO
        - MP
        - MQ
        - MR
        - MS
        - MT
        - MU
        - MV
        - MW
        - MX
        - MY
        - MZ
        - NA
        - NC
        - NE
        - NF
        - NG
        - NI
        - NL
        - NO
        - NP
        - NR
        - NU
        - NZ
        - OM
        - PA
        - PE
        - PF
        - PG
        - PH
        - PK
        - PL
        - PM
        - PN
        - PR
        - PS
        - PT
        - PW
        - PY
        - QA
        - RE
        - RO
        - RS
        - RU
        - RW
        - SA
        - SB
        - SC
        - SD
        - SE
        - SG
        - SH
        - SI
        - SJ
        - SK
        - SL
        - SM
        - SN
        - SO
        - SR
        - SS
        - ST
        - SV
        - SX
        - SY
        - SZ
        - TC
        - TD
        - TF
        - TG
        - TH
        - TJ
        - TK
        - TL
        - TM
        - TN
        - TO
        - TR
        - TT
        - TV
        - TW
        - TZ
        - UA
        - UG
        - UM
        - US
        - UY
        - UZ
        - VA
        - VC
        - VE
        - VG
        - VI
        - VN
        - VU
        - WF
        - WS
        - YE
        - YT
        - ZA
        - ZM
        - ZW
      type: string
      x-enum-elements:
        - description: Unknown
          name: ZZ
        - description: Andorra
          name: AD
        - description: United Arab Emirates
          name: AE
        - description: Afghanistan
          name: AF
        - description: Antigua and Barbuda
          name: AG
        - description: Anguilla
          name: AI
        - description: Albania
          name: AL
        - description: Armenia
          name: AM
        - description: Angola
          name: AO
        - description: Antartica
          name: AQ
        - description: Argentina
          name: AR
        - description: American Samoa
          name: AS
        - description: Austria
          name: AT
        - description: Australia
          name: AU
        - description: Aruba
          name: AW
        - description: Åland Islands
          name: AX
        - description: Azerbaijan
          name: AZ
        - description: Bosnia and Herzegovina
          name: BA
        - description: Barbados
          name: BB
        - description: Bangladesh
          name: BD
        - description: Belgium
          name: BE
        - description: Burkina Faso
          name: BF
        - description: Bulgaria
          name: BG
        - description: Bahrain
          name: BH
        - description: Burundi
          name: BI
        - description: Benin
          name: BJ
        - description: Saint Barthélemy
          name: BL
        - description: Bermuda
          name: BM
        - description: Brunei
          name: BN
        - description: Bolivia
          name: BO
        - description: Bonaire
          name: BQ
        - description: Brazil
          name: BR
        - description: Bahamas
          name: BS
        - description: Bhutan
          name: BT
        - description: Bouvet Island
          name: BV
        - description: Botswana
          name: BW
        - description: Belarus
          name: BY
        - description: Belize
          name: BZ
        - description: Canada
          name: CA
        - description: Cocos Islands
          name: CC
        - description: Democratic Republic of the Congo
          name: CD
        - description: Central African Republic
          name: CF
        - description: Congo
          name: CG
        - description: Switzerland
          name: CH
        - description: Ivory Coast
          name: CI
        - description: Cook Islands
          name: CK
        - description: Chile
          name: CL
        - description: Cameroon
          name: CM
        - description: China
          name: CN
        - description: Colombia
          name: CO
        - description: Costa Rica
          name: CR
        - description: Cuba
          name: CU
        - description: Cabo Verde
          name: CV
        - description: Curaçao
          name: CW
        - description: Christmas Island
          name: CX
        - description: Cyprus
          name: CY
        - description: Czechia
          name: CZ
        - description: Germany
          name: DE
        - description: Djibouti
          name: DJ
        - description: Denmark
          name: DK
        - description: Dominica
          name: DM
        - description: Dominican Republic
          name: DO
        - description: Algeria
          name: DZ
        - description: Ecuador
          name: EC
        - description: Estonia
          name: EE
        - description: Egypt
          name: EG
        - description: Western Sahara
          name: EH
        - description: Eritrea
          name: ER
        - description: Spain
          name: ES
        - description: Ethiopia
          name: ET
        - description: Finland
          name: FI
        - description: Fiji
          name: FJ
        - description: Falkland Islands
          name: FK
        - description: Federated States of Micronesia
          name: FM
        - description: Faroe Islands
          name: FO
        - description: France
          name: FR
        - description: Gabon
          name: GA
        - description: United Kingdom
          name: GB
        - description: Grenada
          name: GD
        - description: Georgia
          name: GE
        - description: French Guiana
          name: GF
        - description: Guernsey
          name: GG
        - description: Ghana
          name: GH
        - description: Gibraltar
          name: GI
        - description: Greenland
          name: GL
        - description: Gambia
          name: GM
        - description: Guinea
          name: GN
        - description: Guadeloupe
          name: GP
        - description: Equatorial Guinea
          name: GQ
        - description: Greece
          name: GR
        - description: South Georgia and the South Sandwich Islands
          name: GS
        - description: Guatemala
          name: GT
        - description: Guam
          name: GU
        - description: Guinea-Bissau
          name: GW
        - description: Guyana
          name: GY
        - description: Hong Kong
          name: HK
        - description: Heard Island and McDonald Islands
          name: HM
        - description: Honduras
          name: HN
        - description: Croatia
          name: HR
        - description: Haiti
          name: HT
        - description: Hungary
          name: HU
        - description: Indonesia
          name: ID
        - description: Ireland
          name: IE
        - description: Israel
          name: IL
        - description: Isle of Man
          name: IM
        - description: India
          name: IN
        - description: British Indian Ocean Territory
          name: IO
        - description: Iraq
          name: IQ
        - description: Iran
          name: IR
        - description: Iceland
          name: IS
        - description: Italy
          name: IT
        - description: Jersey
          name: JE
        - description: Jamaica
          name: JM
        - description: Jordan
          name: JO
        - description: Japan
          name: JP
        - description: Kenya
          name: KE
        - description: Kyrgyzstan
          name: KG
        - description: Cambodia
          name: KH
        - description: Kiribati
          name: KI
        - description: Comoros
          name: KM
        - description: Saint Kitts and Nevis
          name: KN
        - description: Democratic People's Republic of Korea
          name: KP
        - description: Republic of Korea
          name: KR
        - description: Kuwait
          name: KW
        - description: Cayman Islands
          name: KY
        - description: Kazakhstan
          name: KZ
        - description: Lao People's Democratic Republic
          name: LA
        - description: Lebanon
          name: LB
        - description: Saint Lucia
          name: LC
        - description: Liechtenstein
          name: LI
        - description: Sri Lanka
          name: LK
        - description: Liberia
          name: LR
        - description: Lesotho
          name: LS
        - description: Lithuania
          name: LT
        - description: Luxembourg
          name: LU
        - description: Latvia
          name: LV
        - description: Libya
          name: LY
        - description: Morocco
          name: MA
        - description: Monaco
          name: MC
        - description: Moldova
          name: MD
        - description: Montenegro
          name: ME
        - description: Saint Martin
          name: MF
        - description: Madagascar
          name: MG
        - description: Marshall Islands
          name: MH
        - description: North Macedonia
          name: MK
        - description: Mali
          name: ML
        - description: Myanmar
          name: MM
        - description: Mongolia
          name: MN
        - description: Macao
          name: MO
        - description: Northern Mariana Islands
          name: MP
        - description: Martinique
          name: MQ
        - description: Mauritania
          name: MR
        - description: Montserrat
          name: MS
        - description: Malta
          name: MT
        - description: Mauritius
          name: MU
        - description: Maldives
          name: MV
        - description: Malawi
          name: MW
        - description: Mexico
          name: MX
        - description: Malaysia
          name: MY
        - description: Mozambique
          name: MZ
        - description: Namibia
          name: NA
        - description: New Caledonia
          name: NC
        - description: Niger
          name: NE
        - description: Norfolk Island
          name: NF
        - description: Nigeria
          name: NG
        - description: Nicaragua
          name: NI
        - description: Netherlands
          name: NL
        - description: Norway
          name: NO
        - description: Nepal
          name: NP
        - description: Nauru
          name: NR
        - description: Niue
          name: NU
        - description: New Zealand
          name: NZ
        - description: Oman
          name: OM
        - description: Panama
          name: PA
        - description: Peru
          name: PE
        - description: French Polynesia
          name: PF
        - description: Papua New Guinea
          name: PG
        - description: Philippines
          name: PH
        - description: Pakistan
          name: PK
        - description: Poland
          name: PL
        - description: Saint Pierre and Miquelon
          name: PM
        - description: Pitcairn
          name: PN
        - description: Puerto Rico
          name: PR
        - description: Palestine
          name: PS
        - description: Portugal
          name: PT
        - description: Palau
          name: PW
        - description: Paraguay
          name: PY
        - description: Qatar
          name: QA
        - description: Réunion
          name: RE
        - description: Romania
          name: RO
        - description: Serbia
          name: RS
        - description: Russia
          name: RU
        - description: Rwanda
          name: RW
        - description: Saudi Arabia
          name: SA
        - description: Solomon Islands
          name: SB
        - description: Seychelles
          name: SC
        - description: Sudan
          name: SD
        - description: Sweden
          name: SE
        - description: Singapore
          name: SG
        - description: Saint Helena, Ascension and Tristan da Cunha
          name: SH
        - description: Slovenia
          name: SI
        - description: Svalbard and Jan Mayen
          name: SJ
        - description: Slovakia
          name: SK
        - description: Sierra Leone
          name: SL
        - description: San Marino
          name: SM
        - description: Senegal
          name: SN
        - description: Somalia
          name: SO
        - description: Suriname
          name: SR
        - description: South Sudan
          name: SS
        - description: Sao Tome and Principe
          name: ST
        - description: El Salvador
          name: SV
        - description: Sint Maarten
          name: SX
        - description: Syrian Arab Republic
          name: SY
        - description: Eswatini
          name: SZ
        - description: Turks and Caicos Islands
          name: TC
        - description: Chad
          name: TD
        - description: French Southern Territories
          name: TF
        - description: Togo
          name: TG
        - description: Thailand
          name: TH
        - description: Tajikistan
          name: TJ
        - description: Tokelau
          name: TK
        - description: Timor-Leste
          name: TL
        - description: Turkmenistan
          name: TM
        - description: Tunisia
          name: TN
        - description: Tonga
          name: TO
        - description: Turkey
          name: TR
        - description: Trinidad and Tobago
          name: TT
        - description: Tuvalu
          name: TV
        - description: Taiwan
          name: TW
        - description: Tanzania
          name: TZ
        - description: Ukraine
          name: UA
        - description: Uganda
          name: UG
        - description: United States Minor Outlying Islands
          name: UM
        - description: United States of America
          name: US
        - description: Uruguay
          name: UY
        - description: Uzbekistan
          name: UZ
        - description: Vatican City
          name: VA
        - description: Saint Vincent and the Grenadines
          name: VC
        - description: Venezuela
          name: VE
        - description: British Virgin Islands
          name: VG
        - description: U.S. Virgin Islands
          name: VI
        - description: Vietnam
          name: VN
        - description: Vanuatu
          name: VU
        - description: Wallis and Futuna
          name: WF
        - description: Samoa
          name: WS
        - description: Yemen
          name: YE
        - description: Mayotte
          name: YT
        - description: South Africa
          name: ZA
        - description: Zambia
          name: ZM
        - description: Zimbabwe
          name: ZW
      x-release-status: PUBLIC
    CreateBookingRequest:
      description: ""
      example:
        booking:
          appointment_segments:
            - duration_minutes: 60
              service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
              service_variation_version: 1599775456731
              team_member_id: TMXUrsBWWcHTt79t
          customer_id: EX2QSVGTZN4K1E5QE1CBFNVQ8M
          location_id: LEQHH0YY8B42M
          start_at: 2020-11-26T13:00:00Z
      properties:
        booking:
          $ref: "#/components/schemas/Booking"
        idempotency_key:
          description: A unique key to make this request an idempotent operation.
          maxLength: 255
          type: string
      required:
        - booking
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateBookingResponse:
      description: ""
      example:
        booking:
          appointment_segments:
            - duration_minutes: 60
              service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
              service_variation_version: 1599775456731
              team_member_id: TMXUrsBWWcHTt79t
          created_at: 2020-10-28T15:47:41Z
          customer_id: EX2QSVGTZN4K1E5QE1CBFNVQ8M
          customer_note: ""
          id: zkras0xv0xwswx
          location_id: LEQHH0YY8B42M
          seller_note: ""
          start_at: 2020-11-26T13:00:00Z
          status: ACCEPTED
          updated_at: 2020-10-28T15:47:41Z
          version: 0
        errors: []
      properties:
        booking:
          $ref: "#/components/schemas/Booking"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateBreakTypeRequest:
      description: A request to create a new `BreakType`.
      example:
        request_body:
          break_type:
            break_name: Lunch Break
            expected_duration: PT30M
            is_paid: true
            location_id: CGJN03P1D08GF
          idempotency_key: PAD3NG5KSN2GL
      properties:
        break_type:
          $ref: "#/components/schemas/BreakType"
        idempotency_key:
          description: A unique string value to ensure the idempotency of the operation.
          maxLength: 128
          type: string
      required:
        - break_type
      type: object
      x-release-status: PUBLIC
    CreateBreakTypeResponse:
      description: |-
        The response to the request to create a `BreakType`. The response contains
        the created `BreakType` object and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        break_type:
          break_name: Lunch Break
          created_at: 2019-02-26T22:42:54Z
          expected_duration: PT30M
          id: 49SSVDJG76WF3
          is_paid: true
          location_id: CGJN03P1D08GF
          updated_at: 2019-02-26T22:42:54Z
          version: 1
      properties:
        break_type:
          $ref: "#/components/schemas/BreakType"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    CreateCardRequest:
      description: |-
        Creates a card from the source (nonce, payment id, etc). Accessible via
        HTTP requests at POST https://connect.squareup.com/v2/cards
      example:
        request_body:
          card:
            billing_address:
              address_line_1: 500 Electric Ave
              address_line_2: Suite 600
              administrative_district_level_1: NY
              country: US
              locality: New York
              postal_code: "10003"
            cardholder_name: Amelia Earhart
            customer_id: VDKXEEKPJN48QDG3BGGFAK05P8
            reference_id: user-id-1
          idempotency_key: 4935a656-a929-4792-b97c-8848be85c27c
          source_id: cnon:uIbfJXhXETSP197M3GB
        request_url: /v2/cards
      properties:
        card:
          $ref: "#/components/schemas/Card"
        idempotency_key:
          description: |-
            A unique string that identifies this CreateCard request. Keys can be
            any valid string and must be unique for every request.

            Max: 45 characters

            See [Idempotency keys](https://developer.squareup.com/docs/basics/api101/idempotency) for more information.
          minLength: 1
          type: string
        source_id:
          description: The ID of the source which represents the card information to be stored. This can be a card nonce or a payment id.
          maxLength: 16384
          minLength: 1
          type: string
        verification_token:
          description: |-
            An identifying token generated by [Payments.verifyBuyer()](https://developer.squareup.com/reference/sdks/web/payments/objects/Payments#Payments.verifyBuyer).
            Verification tokens encapsulate customer device information and 3-D Secure
            challenge results to indicate that Square has verified the buyer identity.

            See the [SCA Overview](https://developer.squareup.com/docs/sca-overview).
          type: string
      required:
        - idempotency_key
        - source_id
        - card
      type: object
      x-release-status: PUBLIC
    CreateCardResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [CreateCard](#endpoint-cards-createcard) endpoint.

        Note: if there are errors processing the request, the card field will not be
        present.
      example:
        card:
          billing_address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          bin: "411111"
          card_brand: VISA
          card_type: CREDIT
          cardholder_name: Amelia Earhart
          customer_id: VDKXEEKPJN48QDG3BGGFAK05P8
          enabled: true
          exp_month: 11
          exp_year: 2022
          fingerprint: ex-p-cs80EK9Flz7LsCMv-szbptQ_ssAGrhemzSTsPFgt9nzyE6t7okiLIQc-qw_quqKX4Q
          id: ccof:uIbfJXhXETSP197M3GB
          last_4: "1111"
          prepaid_type: NOT_PREPAID
          reference_id: user-id-1
          version: 1
      properties:
        card:
          $ref: "#/components/schemas/Card"
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    CreateCheckoutRequest:
      description: |-
        Defines the parameters that can be included in the body of
        a request to the `CreateCheckout` endpoint.
      example:
        request_body:
          additional_recipients:
            - amount_money:
                amount: 60
                currency: USD
              description: Application fees
              location_id: 057P5VYJ4A5X1
          ask_for_shipping_address: true
          idempotency_key: 86ae1696-b1e3-4328-af6d-f1e04d947ad6
          merchant_support_email: merchant+support@website.com
          order:
            idempotency_key: 12ae1696-z1e3-4328-af6d-f1e04d947gd4
            order:
              customer_id: customer_id
              discounts:
                - amount_money:
                    amount: 100
                    currency: USD
                  scope: LINE_ITEM
                  type: FIXED_AMOUNT
                  uid: 56ae1696-z1e3-9328-af6d-f1e04d947gd4
              line_items:
                - applied_discounts:
                    - discount_uid: 56ae1696-z1e3-9328-af6d-f1e04d947gd4
                  applied_taxes:
                    - tax_uid: 38ze1696-z1e3-5628-af6d-f1e04d947fg3
                  base_price_money:
                    amount: 1500
                    currency: USD
                  name: Printed T Shirt
                  quantity: "2"
                - base_price_money:
                    amount: 2500
                    currency: USD
                  name: Slim Jeans
                  quantity: "1"
                - base_price_money:
                    amount: 3500
                    currency: USD
                  name: Woven Sweater
                  quantity: "3"
              location_id: location_id
              reference_id: reference_id
              taxes:
                - percentage: "7.75"
                  scope: LINE_ITEM
                  type: INCLUSIVE
                  uid: 38ze1696-z1e3-5628-af6d-f1e04d947fg3
          pre_populate_buyer_email: example@email.com
          pre_populate_shipping_address:
            address_line_1: 1455 Market St.
            address_line_2: Suite 600
            administrative_district_level_1: CA
            country: US
            first_name: Jane
            last_name: Doe
            locality: San Francisco
            postal_code: "94103"
          redirect_url: https://merchant.website.com/order-confirm
      properties:
        additional_recipients:
          description: |-
            The basic primitive of a multi-party transaction. The value is optional.
            The transaction facilitated by you can be split from here.

            If you provide this value, the `amount_money` value in your `additional_recipients` field
            cannot be more than 90% of the `total_money` calculated by Square for your order.
            The `location_id` must be a valid seller location where the checkout is occurring.

            This field requires `PAYMENTS_WRITE_ADDITIONAL_RECIPIENTS` OAuth permission.

            This field is currently not supported in the Square Sandbox.
          items:
            $ref: "#/components/schemas/ChargeRequestAdditionalRecipient"
          type: array
        ask_for_shipping_address:
          description: |-
            If `true`, Square Checkout collects shipping information on your behalf and stores 
            that information with the transaction information in the Square Seller Dashboard.

            Default: `false`.
          type: boolean
        idempotency_key:
          description: |-
            A unique string that identifies this checkout among others you have created. It can be
            any valid string but must be unique for every order sent to Square Checkout for a given location ID.

            The idempotency key is used to avoid processing the same order more than once. If you are 
            unsure whether a particular checkout was created successfully, you can attempt it again with
            the same idempotency key and all the same other parameters without worrying about creating duplicates.

            You should use a random number/string generator native to the language
            you are working in to generate strings for your idempotency keys.

            For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 192
          minLength: 1
          type: string
        merchant_support_email:
          description: |-
            The email address to display on the Square Checkout confirmation page
            and confirmation email that the buyer can use to contact the seller.

            If this value is not set, the confirmation page and email display the
            primary email address associated with the seller's Square account.

            Default: none; only exists if explicitly set.
          maxLength: 254
          type: string
        note:
          description: |-
            An optional note to associate with the `checkout` object.

            This value cannot exceed 60 characters.
          maxLength: 60
          type: string
        order:
          $ref: "#/components/schemas/CreateOrderRequest"
        pre_populate_buyer_email:
          description: |-
            If provided, the buyer's email is prepopulated on the checkout page
            as an editable text field.

            Default: none; only exists if explicitly set.
          maxLength: 254
          type: string
        pre_populate_shipping_address:
          $ref: "#/components/schemas/Address"
        redirect_url:
          description: |-
            The URL to redirect to after the checkout is completed with `checkoutId`,
            `transactionId`, and `referenceId` appended as URL parameters. For example,
            if the provided redirect URL is `http://www.example.com/order-complete`, a
            successful transaction redirects the customer to:

            <pre><code>http://www.example.com/order-complete?checkoutId=xxxxxx&amp;referenceId=xxxxxx&amp;transactionId=xxxxxx</code></pre>

            If you do not provide a redirect URL, Square Checkout displays an order
            confirmation page on your behalf; however, it is strongly recommended that
            you provide a redirect URL so you can verify the transaction results and
            finalize the order through your existing/normal confirmation workflow.

            Default: none; only exists if explicitly set.
          maxLength: 800
          type: string
      required:
        - idempotency_key
        - order
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CreateCheckout/CreateCheckoutRequest.csharp
        java: /sdk_samples/CreateCheckout/CreateCheckoutRequest.java
        javascript: /sdk_samples/CreateCheckout/CreateCheckoutRequest.javascript
        php: /sdk_samples/CreateCheckout/CreateCheckoutRequest.php
        python: /sdk_samples/CreateCheckout/CreateCheckoutRequest.python
        ruby: /sdk_samples/CreateCheckout/CreateCheckoutRequest.ruby
    CreateCheckoutResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `CreateCheckout` endpoint.
      example:
        checkout:
          additional_recipients:
            - amount_money:
                amount: 60
                currency: USD
              description: Application fees
              location_id: 057P5VYJ4A5X1
          ask_for_shipping_address: true
          checkout_page_url: https://connect.squareup.com/v2/checkout?c=CAISEHGimXh-C3RIT4og1a6u1qw&l=CYTKRM7R7JMV8
          created_at: 2017-06-16T22:25:35Z
          id: CAISEHGimXh-C3RIT4og1a6u1qw
          merchant_support_email: merchant+support@website.com
          order:
            customer_id: customer_id
            discounts:
              - amount_money:
                  amount: 100
                  currency: USD
                applied_money:
                  amount: 100
                  currency: USD
                scope: LINE_ITEM
                type: FIXED_AMOUNT
                uid: 56ae1696-z1e3-9328-af6d-f1e04d947gd4
            line_items:
              - applied_discounts:
                  - applied_money:
                      amount: 100
                      currency: USD
                    discount_uid: 56ae1696-z1e3-9328-af6d-f1e04d947gd4
                applied_taxes:
                  - applied_money:
                      amount: 103
                      currency: USD
                    tax_uid: 38ze1696-z1e3-5628-af6d-f1e04d947fg3
                base_price_money:
                  amount: 1500
                  currency: USD
                name: Printed T Shirt
                quantity: "2"
                total_discount_money:
                  amount: 100
                  currency: USD
                total_money:
                  amount: 1503
                  currency: USD
                total_tax_money:
                  amount: 103
                  currency: USD
              - base_price_money:
                  amount: 2500
                  currency: USD
                name: Slim Jeans
                quantity: "1"
                total_money:
                  amount: 2500
                  currency: USD
              - base_price_money:
                  amount: 3500
                  currency: USD
                name: Woven Sweater
                quantity: "3"
                total_money:
                  amount: 10500
                  currency: USD
            location_id: location_id
            reference_id: reference_id
            taxes:
              - percentage: "7.75"
                scope: LINE_ITEM
                type: INCLUSIVE
                uid: 38ze1696-z1e3-5628-af6d-f1e04d947fg3
            total_discount_money:
              amount: 100
              currency: USD
            total_money:
              amount: 14503
              currency: USD
            total_tax_money:
              amount: 103
              currency: USD
          pre_populate_buyer_email: example@email.com
          pre_populate_shipping_address:
            address_line_1: 1455 Market St.
            address_line_2: Suite 600
            administrative_district_level_1: CA
            country: US
            first_name: Jane
            last_name: Doe
            locality: San Francisco
            postal_code: "94103"
          redirect_url: https://merchant.website.com/order-confirm
          version: 1
      properties:
        checkout:
          $ref: "#/components/schemas/Checkout"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    CreateCustomerCardRequest:
      description: |-
        Defines the fields that are included in the request body of a request
        to the `CreateCustomerCard` endpoint.
      example:
        request_body:
          billing_address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          card_nonce: YOUR_CARD_NONCE
          cardholder_name: Amelia Earhart
      properties:
        billing_address:
          $ref: "#/components/schemas/Address"
        card_nonce:
          description: |-
            A card nonce representing the credit card to link to the customer.

            Card nonces are generated by the Square payment form when customers enter
            their card information. For more information, see
            [Walkthrough: Integrate Square Payments in a Website](https://developer.squareup.com/docs/web-payments/take-card-payment).

            __NOTE:__ Card nonces generated by digital wallets (such as Apple Pay)
            cannot be used to create a customer card.
          type: string
        cardholder_name:
          description: The full name printed on the credit card.
          type: string
        verification_token:
          description: |-
            An identifying token generated by [Payments.verifyBuyer()](https://developer.squareup.com/reference/sdks/web/payments/objects/Payments#Payments.verifyBuyer).
            Verification tokens encapsulate customer device information and 3-D Secure
            challenge results to indicate that Square has verified the buyer identity.
          type: string
      required:
        - card_nonce
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CreateCustomerCard/CreateCustomerCardRequest.csharp
        java: /sdk_samples/CreateCustomerCard/CreateCustomerCardRequest.java
        javascript: /sdk_samples/CreateCustomerCard/CreateCustomerCardRequest.javascript
        php: /sdk_samples/CreateCustomerCard/CreateCustomerCardRequest.php
        python: /sdk_samples/CreateCustomerCard/CreateCustomerCardRequest.python
        ruby: /sdk_samples/CreateCustomerCard/CreateCustomerCardRequest.ruby
    CreateCustomerCardResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `CreateCustomerCard` endpoint.

        Either `errors` or `card` is present in a given response (never both).
      example:
        card:
          billing_address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          card_brand: VISA
          cardholder_name: Amelia Earhart
          exp_month: 11
          exp_year: 2018
          id: icard-card_id
          last_4: "1111"
      properties:
        card:
          $ref: "#/components/schemas/Card"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CreateCustomerCard/CreateCustomerCardResponse.csharp
        java: /sdk_samples/CreateCustomerCard/CreateCustomerCardResponse.java
        javascript: /sdk_samples/CreateCustomerCard/CreateCustomerCardResponse.javascript
        php: /sdk_samples/CreateCustomerCard/CreateCustomerCardResponse.php
        python: /sdk_samples/CreateCustomerCard/CreateCustomerCardResponse.python
        ruby: /sdk_samples/CreateCustomerCard/CreateCustomerCardResponse.ruby
    CreateCustomerGroupRequest:
      description: |-
        Defines the body parameters that can be included in a request to the
        [CreateCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/create-customer-group) endpoint.
      example:
        request_body:
          group:
            name: Loyal Customers
      properties:
        group:
          $ref: "#/components/schemas/CustomerGroup"
        idempotency_key:
          description: The idempotency key for the request. For more information, see [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency).
          type: string
      required:
        - group
      type: object
      x-release-status: PUBLIC
    CreateCustomerGroupResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [CreateCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/create-customer-group) endpoint.

        Either `errors` or `group` is present in a given response (never both).
      example:
        group:
          created_at: 2020-04-13T21:54:57.863Z
          id: 2TAT3CMH4Q0A9M87XJZED0WMR3
          name: Loyal Customers
          updated_at: 2020-04-13T21:54:58Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        group:
          $ref: "#/components/schemas/CustomerGroup"
      type: object
      x-release-status: PUBLIC
    CreateCustomerRequest:
      description: |-
        Defines the body parameters that can be included in a request to the
        `CreateCustomer` endpoint.
      example:
        request_body:
          address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          email_address: Amelia.Earhart@example.com
          family_name: Earhart
          given_name: Amelia
          note: a customer
          phone_number: 1-212-555-4240
          reference_id: YOUR_REFERENCE_ID
      properties:
        address:
          $ref: "#/components/schemas/Address"
        birthday:
          description: |-
            The birthday associated with the customer profile, in RFC 3339 format. The year is optional. The timezone and time are not allowed.
            For example, `0000-09-21T00:00:00-00:00` represents a birthday on September 21 and `1998-09-21T00:00:00-00:00` represents a birthday on September 21, 1998.
            You can also specify this value in `YYYY-MM-DD` format.
          type: string
        company_name:
          description: A business name associated with the customer profile.
          type: string
        email_address:
          description: The email address associated with the customer profile.
          type: string
        family_name:
          description: The family name (that is, the last name) associated with the customer profile.
          type: string
        given_name:
          description: The given name (that is, the first name) associated with the customer profile.
          type: string
        idempotency_key:
          description: |-
            The idempotency key for the request.	For more information, see
            [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          type: string
        nickname:
          description: A nickname for the customer profile.
          type: string
        note:
          description: A custom note associated with the customer profile.
          type: string
        phone_number:
          description: The 11-digit phone number associated with the customer profile.
          type: string
        reference_id:
          description: |-
            An optional second ID used to associate the customer profile with an
            entity in another system.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CreateCustomer/CreateCustomerRequest.csharp
        java: /sdk_samples/CreateCustomer/CreateCustomerRequest.java
        javascript: /sdk_samples/CreateCustomer/CreateCustomerRequest.javascript
        php: /sdk_samples/CreateCustomer/CreateCustomerRequest.php
        python: /sdk_samples/CreateCustomer/CreateCustomerRequest.python
        ruby: /sdk_samples/CreateCustomer/CreateCustomerRequest.ruby
    CreateCustomerResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `CreateCustomer` endpoint.

        Either `errors` or `customer` is present in a given response (never both).
      example:
        customer:
          address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          created_at: 2016-03-23T20:21:54.859Z
          creation_source: THIRD_PARTY
          email_address: Amelia.Earhart@example.com
          family_name: Earhart
          given_name: Amelia
          id: JDKYHBWT1D4F8MFH63DBMEN8Y4
          note: a customer
          phone_number: 1-212-555-4240
          preferences:
            email_unsubscribed: false
          reference_id: YOUR_REFERENCE_ID
          updated_at: 2016-03-23T20:21:54.859Z
          version: 0
      properties:
        customer:
          $ref: "#/components/schemas/Customer"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CreateCustomer/CreateCustomerResponse.csharp
        java: /sdk_samples/CreateCustomer/CreateCustomerResponse.java
        javascript: /sdk_samples/CreateCustomer/CreateCustomerResponse.javascript
        php: /sdk_samples/CreateCustomer/CreateCustomerResponse.php
        python: /sdk_samples/CreateCustomer/CreateCustomerResponse.python
        ruby: /sdk_samples/CreateCustomer/CreateCustomerResponse.ruby
    CreateDeviceCodeRequest:
      description: ""
      example:
        request_body:
          device_code:
            location_id: B5E4484SHHNYH
            name: Counter 1
            product_type: TERMINAL_API
          idempotency_key: 01bb00a6-0c86-4770-94ed-f5fca973cd56
      properties:
        device_code:
          $ref: "#/components/schemas/DeviceCode"
        idempotency_key:
          description: |-
            A unique string that identifies this CreateDeviceCode request. Keys can
            be any valid string but must be unique for every CreateDeviceCode request.

            See [Idempotency keys](https://developer.squareup.com/docs/basics/api101/idempotency) for more information.
          maxLength: 128
          minLength: 1
          type: string
      required:
        - idempotency_key
        - device_code
      type: object
      x-release-status: PUBLIC
    CreateDeviceCodeResponse:
      description: ""
      example:
        device_code:
          code: EBCARJ
          created_at: 2020-02-06T18:44:33.000Z
          id: B3Z6NAMYQSMTM
          location_id: B5E4484SHHNYH
          name: Counter 1
          pair_by: 2020-02-06T18:49:33.000Z
          product_type: TERMINAL_API
          status: UNPAIRED
          status_changed_at: 2020-02-06T18:44:33.000Z
      properties:
        device_code:
          $ref: "#/components/schemas/DeviceCode"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    CreateDisputeEvidenceTextRequest:
      description: Defines the parameters for a `CreateDisputeEvidenceText` request.
      example:
        request_body:
          evidence_text: 1Z8888888888888888
          evidence_type: TRACKING_NUMBER
          idempotency_key: ed3ee3933d946f1514d505d173c82648
      properties:
        evidence_text:
          description: The evidence string.
          maxLength: 500
          minLength: 1
          type: string
        evidence_type:
          description: The type of evidence you are uploading.
          type: string
        idempotency_key:
          description: The Unique ID. For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 45
          minLength: 1
          type: string
      required:
        - idempotency_key
        - evidence_text
      type: object
      x-release-status: PUBLIC
    CreateDisputeEvidenceTextResponse:
      description: Defines the fields in a `CreateDisputeEvidenceText` response.
      example:
        evidence:
          dispute_id: bVTprrwk0gygTLZ96VX1oB
          evidence_text: 1Z8888888888888888
          evidence_type: TRACKING_NUMBER
          id: TOomLInj6iWmP3N8qfCXrB
          uploaded_at: 2018-10-18T16:01:10.000Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        evidence:
          $ref: "#/components/schemas/DisputeEvidence"
      type: object
      x-release-status: PUBLIC
    CreateGiftCardActivityRequest:
      description: A request to create a gift card activity.
      example:
        request_body:
          gift_card_activity:
            activate_activity_details:
              line_item_uid: eIWl7X0nMuO9Ewbh0ChIx
              order_id: jJNGHm4gLI6XkFbwtiSLqK72KkAZY
            gift_card_id: gftc:6d55a72470d940c6ba09c0ab8ad08d20
            location_id: 81FN9BNFZTKS4
            type: ACTIVATE
          idempotency_key: U16kfr-kA70er-q4Rsym-7U7NnY
      properties:
        gift_card_activity:
          $ref: "#/components/schemas/GiftCardActivity"
        idempotency_key:
          description: A unique string that identifies the `CreateGiftCardActivity` request.
          maxLength: 128
          minLength: 1
          type: string
      required:
        - idempotency_key
        - gift_card_activity
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateGiftCardActivityResponse:
      description: |-
        A response that contains a `GiftCardActivity` that was created.
        The response might contain a set of `Error` objects if the request resulted in errors.
      example:
        gift_card_activity:
          activate_activity_details:
            amount_money:
              amount: 1000
              currency: USD
            line_item_uid: eIWl7X0nMuO9Ewbh0ChIx
            order_id: jJNGHm4gLI6XkFbwtiSLqK72KkAZY
          created_at: 2021-05-20T22:26:54.000Z
          gift_card_balance_money:
            amount: 1000
            currency: USD
          gift_card_gan: "7783320002929081"
          gift_card_id: gftc:6d55a72470d940c6ba09c0ab8ad08d20
          id: gcact_c8f8cbf1f24b448d8ecf39ed03f97864
          location_id: 81FN9BNFZTKS4
          type: ACTIVATE
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card_activity:
          $ref: "#/components/schemas/GiftCardActivity"
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateGiftCardRequest:
      description: A request to create a gift card.
      example:
        request_body:
          gift_card:
            type: DIGITAL
          idempotency_key: NC9Tm69EjbjtConu
          location_id: 81FN9BNFZTKS4
      properties:
        gift_card:
          $ref: "#/components/schemas/GiftCard"
        idempotency_key:
          description: A unique string that identifies the `CreateGiftCard` request.
          maxLength: 128
          minLength: 1
          type: string
        location_id:
          description: The location ID where the gift card that will be created should be registered.
          minLength: 1
          type: string
      required:
        - idempotency_key
        - location_id
        - gift_card
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateGiftCardResponse:
      description: |-
        A response that contains a `GiftCard`. The response might contain a set of `Error` objects if the request
        resulted in errors.
      example:
        gift_card:
          balance_money:
            amount: 0
            currency: USD
          created_at: 2021-05-20T22:26:54.000Z
          gan: "7783320006753271"
          gan_source: SQUARE
          id: gftc:6cbacbb64cf54e2ca9f573d619038059
          state: PENDING
          type: DIGITAL
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card:
          $ref: "#/components/schemas/GiftCard"
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateInvoiceRequest:
      description: Describes a `CreateInvoice` request.
      example:
        request_body:
          idempotency_key: ce3748f9-5fc1-4762-aa12-aae5e843f1f4
          invoice:
            accepted_payment_methods:
              bank_account: false
              card: true
              square_gift_card: false
            custom_fields:
              - label: Event Reference Number
                placement: ABOVE_LINE_ITEMS
                value: "Ref. #1234"
              - label: Terms of Service
                placement: BELOW_LINE_ITEMS
                value: The terms of service are...
            delivery_method: EMAIL
            description: We appreciate your business!
            invoice_number: inv-100
            location_id: ES0RJRZYEC39A
            order_id: CAISENgvlJ6jLWAzERDzjyHVybY
            payment_requests:
              - automatic_payment_source: NONE
                due_date: 2030-01-24
                reminders:
                  - message: Your invoice is due tomorrow
                    relative_scheduled_days: -1
                request_type: BALANCE
                tipping_enabled: true
            primary_recipient:
              customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            scheduled_at: 2030-01-13T10:00:00Z
            title: Event Planning Services
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies the `CreateInvoice` request. If you do not 
            provide `idempotency_key` (or provide an empty string as the value), the endpoint 
            treats each request as independent.

            For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 128
          type: string
        invoice:
          $ref: "#/components/schemas/Invoice"
      required:
        - invoice
      type: object
      x-release-status: PUBLIC
    CreateInvoiceResponse:
      description: The response returned by the `CreateInvoice` request.
      example:
        invoice:
          accepted_payment_methods:
            bank_account: false
            card: true
            square_gift_card: false
          created_at: 2020-06-18T17:45:13Z
          custom_fields:
            - label: Event Reference Number
              placement: ABOVE_LINE_ITEMS
              value: "Ref. #1234"
            - label: Terms of Service
              placement: BELOW_LINE_ITEMS
              value: The terms of service are...
          delivery_method: EMAIL
          description: We appreciate your business!
          id: inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
          invoice_number: inv-100
          location_id: ES0RJRZYEC39A
          order_id: CAISENgvlJ6jLWAzERDzjyHVybY
          payment_requests:
            - automatic_payment_source: NONE
              computed_amount_money:
                amount: 10000
                currency: USD
              due_date: 2030-01-24
              reminders:
                - message: Your invoice is due tomorrow
                  relative_scheduled_days: -1
                  status: PENDING
                  uid: beebd363-e47f-4075-8785-c235aaa7df11
              request_type: BALANCE
              tipping_enabled: true
              total_completed_amount_money:
                amount: 0
                currency: USD
              uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
          primary_recipient:
            customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            email_address: Amelia.Earhart@example.com
            family_name: Earhart
            given_name: Amelia
            phone_number: 1-212-555-4240
          scheduled_at: 2030-01-13T10:00:00Z
          status: DRAFT
          timezone: America/Los_Angeles
          title: Event Planning Services
          updated_at: 2020-06-18T17:45:13Z
          version: 0
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        invoice:
          $ref: "#/components/schemas/Invoice"
      type: object
      x-release-status: PUBLIC
    CreateLocationRequest:
      description: Request object for the [CreateLocation](https://developer.squareup.com/reference/square_2021-08-18/locations-api/create-location) endpoint.
      example:
        request_body:
          location:
            address:
              address_line_1: 1234 Peachtree St. NE
              administrative_district_level_1: GA
              locality: Atlanta
              postal_code: "30309"
            description: My new location.
            facebook_url: null
            name: New location name
      properties:
        location:
          $ref: "#/components/schemas/Location"
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateLocationResponse:
      description: Response object returned by the [CreateLocation](https://developer.squareup.com/reference/square_2021-08-18/locations-api/create-location) endpoint.
      example:
        location:
          address:
            address_line_1: 1234 Peachtree St. NE
            administrative_district_level_1: GA
            locality: Atlanta
            postal_code: "30309"
          capabilities:
            - CREDIT_CARD_PROCESSING
          coordinates:
            latitude: 33.788567
            longitude: -84.466947
          country: US
          created_at: 2019-07-19T17:58:25Z
          currency: USD
          description: My new location.
          id: LOCATION_ID
          instagram_username: instagram
          language_code: en-US
          mcc: "1234"
          merchant_id: MERCHANT_ID
          name: New location name
          status: ACTIVE
          twitter_username: twitter
          type: PHYSICAL
          website_url: examplewebsite.com
      properties:
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        location:
          $ref: "#/components/schemas/Location"
      type: object
      x-is-beta: true
      x-release-status: BETA
    CreateLoyaltyAccountRequest:
      description: A request to create a new loyalty account.
      example:
        request_body:
          idempotency_key: ec78c477-b1c3-4899-a209-a4e71337c996
          loyalty_account:
            mapping:
              phone_number: "+14155551234"
            program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies this `CreateLoyaltyAccount` request. 
            Keys can be any valid string, but must be unique for every request.
          maxLength: 128
          minLength: 1
          type: string
        loyalty_account:
          $ref: "#/components/schemas/LoyaltyAccount"
      required:
        - loyalty_account
        - idempotency_key
      type: object
      x-release-status: PUBLIC
    CreateLoyaltyAccountResponse:
      description: A response that includes loyalty account created.
      example:
        loyalty_account:
          balance: 0
          created_at: 2020-05-08T21:44:32Z
          id: 79b807d2-d786-46a9-933b-918028d7a8c5
          lifetime_points: 0
          mapping:
            created_at: 2020-05-08T21:44:32Z
            id: 66aaab3f-da99-49ed-8b19-b87f851c844f
            phone_number: "+14155551234"
          program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
          updated_at: 2020-05-08T21:44:32Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        loyalty_account:
          $ref: "#/components/schemas/LoyaltyAccount"
      type: object
      x-release-status: PUBLIC
    CreateLoyaltyRewardRequest:
      description: A request to create a loyalty reward.
      example:
        request_body:
          idempotency_key: 18c2e5ea-a620-4b1f-ad60-7b167285e451
          reward:
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            order_id: RFZfrdtm3mhO1oGzf5Cx7fEMsmGZY
            reward_tier_id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies this `CreateLoyaltyReward` request. 
            Keys can be any valid string, but must be unique for every request.
          maxLength: 128
          minLength: 1
          type: string
        reward:
          $ref: "#/components/schemas/LoyaltyReward"
      required:
        - reward
        - idempotency_key
      type: object
      x-release-status: PUBLIC
    CreateLoyaltyRewardResponse:
      description: A response that includes the loyalty reward created.
      example:
        reward:
          created_at: 2020-05-01T21:49:54Z
          id: a8f43ebe-2ad6-3001-bdd5-7d7c2da08943
          loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
          order_id: RFZfrdtm3mhO1oGzf5Cx7fEMsmGZY
          points: 10
          reward_tier_id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
          status: ISSUED
          updated_at: 2020-05-01T21:49:54Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        reward:
          $ref: "#/components/schemas/LoyaltyReward"
      type: object
      x-release-status: PUBLIC
    CreateMobileAuthorizationCodeRequest:
      description: |-
        Defines the body parameters that can be provided in a request to the
        __CreateMobileAuthorizationCode__ endpoint.
      example:
        request_body:
          location_id: YOUR_LOCATION_ID
        request_url: /mobile/authorization-code
      properties:
        location_id:
          description: The Square location ID the authorization code should be tied to.
          maxLength: 191
          minLength: 1
          type: string
      type: object
      x-release-status: PUBLIC
    CreateMobileAuthorizationCodeResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the __CreateMobileAuthorizationCode__ endpoint.
      example:
        authorization_code: YOUR_MOBILE_AUTHORIZATION_CODE
        expires_at: 2019-01-10T19:42:08Z
      properties:
        authorization_code:
          description: |-
            Generated authorization code that connects a mobile application instance
            to a Square account.
          maxLength: 191
          minLength: 0
          type: string
        error:
          $ref: "#/components/schemas/Error"
        expires_at:
          description: |-
            The timestamp when `authorization_code` expires in
            [RFC 3339](https://tools.ietf.org/html/rfc3339) format, e.g., "2016-09-04T23:59:33.123Z".
          maxLength: 48
          minLength: 20
          type: string
      type: object
      x-release-status: PUBLIC
    CreateOrderRequest:
      description: ""
      example:
        request_body:
          idempotency_key: 8193148c-9586-11e6-99f9-28cfe92138cf
          order:
            discounts:
              - name: Labor Day Sale
                percentage: "5"
                scope: ORDER
                uid: labor-day-sale
              - catalog_object_id: DB7L55ZH2BGWI4H23ULIWOQ7
                scope: ORDER
                uid: membership-discount
              - amount_money:
                  amount: 100
                  currency: USD
                name: Sale - $1.00 off
                scope: LINE_ITEM
                uid: one-dollar-off
            line_items:
              - base_price_money:
                  amount: 1599
                  currency: USD
                name: New York Strip Steak
                quantity: "1"
              - applied_discounts:
                  - discount_uid: one-dollar-off
                catalog_object_id: BEMYCSMIJL46OCDV4KYIKXIB
                modifiers:
                  - catalog_object_id: CHQX7Y4KY6N5KINJKZCFURPZ
                quantity: "2"
            location_id: 057P5VYJ4A5X1
            reference_id: my-order-001
            taxes:
              - name: State Sales Tax
                percentage: "9"
                scope: ORDER
                uid: state-sales-tax
      properties:
        idempotency_key:
          description: |-
            A value you specify that uniquely identifies this
            order among orders you have created.

            If you are unsure whether a particular order was created successfully,
            you can try it again with the same idempotency key without
            worrying about creating duplicate orders.

            For more information, see [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency).
          maxLength: 192
          type: string
        order:
          $ref: "#/components/schemas/Order"
      type: object
      x-release-status: PUBLIC
    CreateOrderResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `CreateOrder` endpoint.

        Either `errors` or `order` is present in a given response, but never both.
      example:
        order:
          created_at: 2020-01-17T20:47:53.293Z
          discounts:
            - applied_money:
                amount: 30
                currency: USD
              catalog_object_id: DB7L55ZH2BGWI4H23ULIWOQ7
              name: Membership Discount
              percentage: "0.5"
              scope: ORDER
              type: FIXED_PERCENTAGE
              uid: membership-discount
            - applied_money:
                amount: 303
                currency: USD
              name: Labor Day Sale
              percentage: "5"
              scope: ORDER
              type: FIXED_PERCENTAGE
              uid: labor-day-sale
            - amount_money:
                amount: 100
                currency: USD
              applied_money:
                amount: 100
                currency: USD
              name: Sale - $1.00 off
              scope: LINE_ITEM
              type: FIXED_AMOUNT
              uid: one-dollar-off
          id: CAISENgvlJ6jLWAzERDzjyHVybY
          line_items:
            - applied_discounts:
                - applied_money:
                    amount: 8
                    currency: USD
                  discount_uid: membership-discount
                  uid: jWdgP1TpHPFBuVrz81mXVC
                - applied_money:
                    amount: 79
                    currency: USD
                  discount_uid: labor-day-sale
                  uid: jnZOjjVY57eRcQAVgEwFuC
              applied_taxes:
                - applied_money:
                    amount: 136
                    currency: USD
                  tax_uid: state-sales-tax
                  uid: aKG87ArnDpvMLSZJHxWUl
              base_price_money:
                amount: 1599
                currency: USD
              gross_sales_money:
                amount: 1599
                currency: USD
              name: New York Strip Steak
              quantity: "1"
              total_discount_money:
                amount: 87
                currency: USD
              total_money:
                amount: 1648
                currency: USD
              total_tax_money:
                amount: 136
                currency: USD
              uid: 8uSwfzvUImn3IRrvciqlXC
              variation_total_price_money:
                amount: 1599
                currency: USD
            - applied_discounts:
                - applied_money:
                    amount: 22
                    currency: USD
                  discount_uid: membership-discount
                  uid: nUXvdsIItfKko0dbYtY58C
                - applied_money:
                    amount: 224
                    currency: USD
                  discount_uid: labor-day-sale
                  uid: qSdkOOOernlVQqsJ94SPjB
                - applied_money:
                    amount: 100
                    currency: USD
                  discount_uid: one-dollar-off
                  uid: y7bVl4njrWAnfDwmz19izB
              applied_taxes:
                - applied_money:
                    amount: 374
                    currency: USD
                  tax_uid: state-sales-tax
                  uid: v1dAgrfUVUPTnVTf9sRPz
              base_price_money:
                amount: 2200
                currency: USD
              catalog_object_id: BEMYCSMIJL46OCDV4KYIKXIB
              gross_sales_money:
                amount: 4500
                currency: USD
              modifiers:
                - base_price_money:
                    amount: 50
                    currency: USD
                  catalog_object_id: CHQX7Y4KY6N5KINJKZCFURPZ
                  name: Well
                  total_price_money:
                    amount: 100
                    currency: USD
                  uid: Lo3qMMckDluu9Qsb58d4CC
              name: New York Steak
              quantity: "2"
              total_discount_money:
                amount: 346
                currency: USD
              total_money:
                amount: 4528
                currency: USD
              total_tax_money:
                amount: 374
                currency: USD
              uid: v8ZuEXpOJpb0bazLuvrLDB
              variation_name: Larger
              variation_total_price_money:
                amount: 4400
                currency: USD
          location_id: 057P5VYJ4A5X1
          net_amounts:
            discount_money:
              amount: 433
              currency: USD
            service_charge_money:
              amount: 0
              currency: USD
            tax_money:
              amount: 510
              currency: USD
            tip_money:
              amount: 0
              currency: USD
            total_money:
              amount: 6176
              currency: USD
          reference_id: my-order-001
          source:
            name: My App
          state: OPEN
          taxes:
            - applied_money:
                amount: 510
                currency: USD
              name: State Sales Tax
              percentage: "9"
              scope: ORDER
              type: ADDITIVE
              uid: state-sales-tax
          total_discount_money:
            amount: 433
            currency: USD
          total_money:
            amount: 6176
            currency: USD
          total_service_charge_money:
            amount: 0
            currency: USD
          total_tax_money:
            amount: 510
            currency: USD
          total_tip_money:
            amount: 0
            currency: USD
          updated_at: 2020-01-17T20:47:53.293Z
          version: 1
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        order:
          $ref: "#/components/schemas/Order"
      type: object
      x-release-status: PUBLIC
    CreatePaymentRequest:
      description: |-
        Describes a request to create a payment using 
        [CreatePayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/create-payment).
      example:
        request_body:
          amount_money:
            amount: 200
            currency: USD
          app_fee_money:
            amount: 10
            currency: USD
          autocomplete: true
          customer_id: VDKXEEKPJN48QDG3BGGFAK05P8
          idempotency_key: 4935a656-a929-4792-b97c-8848be85c27c
          location_id: XK3DBG77NJBFX
          note: Brief description
          reference_id: "123456"
          source_id: ccof:uIbfJXhXETSP197M3GB
      properties:
        accept_partial_authorization:
          description: |-
            If set to `true` and charging a Square Gift Card, a payment might be returned with
            `amount_money` equal to less than what was requested. For example, a request for $20 when charging
            a Square Gift Card with a balance of $5 results in an APPROVED payment of $5. You might choose
            to prompt the buyer for an additional payment to cover the remainder or cancel the Gift Card
            payment. This field cannot be `true` when `autocomplete = true`.

            For more information, see
            [Partial amount with Square Gift Cards](https://developer.squareup.com/docs/payments-api/take-payments#partial-payment-gift-card).

            Default: false
          type: boolean
          x-is-beta: true
          x-release-status: BETA
        amount_money:
          $ref: "#/components/schemas/Money"
        app_fee_money:
          $ref: "#/components/schemas/Money"
        autocomplete:
          description: |-
            If set to `true`, this payment will be completed when possible. If
            set to `false`, this payment is held in an approved state until either
            explicitly completed (captured) or canceled (voided). For more information, see
            [Delayed capture](https://developer.squareup.com/docs/payments-api/take-payments/card-payments#delayed-capture-of-a-card-payment).

            Default: true
          type: boolean
        billing_address:
          $ref: "#/components/schemas/Address"
        buyer_email_address:
          description: The buyer's email address.
          maxLength: 255
          type: string
        cash_details:
          $ref: "#/components/schemas/CashPaymentDetails"
        customer_id:
          description: |-
            The [Customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) ID of the customer associated with the payment.

            This is required if the `source_id` refers to a card on file created using the Customers API.
          type: string
        delay_duration:
          description: |-
            The duration of time after the payment's creation when Square automatically cancels the
            payment. This automatic cancellation applies only to payments that do not reach a terminal state
            (COMPLETED, CANCELED, or FAILED) before the `delay_duration` time period.

            This parameter should be specified as a time duration, in RFC 3339 format, with a minimum value
            of 1 minute.

            Note: This feature is only supported for card payments. This parameter can only be set for a delayed
            capture payment (`autocomplete=false`).

            Default:

            - Card-present payments: "PT36H" (36 hours) from the creation time.
            - Card-not-present payments: "P7D" (7 days) from the creation time.
          type: string
          x-is-beta: true
          x-release-status: BETA
        external_details:
          $ref: "#/components/schemas/ExternalPaymentDetails"
        idempotency_key:
          description: |-
            A unique string that identifies this `CreatePayment` request. Keys can be any valid string
            but must be unique for every `CreatePayment` request.

            Max: 45 characters

            Note: The number of allowed characters might be less than the stated maximum, if multi-byte
            characters are used.

            For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 45
          minLength: 1
          type: string
        location_id:
          description: |-
            The location ID to associate with the payment. If not specified, the default location is
            used.
          type: string
        note:
          description: |-
            An optional note to be entered by the developer when creating a payment.

            Limit 500 characters.
          maxLength: 500
          type: string
        order_id:
          description: Associates a previously created order with this payment.
          type: string
        reference_id:
          description: |-
            A user-defined ID to associate with the payment.

            You can use this field to associate the payment to an entity in an external system 
            (for example, you might specify an order ID that is generated by a third-party shopping cart).

            Limit 40 characters.
          maxLength: 40
          type: string
        shipping_address:
          $ref: "#/components/schemas/Address"
        source_id:
          description: |-
            The ID for the source of funds for this payment. This can be a payment token 
            (card nonce) generated by the Square payment form or a card on file made with the 
            Customers API. If recording a payment that the seller 
            received outside of Square, specify either "CASH" or "EXTERNAL". 
            For more information, see 
            [Take Payments](https://developer.squareup.com/docs/payments-api/take-payments).
          minLength: 1
          type: string
        statement_description_identifier:
          description: |-
            Optional additional payment information to include on the customer's card statement
            as part of the statement description. This can be, for example, an invoice number, ticket number,
            or short description that uniquely identifies the purchase.

            Note that the `statement_description_identifier` might get truncated on the statement description
            to fit the required information including the Square identifier (SQ *) and name of the
            seller taking the payment.
          maxLength: 20
          type: string
          x-is-beta: true
          x-release-status: BETA
        tip_money:
          $ref: "#/components/schemas/Money"
        verification_token:
          description: |-
            An identifying token generated by [payments.verifyBuyer()](https://developer.squareup.com/reference/sdks/web/payments/objects/Payments#Payments.verifyBuyer).
            Verification tokens encapsulate customer device information and 3-D Secure
            challenge results to indicate that Square has verified the buyer identity.

            For more information, see [SCA Overview](https://developer.squareup.com/docs/sca-overview).
          type: string
      required:
        - source_id
        - idempotency_key
        - amount_money
      type: object
      x-release-status: PUBLIC
    CreatePaymentResponse:
      description: |-
        Defines the response returned by [CreatePayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/create-payment).

        If there are errors processing the request, the `payment` field might not be
        present, or it might be present with a status of `FAILED`.
      example:
        payment:
          amount_money:
            amount: 200
            currency: USD
          app_fee_money:
            amount: 10
            currency: USD
          approved_money:
            amount: 200
            currency: USD
          card_details:
            auth_result_code: nsAyY2
            avs_status: AVS_ACCEPTED
            card:
              bin: "411111"
              card_brand: VISA
              card_type: DEBIT
              exp_month: 7
              exp_year: 2026
              fingerprint: sq-1-TpmjbNBMFdibiIjpQI5LiRgNUBC7u1689i0TgHjnlyHEWYB7tnn-K4QbW4ttvtaqXw
              last_4: "1111"
              prepaid_type: PREPAID
            card_payment_timeline:
              authorized_at: 2019-07-10T13:23:49.234Z
              captured_at: 2019-07-10T13:23:49.446Z
            cvv_status: CVV_ACCEPTED
            entry_method: ON_FILE
            statement_description: SQ *MY MERCHANT
            status: CAPTURED
          created_at: 2019-07-10T13:23:49.154Z
          customer_id: RDX9Z4XTIZR7MRZJUXNY9HUK6I
          id: GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
          location_id: XTI0H92143A39
          note: Brief description
          order_id: m2Hr8Hk8A3CTyQQ1k4ynExg92tO3
          receipt_number: GQTF
          receipt_url: https://squareup.com/receipt/preview/GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
          reference_id: "123456"
          source_type: CARD
          status: COMPLETED
          total_money:
            amount: 200
            currency: USD
          updated_at: 2019-07-10T13:23:49.446Z
          version_token: H8Vnk5Z11SKcueuRti79jGpszSEsSVdhKRrSKCOzILG6o
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        payment:
          $ref: "#/components/schemas/Payment"
      type: object
      x-release-status: PUBLIC
    CreateRefundRequest:
      description: |-
        Defines the body parameters that can be included in
        a request to the [CreateRefund](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/create-refund) endpoint.

        Deprecated - recommend using [RefundPayment](https://developer.squareup.com/reference/square_2021-08-18/refunds-api/refund-payment)
      example:
        request_body:
          amount_money:
            amount: 100
            currency: USD
          idempotency_key: 86ae1696-b1e3-4328-af6d-f1e04d947ad2
          reason: a reason
          tender_id: MtZRYYdDrYNQbOvV7nbuBvMF
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        idempotency_key:
          description: |-
            A value you specify that uniquely identifies this
            refund among refunds you've created for the tender.

            If you're unsure whether a particular refund succeeded,
            you can reattempt it with the same idempotency key without
            worrying about duplicating the refund.

            See [Idempotency keys](https://developer.squareup.com/docs/working-with-apis/idempotency) for more information.
          maxLength: 192
          minLength: 1
          type: string
        reason:
          description: |-
            A description of the reason for the refund.

            Default value: `Refund via API`
          maxLength: 192
          type: string
        tender_id:
          description: |-
            The ID of the tender to refund.

            A [`Transaction`](https://developer.squareup.com/reference/square_2021-08-18/objects/Transaction) has one or more `tenders` (i.e., methods
            of payment) associated with it, and you refund each tender separately with
            the Connect API.
          maxLength: 192
          minLength: 1
          type: string
      required:
        - idempotency_key
        - tender_id
        - amount_money
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CreateRefund/CreateRefundRequest.csharp
        java: /sdk_samples/CreateRefund/CreateRefundRequest.java
        javascript: /sdk_samples/CreateRefund/CreateRefundRequest.javascript
        php: /sdk_samples/CreateRefund/CreateRefundRequest.php
        python: /sdk_samples/CreateRefund/CreateRefundRequest.python
        ruby: /sdk_samples/CreateRefund/CreateRefundRequest.ruby
    CreateRefundResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [CreateRefund](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/create-refund) endpoint.

        One of `errors` or `refund` is present in a given response (never both).
      example:
        refund:
          additional_recipients:
            - amount_money:
                amount: 10
                currency: USD
              description: Application fees
              location_id: 057P5VYJ4A5X1
              receivable_id: ISu5xwxJ5v0CMJTQq7RvqyMF
          amount_money:
            amount: 100
            currency: USD
          created_at: 2016-02-12T00:28:18Z
          id: b27436d1-7f8e-5610-45c6-417ef71434b4-SW
          location_id: 18YC4JDH91E1H
          reason: some reason
          status: PENDING
          tender_id: MtZRYYdDrYNQbOvV7nbuBvMF
          transaction_id: KnL67ZIwXCPtzOrqj0HrkxMF
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refund:
          $ref: "#/components/schemas/Refund"
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/CreateRefund/CreateRefundResponse.csharp
        java: /sdk_samples/CreateRefund/CreateRefundResponse.java
        javascript: /sdk_samples/CreateRefund/CreateRefundResponse.javascript
        php: /sdk_samples/CreateRefund/CreateRefundResponse.php
        python: /sdk_samples/CreateRefund/CreateRefundResponse.python
        ruby: /sdk_samples/CreateRefund/CreateRefundResponse.ruby
    CreateShiftRequest:
      description: Represents a request to create a `Shift`.
      example:
        request_body:
          idempotency_key: HIDSNG5KS478L
          shift:
            breaks:
              - break_type_id: REGS1EQR1TPZ5
                end_at: 2019-01-25T06:16:00-05:00
                expected_duration: PT5M
                is_paid: true
                name: Tea Break
                start_at: 2019-01-25T06:11:00-05:00
            end_at: 2019-01-25T13:11:00-05:00
            location_id: PAA1RJZZKXBFG
            start_at: 2019-01-25T03:11:00-05:00
            team_member_id: ormj0jJJZ5OZIzxrZYJI
            wage:
              hourly_rate:
                amount: 1100
                currency: USD
              title: Barista
      properties:
        idempotency_key:
          description: A unique string value to ensure the idempotency of the operation.
          maxLength: 128
          type: string
        shift:
          $ref: "#/components/schemas/Shift"
      required:
        - shift
      type: object
      x-release-status: PUBLIC
    CreateShiftResponse:
      description: |-
        The response to a request to create a `Shift`. The response contains
        the created `Shift` object and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        shift:
          breaks:
            - break_type_id: REGS1EQR1TPZ5
              end_at: 2019-01-25T06:16:00-05:00
              expected_duration: PT5M
              id: X7GAQYVVRRG6P
              is_paid: true
              name: Tea Break
              start_at: 2019-01-25T06:11:00-05:00
          created_at: 2019-02-28T00:39:02Z
          employee_id: ormj0jJJZ5OZIzxrZYJI
          end_at: 2019-01-25T13:11:00-05:00
          id: K0YH4CV5462JB
          location_id: PAA1RJZZKXBFG
          start_at: 2019-01-25T03:11:00-05:00
          status: CLOSED
          team_member_id: ormj0jJJZ5OZIzxrZYJI
          timezone: America/New_York
          updated_at: 2019-02-28T00:39:02Z
          version: 1
          wage:
            hourly_rate:
              amount: 1100
              currency: USD
            title: Barista
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        shift:
          $ref: "#/components/schemas/Shift"
      type: object
      x-release-status: PUBLIC
    CreateSubscriptionRequest:
      description: |-
        Defines parameters in a
        [CreateSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/create-subscription) endpoint request.
      example:
        request_body:
          card_id: ccof:qy5x8hHGYsgLrp4Q4GB
          customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
          idempotency_key: 8193148c-9586-11e6-99f9-28cfe92138cf
          location_id: S8GWD5R9QB376
          plan_id: 6JHXF3B2CW3YKHDV4XEM674H
          price_override_money:
            amount: 100
            currency: USD
          start_date: 2020-08-01
          tax_percentage: "5"
          timezone: America/Los_Angeles
      properties:
        canceled_date:
          description: |-
            The date when the subscription should be canceled, in
            YYYY-MM-DD format (for example, 2025-02-29). This overrides the plan configuration
            if it comes before the date the subscription would otherwise end.
          type: string
        card_id:
          description: |-
            The ID of the [customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) [card](https://developer.squareup.com/reference/square_2021-08-18/objects/Card) to charge.
            If not specified, Square sends an invoice via email. For an example to
            create a customer and add a card on file, see [Subscriptions Walkthrough](https://developer.squareup.com/docs/subscriptions-api/walkthrough).
          type: string
        customer_id:
          description: The ID of the [customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) profile.
          minLength: 1
          type: string
        idempotency_key:
          description: |-
            A unique string that identifies this `CreateSubscription` request.
            If you do not provide a unique string (or provide an empty string as the value),
            the endpoint treats each request as independent.

            For more information, see [Idempotency keys](https://developer.squareup.com/docs/working-with-apis/idempotency).
          type: string
        location_id:
          description: The ID of the location the subscription is associated with.
          minLength: 1
          type: string
        plan_id:
          description: |-
            The ID of the subscription plan created using the Catalog API.
            For more information, see
            [Set Up and Manage a Subscription Plan](https://developer.squareup.com/docs/subscriptions-api/setup-plan) and 
            [Subscriptions Walkthrough](https://developer.squareup.com/docs/subscriptions-api/walkthrough).
          minLength: 1
          type: string
        price_override_money:
          $ref: "#/components/schemas/Money"
        start_date:
          description: |-
            The start date of the subscription, in YYYY-MM-DD format. For example,
            2013-01-15. If the start date is left empty, the subscription begins
            immediately.
          type: string
        tax_percentage:
          description: |-
            The tax to add when billing the subscription.
            The percentage is expressed in decimal form, using a `'.'` as the decimal
            separator and without a `'%'` sign. For example, a value of 7.5
            corresponds to 7.5%.
          maxLength: 10
          type: string
        timezone:
          description: |-
            The timezone that is used in date calculations for the subscription. If unset, defaults to
            the location timezone. If a timezone is not configured for the location, defaults to "America/New_York".
            Format: the IANA Timezone Database identifier for the location timezone. For
            a list of time zones, see [List of tz database time zones](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
          type: string
      required:
        - location_id
        - plan_id
        - customer_id
      type: object
      x-release-status: PUBLIC
    CreateSubscriptionResponse:
      description: |-
        Defines the fields that are included in the response from the
        [CreateSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/create-subscription) endpoint.
      example:
        subscription:
          card_id: ccof:qy5x8hHGYsgLrp4Q4GB
          created_at: 2020-08-03T21:53:10Z
          customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
          id: 56214fb2-cc85-47a1-93bc-44f3766bb56f
          location_id: S8GWD5R9QB376
          plan_id: 6JHXF3B2CW3YKHDV4XEM674H
          price_override_money:
            amount: 100
            currency: USD
          start_date: 2020-08-01
          status: PENDING
          tax_percentage: "5"
          timezone: America/Los_Angeles
          version: 1594155459464
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        subscription:
          $ref: "#/components/schemas/Subscription"
      type: object
      x-release-status: PUBLIC
    CreateTeamMemberRequest:
      description: Represents a create request for a `TeamMember` object.
      example:
        request_body:
          idempotency_key: idempotency-key-0
          team_member:
            assigned_locations:
              assignment_type: EXPLICIT_LOCATIONS
              location_ids:
                - YSGH2WBKG94QZ
                - GA2Y9HSJ8KRYT
            email_address: joe_doe@gmail.com
            family_name: Doe
            given_name: Joe
            phone_number: "+14159283333"
            reference_id: reference_id_1
            status: ACTIVE
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies this `CreateTeamMember` request.
            Keys can be any valid string, but must be unique for every request.
            For more information, see [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency).

            The minimum length is 1 and the maximum length is 45.
          type: string
        team_member:
          $ref: "#/components/schemas/TeamMember"
      type: object
      x-release-status: PUBLIC
    CreateTeamMemberResponse:
      description: Represents a response from a create request containing the created `TeamMember` object or error messages.
      example:
        team_member:
          assigned_locations:
            assignment_type: EXPLICIT_LOCATIONS
            location_ids:
              - GA2Y9HSJ8KRYT
              - YSGH2WBKG94QZ
          email_address: joe_doe@gmail.com
          family_name: Doe
          given_name: Joe
          id: 1yJlHapkseYnNPETIU1B
          is_owner: false
          phone_number: "+14159283333"
          reference_id: reference_id_1
          status: ACTIVE
      properties:
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_member:
          $ref: "#/components/schemas/TeamMember"
      type: object
      x-release-status: PUBLIC
    CreateTerminalCheckoutRequest:
      description: ""
      example:
        request_body:
          checkout:
            amount_money:
              amount: 2610
              currency: USD
            device_options:
              device_id: dbb5d83a-7838-11ea-bc55-0242ac130003
            note: A brief note
            reference_id: id11572
          idempotency_key: 28a0c3bc-7839-11ea-bc55-0242ac130003
      properties:
        checkout:
          $ref: "#/components/schemas/TerminalCheckout"
        idempotency_key:
          description: |-
            A unique string that identifies this `CreateCheckout` request. Keys can be any valid string but
            must be unique for every `CreateCheckout` request.

            See [Idempotency keys](https://developer.squareup.com/docs/basics/api101/idempotency) for more information.
          maxLength: 64
          minLength: 1
          type: string
      required:
        - idempotency_key
        - checkout
      type: object
      x-release-status: PUBLIC
    CreateTerminalCheckoutResponse:
      description: ""
      example:
        checkout:
          amount_money:
            amount: 2610
            currency: USD
          app_id: APP_ID
          created_at: 2020-04-06T16:39:32.545Z
          deadline_duration: PT10M
          device_options:
            device_id: dbb5d83a-7838-11ea-bc55-0242ac130003
            skip_receipt_screen: false
            tip_settings:
              allow_tipping: false
          id: 08YceKh7B3ZqO
          note: A brief note
          payment_type: CARD_PRESENT
          reference_id: id11572
          status: PENDING
          updated_at: 2020-04-06T16:39:32.545Z
      properties:
        checkout:
          $ref: "#/components/schemas/TerminalCheckout"
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    CreateTerminalRefundRequest:
      description: ""
      example:
        request_body:
          idempotency_key: 402a640b-b26f-401f-b406-46f839590c04
          refund:
            amount_money:
              amount: 111
              currency: CAD
            device_id: f72dfb8e-4d65-4e56-aade-ec3fb8d33291
            payment_id: 5O5OvgkcNUhl7JBuINflcjKqUzXZY
            reason: Returning items
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies this `CreateRefund` request. Keys can be any valid string but
            must be unique for every `CreateRefund` request.

            See [Idempotency keys](https://developer.squareup.com/docs/basics/api101/idempotency) for more information.
          minLength: 1
          type: string
        refund:
          $ref: "#/components/schemas/TerminalRefund"
      required:
        - idempotency_key
      type: object
      x-release-status: PUBLIC
    CreateTerminalRefundResponse:
      description: ""
      example:
        refund:
          amount_money:
            amount: 111
            currency: CAD
          app_id: sandbox-sq0idb-c2OuYt13YaCAeJq_2cd8OQ
          card:
            bin: "411111"
            card_brand: INTERAC
            card_type: CREDIT
            exp_month: 1
            exp_year: 2022
            fingerprint: sq-1-B1fP9MNNmZgVVaPKRND6oDKYbz25S2cTvg9Mzwg3RMTK1zT1PiGRT-AE3nTA8vSmmw
            last_4: "1111"
          created_at: 2020-09-29T15:21:46.771Z
          deadline_duration: PT5M
          device_id: f72dfb8e-4d65-4e56-aade-ec3fb8d33291
          id: 009DP5HD-5O5OvgkcNUhl7JBuINflcjKqUzXZY
          location_id: 76C9W6K8CNNQ5
          order_id: kcuKDKreRaI4gF4TjmEgZjHk8Z7YY
          payment_id: 5O5OvgkcNUhl7JBuINflcjKqUzXZY
          reason: Returning items
          status: PENDING
          updated_at: 2020-09-29T15:21:46.771Z
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refund:
          $ref: "#/components/schemas/TerminalRefund"
      type: object
      x-release-status: PUBLIC
    Currency:
      description: |-
        Indicates the associated currency for an amount of money. Values correspond
        to [ISO 4217](https://wikipedia.org/wiki/ISO_4217).
      enum:
        - UNKNOWN_CURRENCY
        - AED
        - AFN
        - ALL
        - AMD
        - ANG
        - AOA
        - ARS
        - AUD
        - AWG
        - AZN
        - BAM
        - BBD
        - BDT
        - BGN
        - BHD
        - BIF
        - BMD
        - BND
        - BOB
        - BOV
        - BRL
        - BSD
        - BTN
        - BWP
        - BYR
        - BZD
        - CAD
        - CDF
        - CHE
        - CHF
        - CHW
        - CLF
        - CLP
        - CNY
        - COP
        - COU
        - CRC
        - CUC
        - CUP
        - CVE
        - CZK
        - DJF
        - DKK
        - DOP
        - DZD
        - EGP
        - ERN
        - ETB
        - EUR
        - FJD
        - FKP
        - GBP
        - GEL
        - GHS
        - GIP
        - GMD
        - GNF
        - GTQ
        - GYD
        - HKD
        - HNL
        - HRK
        - HTG
        - HUF
        - IDR
        - ILS
        - INR
        - IQD
        - IRR
        - ISK
        - JMD
        - JOD
        - JPY
        - KES
        - KGS
        - KHR
        - KMF
        - KPW
        - KRW
        - KWD
        - KYD
        - KZT
        - LAK
        - LBP
        - LKR
        - LRD
        - LSL
        - LTL
        - LVL
        - LYD
        - MAD
        - MDL
        - MGA
        - MKD
        - MMK
        - MNT
        - MOP
        - MRO
        - MUR
        - MVR
        - MWK
        - MXN
        - MXV
        - MYR
        - MZN
        - NAD
        - NGN
        - NIO
        - NOK
        - NPR
        - NZD
        - OMR
        - PAB
        - PEN
        - PGK
        - PHP
        - PKR
        - PLN
        - PYG
        - QAR
        - RON
        - RSD
        - RUB
        - RWF
        - SAR
        - SBD
        - SCR
        - SDG
        - SEK
        - SGD
        - SHP
        - SLL
        - SOS
        - SRD
        - SSP
        - STD
        - SVC
        - SYP
        - SZL
        - THB
        - TJS
        - TMT
        - TND
        - TOP
        - TRY
        - TTD
        - TWD
        - TZS
        - UAH
        - UGX
        - USD
        - USN
        - USS
        - UYI
        - UYU
        - UZS
        - VEF
        - VND
        - VUV
        - WST
        - XAF
        - XAG
        - XAU
        - XBA
        - XBB
        - XBC
        - XBD
        - XCD
        - XDR
        - XOF
        - XPD
        - XPF
        - XPT
        - XTS
        - XXX
        - YER
        - ZAR
        - ZMK
        - ZMW
        - BTC
      type: string
      x-enum-elements:
        - description: Unknown currency
          name: UNKNOWN_CURRENCY
        - description: United Arab Emirates dirham
          name: AED
        - description: Afghan afghani
          name: AFN
        - description: Albanian lek
          name: ALL
        - description: Armenian dram
          name: AMD
        - description: Netherlands Antillean guilder
          name: ANG
        - description: Angolan kwanza
          name: AOA
        - description: Argentine peso
          name: ARS
        - description: Australian dollar
          name: AUD
        - description: Aruban florin
          name: AWG
        - description: Azerbaijani manat
          name: AZN
        - description: Bosnia and Herzegovina convertible mark
          name: BAM
        - description: Barbados dollar
          name: BBD
        - description: Bangladeshi taka
          name: BDT
        - description: Bulgarian lev
          name: BGN
        - description: Bahraini dinar
          name: BHD
        - description: Burundian franc
          name: BIF
        - description: Bermudian dollar
          name: BMD
        - description: Brunei dollar
          name: BND
        - description: Boliviano
          name: BOB
        - description: Bolivian Mvdol
          name: BOV
        - description: Brazilian real
          name: BRL
        - description: Bahamian dollar
          name: BSD
        - description: Bhutanese ngultrum
          name: BTN
        - description: Botswana pula
          name: BWP
        - description: Belarusian ruble
          name: BYR
        - description: Belize dollar
          name: BZD
        - description: Canadian dollar
          name: CAD
        - description: Congolese franc
          name: CDF
        - description: WIR Euro
          name: CHE
        - description: Swiss franc
          name: CHF
        - description: WIR Franc
          name: CHW
        - description: Unidad de Fomento
          name: CLF
        - description: Chilean peso
          name: CLP
        - description: Chinese yuan
          name: CNY
        - description: Colombian peso
          name: COP
        - description: Unidad de Valor Real
          name: COU
        - description: Costa Rican colon
          name: CRC
        - description: Cuban convertible peso
          name: CUC
        - description: Cuban peso
          name: CUP
        - description: Cape Verdean escudo
          name: CVE
        - description: Czech koruna
          name: CZK
        - description: Djiboutian franc
          name: DJF
        - description: Danish krone
          name: DKK
        - description: Dominican peso
          name: DOP
        - description: Algerian dinar
          name: DZD
        - description: Egyptian pound
          name: EGP
        - description: Eritrean nakfa
          name: ERN
        - description: Ethiopian birr
          name: ETB
        - description: Euro
          name: EUR
        - description: Fiji dollar
          name: FJD
        - description: Falkland Islands pound
          name: FKP
        - description: Pound sterling
          name: GBP
        - description: Georgian lari
          name: GEL
        - description: Ghanaian cedi
          name: GHS
        - description: Gibraltar pound
          name: GIP
        - description: Gambian dalasi
          name: GMD
        - description: Guinean franc
          name: GNF
        - description: Guatemalan quetzal
          name: GTQ
        - description: Guyanese dollar
          name: GYD
        - description: Hong Kong dollar
          name: HKD
        - description: Honduran lempira
          name: HNL
        - description: Croatian kuna
          name: HRK
        - description: Haitian gourde
          name: HTG
        - description: Hungarian forint
          name: HUF
        - description: Indonesian rupiah
          name: IDR
        - description: Israeli new shekel
          name: ILS
        - description: Indian rupee
          name: INR
        - description: Iraqi dinar
          name: IQD
        - description: Iranian rial
          name: IRR
        - description: Icelandic króna
          name: ISK
        - description: Jamaican dollar
          name: JMD
        - description: Jordanian dinar
          name: JOD
        - description: Japanese yen
          name: JPY
        - description: Kenyan shilling
          name: KES
        - description: Kyrgyzstani som
          name: KGS
        - description: Cambodian riel
          name: KHR
        - description: Comoro franc
          name: KMF
        - description: North Korean won
          name: KPW
        - description: South Korean won
          name: KRW
        - description: Kuwaiti dinar
          name: KWD
        - description: Cayman Islands dollar
          name: KYD
        - description: Kazakhstani tenge
          name: KZT
        - description: Lao kip
          name: LAK
        - description: Lebanese pound
          name: LBP
        - description: Sri Lankan rupee
          name: LKR
        - description: Liberian dollar
          name: LRD
        - description: Lesotho loti
          name: LSL
        - description: Lithuanian litas
          name: LTL
        - description: Latvian lats
          name: LVL
        - description: Libyan dinar
          name: LYD
        - description: Moroccan dirham
          name: MAD
        - description: Moldovan leu
          name: MDL
        - description: Malagasy ariary
          name: MGA
        - description: Macedonian denar
          name: MKD
        - description: Myanmar kyat
          name: MMK
        - description: Mongolian tögrög
          name: MNT
        - description: Macanese pataca
          name: MOP
        - description: Mauritanian ouguiya
          name: MRO
        - description: Mauritian rupee
          name: MUR
        - description: Maldivian rufiyaa
          name: MVR
        - description: Malawian kwacha
          name: MWK
        - description: Mexican peso
          name: MXN
        - description: Mexican Unidad de Inversion
          name: MXV
        - description: Malaysian ringgit
          name: MYR
        - description: Mozambican metical
          name: MZN
        - description: Namibian dollar
          name: NAD
        - description: Nigerian naira
          name: NGN
        - description: Nicaraguan córdoba
          name: NIO
        - description: Norwegian krone
          name: NOK
        - description: Nepalese rupee
          name: NPR
        - description: New Zealand dollar
          name: NZD
        - description: Omani rial
          name: OMR
        - description: Panamanian balboa
          name: PAB
        - description: Peruvian sol
          name: PEN
        - description: Papua New Guinean kina
          name: PGK
        - description: Philippine peso
          name: PHP
        - description: Pakistani rupee
          name: PKR
        - description: Polish złoty
          name: PLN
        - description: Paraguayan guaraní
          name: PYG
        - description: Qatari riyal
          name: QAR
        - description: Romanian leu
          name: RON
        - description: Serbian dinar
          name: RSD
        - description: Russian ruble
          name: RUB
        - description: Rwandan franc
          name: RWF
        - description: Saudi riyal
          name: SAR
        - description: Solomon Islands dollar
          name: SBD
        - description: Seychelles rupee
          name: SCR
        - description: Sudanese pound
          name: SDG
        - description: Swedish krona
          name: SEK
        - description: Singapore dollar
          name: SGD
        - description: Saint Helena pound
          name: SHP
        - description: Sierra Leonean leone
          name: SLL
        - description: Somali shilling
          name: SOS
        - description: Surinamese dollar
          name: SRD
        - description: South Sudanese pound
          name: SSP
        - description: São Tomé and Príncipe dobra
          name: STD
        - description: Salvadoran colón
          name: SVC
        - description: Syrian pound
          name: SYP
        - description: Swazi lilangeni
          name: SZL
        - description: Thai baht
          name: THB
        - description: Tajikstani somoni
          name: TJS
        - description: Turkmenistan manat
          name: TMT
        - description: Tunisian dinar
          name: TND
        - description: Tongan pa'anga
          name: TOP
        - description: Turkish lira
          name: TRY
        - description: Trinidad and Tobago dollar
          name: TTD
        - description: New Taiwan dollar
          name: TWD
        - description: Tanzanian shilling
          name: TZS
        - description: Ukrainian hryvnia
          name: UAH
        - description: Ugandan shilling
          name: UGX
        - description: United States dollar
          name: USD
        - description: United States dollar (next day)
          name: USN
        - description: United States dollar (same day)
          name: USS
        - description: Uruguay Peso en Unidedades Indexadas
          name: UYI
        - description: Uruguyan peso
          name: UYU
        - description: Uzbekistan som
          name: UZS
        - description: Venezuelan bolívar soberano
          name: VEF
        - description: Vietnamese đồng
          name: VND
        - description: Vanuatu vatu
          name: VUV
        - description: Samoan tala
          name: WST
        - description: CFA franc BEAC
          name: XAF
        - description: Silver
          name: XAG
        - description: Gold
          name: XAU
        - description: European Composite Unit
          name: XBA
        - description: European Monetary Unit
          name: XBB
        - description: European Unit of Account 9
          name: XBC
        - description: European Unit of Account 17
          name: XBD
        - description: East Caribbean dollar
          name: XCD
        - description: Special drawing rights (International Monetary Fund)
          name: XDR
        - description: CFA franc BCEAO
          name: XOF
        - description: Palladium
          name: XPD
        - description: CFP franc
          name: XPF
        - description: Platinum
          name: XPT
        - description: Code reserved for testing
          name: XTS
        - description: No currency
          name: XXX
        - description: Yemeni rial
          name: YER
        - description: South African rand
          name: ZAR
        - description: Zambian kwacha
          name: ZMK
        - description: Zambian kwacha
          name: ZMW
        - description: Bitcoin
          name: BTC
      x-release-status: PUBLIC
    CustomAttributeFilter:
      description: |-
        Supported custom attribute query expressions for calling the
        [SearchCatalogItems](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-items)
        endpoint to search for items or item variations.
      properties:
        bool_filter:
          description: |-
            A query expression to filter items or item variations by matching their custom attributes'
            `boolean_value` property values
            against the specified Boolean expression.
          type: boolean
        custom_attribute_definition_id:
          description: |-
            A query expression to filter items or item variations by matching their custom attributes'
            `custom_attribute_definition_id`
            property value against the the specified id.
          type: string
        key:
          description: |-
            A query expression to filter items or item variations by matching their custom attributes'
            `key` property value against
            the specified key.
          type: string
        number_filter:
          $ref: "#/components/schemas/Range"
        selection_uids_filter:
          description: |-
            A query expression to filter items or item variations by matching  their custom attributes'
            `selection_uid_values`
            values against the specified selection uids.
          items:
            type: string
          type: array
        string_filter:
          description: |-
            A query expression to filter items or item variations by matching their custom attributes'
            `string_value`  property value
            against the specified text.
          type: string
      type: object
      x-release-status: PUBLIC
    Customer:
      description: Represents a Square customer profile in the Customer Directory of a Square seller.
      properties:
        address:
          $ref: "#/components/schemas/Address"
        birthday:
          description: |-
            The birthday associated with the customer profile, in RFC 3339 format. The year is optional. The timezone and time are not allowed.
            For example, `0000-09-21T00:00:00-00:00` represents a birthday on September 21 and `1998-09-21T00:00:00-00:00` represents a birthday on September 21, 1998.
          type: string
        cards:
          description: |-
            Payment details of the credit, debit, and gift cards stored on file for the customer profile. 

            DEPRECATED at version 2021-06-16. Replaced by calling [ListCards](https://developer.squareup.com/reference/square_2021-08-18/cards-api/list-cards) (for credit and debit cards on file) 
            or [ListGiftCards](https://developer.squareup.com/reference/square_2021-08-18/gift-cards-api/list-gift-cards) (for gift cards on file) and including the `customer_id` query parameter. 
            For more information, see [Migrate to the Cards API and Gift Cards API](https://developer.squareup.com/docs/customers-api/use-the-api/integrate-with-other-services#migrate-customer-cards).
          items:
            $ref: "#/components/schemas/Card"
          type: array
          x-is-deprecated: true
          x-release-status: DEPRECATED
        company_name:
          description: A business name associated with the customer profile.
          type: string
        created_at:
          description: The timestamp when the customer profile was created, in RFC 3339 format.
          type: string
          x-read-only: true
        creation_source:
          description: |-
            A creation source represents the method used to create the
            customer profile.
          type: string
        email_address:
          description: The email address associated with the customer profile.
          type: string
        family_name:
          description: The family (i.e., last) name associated with the customer profile.
          type: string
        given_name:
          description: The given (i.e., first) name associated with the customer profile.
          type: string
        group_ids:
          description: The IDs of customer groups the customer belongs to.
          items:
            type: string
          type: array
        id:
          description: A unique Square-assigned ID for the customer profile.
          type: string
        nickname:
          description: A nickname for the customer profile.
          type: string
        note:
          description: A custom note associated with the customer profile.
          type: string
        phone_number:
          description: The 11-digit phone number associated with the customer profile.
          type: string
        preferences:
          $ref: "#/components/schemas/CustomerPreferences"
        reference_id:
          description: |-
            An optional second ID used to associate the customer profile with an
            entity in another system.
          type: string
        segment_ids:
          description: The IDs of segments the customer belongs to.
          items:
            type: string
          type: array
        updated_at:
          description: The timestamp when the customer profile was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
        version:
          description: The Square-assigned version number of the customer profile. The version number is incremented each time an update is committed to the customer profile, except for changes to customer segment membership and cards on file.
          format: int64
          type: integer
      type: object
      x-release-status: PUBLIC
    CustomerCreationSource:
      description: Indicates the method used to create the customer profile.
      enum:
        - OTHER
        - APPOINTMENTS
        - COUPON
        - DELETION_RECOVERY
        - DIRECTORY
        - EGIFTING
        - EMAIL_COLLECTION
        - FEEDBACK
        - IMPORT
        - INVOICES
        - LOYALTY
        - MARKETING
        - MERGE
        - ONLINE_STORE
        - INSTANT_PROFILE
        - TERMINAL
        - THIRD_PARTY
        - THIRD_PARTY_IMPORT
        - UNMERGE_RECOVERY
      type: string
      x-enum-elements:
        - description: |-
            The default creation source. This source is typically used for backward/future
            compatibility when the original source of a customer profile is
            unrecognized. For example, when older clients do not support newer
            source types.
          name: OTHER
        - description: |-
            The customer profile was created automatically when an appointment
            was scheduled.
          name: APPOINTMENTS
        - description: |-
            The customer profile was created automatically when a coupon was issued
            using Square Point of Sale.
          name: COUPON
        - description: |-
            The customer profile was restored through Square's deletion recovery
            process.
          name: DELETION_RECOVERY
        - description: |-
            The customer profile was created manually through Square Seller Dashboard or the 
            Point of Sale application.
          name: DIRECTORY
        - description: |-
            The customer profile was created automatically when a gift card was
            issued using Square Point of Sale. Customer profiles are created for
            both the buyer and the recipient of the gift card.
          name: EGIFTING
        - description: |-
            The customer profile was created through Square Point of Sale when
            signing up for marketing emails during checkout.
          name: EMAIL_COLLECTION
        - description: |-
            The customer profile was created automatically when providing feedback
            through a digital receipt.
          name: FEEDBACK
        - description: |-
            The customer profile was created automatically when importing customer
            data through Square Seller Dashboard.
          name: IMPORT
        - description: The customer profile was created automatically during an invoice payment.
          name: INVOICES
        - description: |-
            The customer profile was created automatically when customers provide a
            phone number for loyalty reward programs during checkout.
          name: LOYALTY
        - description: |-
            The customer profile was created as the result of a campaign managed
            through Square’s Facebook integration.
          name: MARKETING
        - description: |-
            The customer profile was created as the result of explicitly merging
            multiple customer profiles through the Square Seller Dashboard or the Point of
            Sale application.
          name: MERGE
        - description: |-
            The customer profile was created through Square's Online Store solution
            (legacy service).
          name: ONLINE_STORE
        - description: |-
            The customer profile was created automatically as the result of a successful
            transaction that did not explicitly link to an existing customer profile.
          name: INSTANT_PROFILE
        - description: The customer profile was created through Square's Virtual Terminal.
          name: TERMINAL
        - description: The customer profile was created through a Square API call.
          name: THIRD_PARTY
        - description: |-
            The customer profile was created by a third-party product and imported
            through an official integration.
          name: THIRD_PARTY_IMPORT
        - description: |-
            The customer profile was restored through Square's unmerge recovery
            process.
          name: UNMERGE_RECOVERY
      x-release-status: PUBLIC
    CustomerCreationSourceFilter:
      description: |-
        The creation source filter.

        If one or more creation sources are set, customer profiles are included in,
        or excluded from, the result if they match at least one of the filter criteria.
      properties:
        rule:
          description: |-
            Indicates whether a customer profile matching the filter criteria
            should be included in the result or excluded from the result.

            Default: `INCLUDE`.
          type: string
        values:
          description: The list of creation sources used as filtering criteria.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    CustomerFilter:
      description: |-
        Represents a set of `CustomerQuery` filters used to limit the set of
        customers returned by the [SearchCustomers](https://developer.squareup.com/reference/square_2021-08-18/customers-api/search-customers) endpoint.
      properties:
        created_at:
          $ref: "#/components/schemas/TimeRange"
        creation_source:
          $ref: "#/components/schemas/CustomerCreationSourceFilter"
        email_address:
          $ref: "#/components/schemas/CustomerTextFilter"
        group_ids:
          $ref: "#/components/schemas/FilterValue"
        phone_number:
          $ref: "#/components/schemas/CustomerTextFilter"
        reference_id:
          $ref: "#/components/schemas/CustomerTextFilter"
        updated_at:
          $ref: "#/components/schemas/TimeRange"
      type: object
      x-release-status: PUBLIC
    CustomerGroup:
      description: |-
        Represents a group of customer profiles. 

        Customer groups can be created, be modified, and have their membership defined using 
        the Customers API or within the Customer Directory in the Square Seller Dashboard or Point of Sale.
      properties:
        created_at:
          description: The timestamp when the customer group was created, in RFC 3339 format.
          type: string
          x-read-only: true
        id:
          description: A unique Square-generated ID for the customer group.
          maxLength: 255
          type: string
          x-read-only: true
        name:
          description: The name of the customer group.
          type: string
        updated_at:
          description: The timestamp when the customer group was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
      required:
        - name
      type: object
      x-release-status: PUBLIC
    CustomerInclusionExclusion:
      description: |-
        Indicates whether customers should be included in, or excluded from,
        the result set when they match the filtering criteria.
      enum:
        - INCLUDE
        - EXCLUDE
      type: string
      x-enum-elements:
        - description: |-
            Customers should be included in the result set when they match the
            filtering criteria.
          name: INCLUDE
        - description: |-
            Customers should be excluded from the result set when they match
            the filtering criteria.
          name: EXCLUDE
      x-release-status: PUBLIC
    CustomerPreferences:
      description: Represents communication preferences for the customer profile.
      properties:
        email_unsubscribed:
          description: Indicates whether the customer has unsubscribed from marketing campaign emails. A value of `true` means that the customer chose to opt out of email marketing from the current Square seller or from all Square sellers. This value is read-only from the Customers API.
          type: boolean
      type: object
      x-release-status: PUBLIC
    CustomerQuery:
      description: |-
        Represents a query (including filtering criteria, sorting criteria, or both) used to search
        for customer profiles.
      properties:
        filter:
          $ref: "#/components/schemas/CustomerFilter"
        sort:
          $ref: "#/components/schemas/CustomerSort"
      type: object
      x-release-status: PUBLIC
    CustomerSegment:
      description: |-
        Represents a group of customer profiles that match one or more predefined filter criteria. 

        Segments (also known as Smart Groups) are defined and created within the Customer Directory in the
        Square Seller Dashboard or Point of Sale.
      properties:
        created_at:
          description: The timestamp when the segment was created, in RFC 3339 format.
          type: string
          x-read-only: true
        id:
          description: A unique Square-generated ID for the segment.
          maxLength: 255
          type: string
          x-read-only: true
        name:
          description: The name of the segment.
          type: string
          x-read-only: true
        updated_at:
          description: The timestamp when the segment was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
      required:
        - name
      type: object
      x-release-status: PUBLIC
    CustomerSort:
      description: Specifies how searched customers profiles are sorted, including the sort key and sort order.
      properties:
        field:
          description: |-
            Use one or more customer attributes as the sort key to sort searched customer profiles. 
            For example, use the creation date (`created_at`) of customers or default attributes as the sort key.


            Default: `DEFAULT`.
          type: string
        order:
          description: |-
            Indicates the order in which results should be sorted based on the
            sort field value. Strings use standard alphabetic comparison
            to determine order. Strings representing numbers are sorted as strings.

            Default: `ASC`.
          type: string
      type: object
      x-release-status: PUBLIC
    CustomerSortField:
      description: Specifies customer attributes as the sort key to customer profiles returned from a search.
      enum:
        - DEFAULT
        - CREATED_AT
      type: string
      x-enum-elements:
        - description: |-
            Use the default sort key. By default, customers are sorted
            alphanumerically by concatenating their `given_name` and `family_name`. If
            neither name field is set, string comparison is performed using one of the
            remaining fields in the following order: `company_name`, `email`,
            `phone_number`.
          name: DEFAULT
        - description: Use the creation date attribute (`created_at`) of customer profiles as the sort key.
          name: CREATED_AT
      x-release-status: PUBLIC
    CustomerTextFilter:
      description: |-
        A filter to select customers based on exact or fuzzy matching of
        customer attributes against a specified query. Depending on the customer attributes, 
        the filter can be case-sensitive. This filter can be exact or fuzzy, but it cannot be both.
      properties:
        exact:
          description: Use the exact filter to select customers whose attributes match exactly the specified query.
          type: string
        fuzzy:
          description: |-
            Use the fuzzy filter to select customers whose attributes match the specified query 
            in a fuzzy manner. When the fuzzy option is used, search queries are tokenized, and then 
            each query token must be matched somewhere in the searched attribute. For single token queries, 
            this is effectively the same behavior as a partial match operation.
          type: string
      type: object
      x-release-status: PUBLIC
    DateRange:
      description: |-
        A range defined by two dates. Used for filtering a query for Connect v2
        objects that have date properties.
      properties:
        end_date:
          description: |-
            A string in `YYYY-MM-DD` format, such as `2017-10-31`, per the ISO 8601
            extended format for calendar dates.
            The end of a date range (inclusive).
          type: string
        start_date:
          description: |-
            A string in `YYYY-MM-DD` format, such as `2017-10-31`, per the ISO 8601
            extended format for calendar dates.
            The beginning of a date range (inclusive).
          type: string
      type: object
      x-release-status: PUBLIC
    DayOfWeek:
      description: Indicates the specific day  of the week.
      enum:
        - SUN
        - MON
        - TUE
        - WED
        - THU
        - FRI
        - SAT
      type: string
      x-enum-elements:
        - description: Sunday
          name: SUN
        - description: Monday
          name: MON
        - description: Tuesday
          name: TUE
        - description: Wednesday
          name: WED
        - description: Thursday
          name: THU
        - description: Friday
          name: FRI
        - description: Saturday
          name: SAT
      x-release-status: PUBLIC
    DeleteBreakTypeRequest:
      description: A request to delete a `BreakType`.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    DeleteBreakTypeResponse:
      description: |-
        The response to a request to delete a `BreakType`. The response might contain a set 
        of `Error` objects if the request resulted in errors.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    DeleteCatalogObjectRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectRequest.csharp
        java: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectRequest.java
        javascript: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectRequest.javascript
        php: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectRequest.php
        python: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectRequest.python
        ruby: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectRequest.ruby
    DeleteCatalogObjectResponse:
      description: ""
      example:
        deleted_at: 2016-11-16T22:25:24.878Z
        deleted_object_ids:
          - 7SB3ZQYJ5GDMVFL7JK46JCHT
          - KQLFFHA6K6J3YQAQAWDQAL57
      properties:
        deleted_at:
          description: |-
            The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            of this deletion in RFC 3339 format, e.g., `2016-09-04T23:59:33.123Z`.
          type: string
        deleted_object_ids:
          description: |-
            The IDs of all catalog objects deleted by this request.
            Multiple IDs may be returned when associated objects are also deleted, for example
            a catalog item variation will be deleted (and its ID included in this field)
            when its parent catalog item is deleted.
          items:
            type: string
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.csharp
        java: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.java
        javascript: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.javascript
        php: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.php
        python: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.python
        ruby: /sdk_samples/Catalog/DeleteCatalogObject/DeleteCatalogObjectResponse.ruby
    DeleteCustomerCardRequest:
      description: |-
        Defines the fields that are included in requests to the
        `DeleteCustomerCard` endpoint.
      example: {}
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardRequest.csharp
        java: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardRequest.java
        javascript: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardRequest.javascript
        php: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardRequest.php
        python: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardRequest.python
        ruby: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardRequest.ruby
    DeleteCustomerCardResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `DeleteCustomerCard` endpoint.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardResponse.csharp
        java: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardResponse.java
        javascript: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardResponse.javascript
        php: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardResponse.php
        python: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardResponse.python
        ruby: /sdk_samples/DeleteCustomerCard/DeleteCustomerCardResponse.ruby
    DeleteCustomerGroupRequest:
      description: |-
        Defines the fields that can be included in a request to the
        [DeleteCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/delete-customer-group) endpoint.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    DeleteCustomerGroupResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [DeleteCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/delete-customer-group) endpoint.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    DeleteCustomerRequest:
      description: |-
        Defines the fields that are included in a request to the `DeleteCustomer`
        endpoint.
      example:
        request_params: ?version=11
      properties:
        version:
          description: |-
            The current version of the customer profile.

            As a best practice, you should include this parameter to enable [optimistic concurrency](https://developer.squareup.com/docs/working-with-apis/optimistic-concurrency) control.  For more information, see [Delete a customer profile](https://developer.squareup.com/docs/customers-api/use-the-api/keep-records#delete-customer-profile).
          format: int64
          type: integer
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/DeleteCustomer/DeleteCustomerRequest.csharp
        java: /sdk_samples/DeleteCustomer/DeleteCustomerRequest.java
        javascript: /sdk_samples/DeleteCustomer/DeleteCustomerRequest.javascript
        php: /sdk_samples/DeleteCustomer/DeleteCustomerRequest.php
        python: /sdk_samples/DeleteCustomer/DeleteCustomerRequest.python
        ruby: /sdk_samples/DeleteCustomer/DeleteCustomerRequest.ruby
    DeleteCustomerResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `DeleteCustomer` endpoint.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/DeleteCustomer/DeleteCustomerResponse.csharp
        java: /sdk_samples/DeleteCustomer/DeleteCustomerResponse.java
        javascript: /sdk_samples/DeleteCustomer/DeleteCustomerResponse.javascript
        php: /sdk_samples/DeleteCustomer/DeleteCustomerResponse.php
        python: /sdk_samples/DeleteCustomer/DeleteCustomerResponse.python
        ruby: /sdk_samples/DeleteCustomer/DeleteCustomerResponse.ruby
    DeleteDisputeEvidenceRequest:
      description: Defines the parameters for a `DeleteDisputeEvidence` request.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    DeleteDisputeEvidenceResponse:
      description: Defines the fields in a `DeleteDisputeEvidence` response.
      example: {}
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    DeleteInvoiceRequest:
      description: Describes a `DeleteInvoice` request.
      properties:
        version:
          description: |-
            The version of the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) to delete.
            If you do not know the version, you can call [GetInvoice](https://developer.squareup.com/reference/square_2021-08-18/invoices-api/get-invoice) or 
            [ListInvoices](https://developer.squareup.com/reference/square_2021-08-18/invoices-api/list-invoices).
          type: integer
      type: object
      x-release-status: PUBLIC
    DeleteInvoiceResponse:
      description: Describes a `DeleteInvoice` response.
      example: {}
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    DeleteLoyaltyRewardRequest:
      description: A request to delete a loyalty reward.
      example:
        request_params: ?reward_id=9f18ac21-233a-31c3-be77-b45840f5a810
      properties: {}
      type: object
      x-release-status: PUBLIC
    DeleteLoyaltyRewardResponse:
      description: A response returned by the API call.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    DeleteShiftRequest:
      description: A request to delete a `Shift`.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    DeleteShiftResponse:
      description: |-
        The response to a request to delete a `Shift`. The response might contain a set of 
        `Error` objects if the request resulted in errors.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    DeleteSnippetRequest:
      description: Represents a `DeleteSnippet` request.
      properties: {}
      type: object
      x-release-status: PUBLIC
    DeleteSnippetResponse:
      description: Represents a `DeleteSnippet` response.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    DeprecatedCreateDisputeEvidenceFileRequest:
      description: Defines the parameters for a `DeprecatedCreateDisputeEvidenceFile` request.
      example: {}
      properties:
        content_type:
          description: |-
            The MIME type of the uploaded file.
            The type can be image/heic, image/heif, image/jpeg, application/pdf, image/png, or image/tiff.
          maxLength: 40
          minLength: 1
          type: string
        evidence_type:
          description: The type of evidence you are uploading.
          type: string
        idempotency_key:
          description: The Unique ID. For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 45
          minLength: 1
          type: string
      required:
        - idempotency_key
      type: object
      x-release-status: PUBLIC
    DeprecatedCreateDisputeEvidenceFileResponse:
      description: Defines the fields in a `DeprecatedCreateDisputeEvidenceFile` response.
      example:
        evidence:
          dispute_id: bVTprrwk0gygTLZ96VX1oB
          evidence_file:
            filename: evidence.tiff
            filetype: image/tiff
          evidence_id: TOomLInj6iWmP3N8qfCXrB
          evidence_type: GENERIC_EVIDENCE
          uploaded_at: 2018-10-18T16:01:10.000Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        evidence:
          $ref: "#/components/schemas/DisputeEvidence"
      type: object
      x-release-status: PUBLIC
    DeprecatedCreateDisputeEvidenceTextRequest:
      description: Defines the parameters for a `DeprecatedCreateDisputeEvidenceText` request.
      example:
        request_body:
          evidence_text: 1Z8888888888888888
          evidence_type: TRACKING_NUMBER
          idempotency_key: ed3ee3933d946f1514d505d173c82648
      properties:
        evidence_text:
          description: The evidence string.
          maxLength: 500
          minLength: 1
          type: string
        evidence_type:
          description: The type of evidence you are uploading.
          type: string
        idempotency_key:
          description: The Unique ID. For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 45
          minLength: 1
          type: string
      required:
        - idempotency_key
        - evidence_text
      type: object
      x-release-status: PUBLIC
    DeprecatedCreateDisputeEvidenceTextResponse:
      description: Defines the fields in a `DeprecatedCreateDisputeEvidenceText` response.
      example:
        evidence:
          dispute_id: bVTprrwk0gygTLZ96VX1oB
          evidence_text: 1Z8888888888888888
          evidence_type: TRACKING_NUMBER
          id: TOomLInj6iWmP3N8qfCXrB
          uploaded_at: 2018-10-18T16:01:10.000Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        evidence:
          $ref: "#/components/schemas/DisputeEvidence"
      type: object
      x-release-status: PUBLIC
    Device:
      description: ""
      properties:
        id:
          description: The device's Square-issued ID.
          type: string
        name:
          description: The device's merchant-specified name.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    DeviceCheckoutOptions:
      description: ""
      properties:
        device_id:
          description: |-
            The unique ID of the device intended for this `TerminalCheckout`.
            A list of `DeviceCode` objects can be retrieved from the /v2/devices/codes endpoint.
            Match a `DeviceCode.device_id` value with `device_id` to get the associated device code.
          type: string
        skip_receipt_screen:
          description: Instructs the device to skip the receipt screen. Defaults to false.
          type: boolean
        tip_settings:
          $ref: "#/components/schemas/TipSettings"
      required:
        - device_id
      type: object
      x-release-status: PUBLIC
    DeviceCode:
      description: ""
      properties:
        code:
          description: The unique code that can be used to login.
          type: string
          x-read-only: true
        created_at:
          description: When this DeviceCode was created. Timestamp in RFC 3339 format.
          type: string
          x-read-only: true
        device_id:
          description: The unique id of the device that used this code. Populated when the device is paired up.
          type: string
          x-read-only: true
        id:
          description: The unique id for this device code.
          type: string
          x-read-only: true
        location_id:
          description: The location assigned to this code.
          maxLength: 50
          type: string
        name:
          description: An optional user-defined name for the device code.
          maxLength: 128
          type: string
        pair_by:
          description: When this DeviceCode will expire and no longer login. Timestamp in RFC 3339 format.
          type: string
          x-read-only: true
        paired_at:
          description: When this DeviceCode was paired. Timestamp in RFC 3339 format.
          type: string
          x-read-only: true
        product_type:
          description: The targeting product type of the device code.
          type: string
        status:
          description: The pairing status of the device code.
          type: string
          x-read-only: true
        status_changed_at:
          description: When this DeviceCode's status was last changed. Timestamp in RFC 3339 format.
          type: string
          x-read-only: true
      required:
        - product_type
      type: object
      x-release-status: PUBLIC
    DeviceCodeStatus:
      description: DeviceCode.Status enum.
      enum:
        - UNKNOWN
        - UNPAIRED
        - PAIRED
        - EXPIRED
      type: string
      x-enum-elements:
        - description: The status cannot be determined or does not exist.
          name: UNKNOWN
        - description: The device code is just created and unpaired.
          name: UNPAIRED
        - description: The device code has been signed in and paired to a device.
          name: PAIRED
        - description: The device code was unpaired and expired before it was paired.
          name: EXPIRED
      x-release-status: PUBLIC
    DeviceDetails:
      description: Details about the device that took the payment.
      properties:
        device_id:
          description: The Square-issued ID of the device.
          maxLength: 255
          type: string
        device_installation_id:
          description: The Square-issued installation ID for the device.
          maxLength: 255
          type: string
        device_name:
          description: The name of the device set by the seller.
          maxLength: 255
          type: string
      type: object
      x-release-status: PUBLIC
    DigitalWalletDetails:
      description: Additional details about `WALLET` type payments. Contains only non-confidential information.
      properties:
        status:
          description: |-
            The status of the `WALLET` payment. The status can be `AUTHORIZED`, `CAPTURED`, `VOIDED`, or
            `FAILED`.
          maxLength: 50
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    DisableCardRequest:
      description: |-
        Disables the card, preventing any further updates or charges. Disabling
        an already disabled card is allowed but has no effect. Accessible via
        HTTP requests at POST https://connect.squareup.com/v2/cards/{card_id}/disable
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    DisableCardResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [DisableCard](#endpoint-cards-disablecard) endpoint.

        Note: if there are errors processing the request, the card field will not be
        present.
      example:
        card:
          billing_address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          bin: "411111"
          card_brand: VISA
          card_type: CREDIT
          cardholder_name: Amelia Earhart
          customer_id: VDKXEEKPJN48QDG3BGGFAK05P8
          enabled: false
          exp_month: 11
          exp_year: 2022
          fingerprint: ex-p-cs80EK9Flz7LsCMv-szbptQ_ssAGrhemzSTsPFgt9nzyE6t7okiLIQc-qw_quqKX4Q
          id: ccof:uIbfJXhXETSP197M3GB
          last_4: "1111"
          prepaid_type: NOT_PREPAID
          reference_id: user-id-1
          version: 2
      properties:
        card:
          $ref: "#/components/schemas/Card"
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    Dispute:
      description: Represents a dispute a cardholder initiated with their bank.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        brand_dispute_id:
          description: The ID of the dispute in the card brand system, generated by the card brand.
          maxLength: 40
          minLength: 1
          type: string
        card_brand:
          description: The card brand used in the disputed payment.
          type: string
        created_at:
          description: The timestamp when the dispute was created, in RFC 3339 format.
          maxLength: 40
          minLength: 1
          type: string
          x-read-only: true
        dispute_id:
          description: The unique ID for this `Dispute`, generated by Square.
          maxLength: 40
          minLength: 1
          type: string
          x-is-deprecated: true
          x-release-status: DEPRECATED
        disputed_payment:
          $ref: "#/components/schemas/DisputedPayment"
        due_at:
          description: The time when the next action is due, in RFC 3339 format.
          maxLength: 40
          minLength: 1
          type: string
        evidence_ids:
          description: The IDs of the evidence associated with the dispute.
          items:
            maxLength: 40
            minLength: 1
            type: string
          type: array
          x-is-deprecated: true
          x-release-status: DEPRECATED
        id:
          description: The unique ID for this `Dispute`, generated by Square.
          maxLength: 40
          minLength: 1
          type: string
        location_id:
          description: The ID of the location where the dispute originated.
          maxLength: 40
          minLength: 1
          type: string
        reason:
          description: The dispute reason why the cardholder initiated the dispute with their bank.
          type: string
        reported_at:
          description: The timestamp when the dispute was reported, in RFC 3339 format.
          maxLength: 40
          minLength: 1
          type: string
        reported_date:
          description: The timestamp when the dispute was reported, in RFC 3339 format.
          maxLength: 40
          minLength: 1
          type: string
          x-is-deprecated: true
          x-release-status: DEPRECATED
        state:
          description: The current state of this dispute.
          type: string
        updated_at:
          description: The timestamp when the dispute was last updated, in RFC 3339 format.
          maxLength: 40
          minLength: 1
          type: string
          x-read-only: true
        version:
          description: The current version of the `Dispute`.
          type: integer
      type: object
      x-release-status: PUBLIC
    DisputeEvidence:
      description: ""
      properties:
        dispute_id:
          description: The ID of the dispute the evidence is associated with.
          maxLength: 40
          minLength: 1
          type: string
        evidence_file:
          $ref: "#/components/schemas/DisputeEvidenceFile"
        evidence_id:
          description: The Square-generated ID of the evidence.
          maxLength: 40
          minLength: 1
          type: string
          x-is-deprecated: true
          x-release-status: DEPRECATED
        evidence_text:
          description: Raw text
          maxLength: 500
          minLength: 1
          type: string
        evidence_type:
          description: The type of the evidence.
          type: string
        id:
          description: The Square-generated ID of the evidence.
          maxLength: 40
          minLength: 1
          type: string
        uploaded_at:
          description: The time when the next action is due, in RFC 3339 format.
          maxLength: 40
          minLength: 1
          type: string
      type: object
      x-release-status: PUBLIC
    DisputeEvidenceCreatedWebhook:
      description: |-
        Published when evidence is added to a [Dispute](https://developer.squareup.com/reference/square_2021-08-18/objects/Dispute)
        from the Disputes Dashboard in the Seller Dashboard, the Square Point of Sale app,
        or by calling either [CreateDisputeEvidenceFile](https://developer.squareup.com/reference/square_2021-08-18/disputes-api/create-dispute-evidence-file) or [CreateDisputeEvidenceText](https://developer.squareup.com/reference/square_2021-08-18/disputes-api/create-dispute-evidence-text).
      example:
        created_at: 2020-02-19T21:27:28.851Z
        data:
          id: ORSEVtZAJxb37RA1EiGw
          object:
            dispute:
              amount_money:
                amount: 8801
                currency: USD
              brand_dispute_id: r9rKGSBBQbywBNnWWIiGFg
              card_brand: VISA
              created_at: 2020-02-19T21:24:53.258Z
              disputed_payment:
                payment_id: fbmsaEOpoARDKxiSGH1fqPuqoqFZY
              due_at: 2020-03-04T00:00:00.000Z
              id: ORSEVtZAJxb37RA1EiGw
              location_id: VJDQQP3CG14EY
              reason: AMOUNT_DIFFERS
              reported_at: 2020-02-19T00:00:00.000Z
              state: EVIDENCE_REQUIRED
              updated_at: 2020-02-19T21:27:28.851Z
              version: 2
          type: dispute
        event_id: 6f606f30-53d0-495a-87f0-958576fc954f
        location_id: VJDQQP3CG14EY
        merchant_id: 0HPGX5JYE6EE1
        type: dispute.evidence.created
      properties:
        created_at:
          description: Timestamp of when the webhook event was created, in RFC 3339 format.
          type: string
          x-read-only: true
        data:
          $ref: "#/components/schemas/DisputeEvidenceCreatedWebhookData"
        event_id:
          description: A unique ID for the webhook event.
          type: string
        location_id:
          description: The ID of the target location associated with the event.
          type: string
        merchant_id:
          description: The ID of the target merchant associated with the event.
          type: string
        type:
          description: The type of event this represents.
          type: string
      type: object
      x-release-status: PUBLIC
    DisputeEvidenceCreatedWebhookData:
      description: ""
      properties:
        id:
          description: ID of the affected dispute.
          type: string
        object:
          $ref: "#/components/schemas/DisputeEvidenceCreatedWebhookObject"
        type:
          description: Name of the affected dispute's type.
          type: string
      type: object
      x-release-status: PUBLIC
    DisputeEvidenceCreatedWebhookObject:
      description: ""
      properties:
        object:
          $ref: "#/components/schemas/Dispute"
      type: object
      x-release-status: PUBLIC
    DisputeEvidenceFile:
      description: A file to be uploaded as dispute evidence.
      properties:
        filename:
          description: 'The file name including the file extension. For example: "receipt.tiff".'
          maxLength: 40
          minLength: 1
          type: string
        filetype:
          description: Dispute evidence files must be application/pdf, image/heic, image/heif, image/jpeg, image/png, or image/tiff formats.
          maxLength: 40
          minLength: 1
          type: string
      type: object
      x-release-status: PUBLIC
    DisputeEvidenceType:
      description: The type of the dispute evidence.
      enum:
        - GENERIC_EVIDENCE
        - ONLINE_OR_APP_ACCESS_LOG
        - AUTHORIZATION_DOCUMENTATION
        - CANCELLATION_OR_REFUND_DOCUMENTATION
        - CARDHOLDER_COMMUNICATION
        - CARDHOLDER_INFORMATION
        - PURCHASE_ACKNOWLEDGEMENT
        - DUPLICATE_CHARGE_DOCUMENTATION
        - PRODUCT_OR_SERVICE_DESCRIPTION
        - RECEIPT
        - SERVICE_RECEIVED_DOCUMENTATION
        - PROOF_OF_DELIVERY_DOCUMENTATION
        - RELATED_TRANSACTION_DOCUMENTATION
        - REBUTTAL_EXPLANATION
        - TRACKING_NUMBER
      type: string
      x-enum-elements:
        - description: |-
            Square assumes this evidence type if you do not provide a type when uploading evidence.

            Use when uploading evidence as a file or string.
          name: GENERIC_EVIDENCE
        - description: |-
            Server or activity logs that show proof of the cardholder’s identity and that the
            cardholder successfully ordered and received the goods (digitally or otherwise).
            Example evidence includes IP addresses, corresponding timestamps/dates, cardholder’s name and email
            address linked to a cardholder profile held by the seller, proof the same device and card (used
            in dispute) were previously used in prior undisputed transaction, and any related detailed activity.

            Use when uploading evidence as a file or string.
          name: ONLINE_OR_APP_ACCESS_LOG
        - description: |-
            Evidence that the cardholder did provide authorization for the charge.
            Example evidence includes a signed credit card authorization.

            Use when uploading evidence as a file.
          name: AUTHORIZATION_DOCUMENTATION
        - description: |-
            Evidence that the cardholder acknowledged your refund or cancellation policy.
            Example evidence includes a signature or checkbox showing the cardholder’s acknowledgement of your
            refund or cancellation policy.

            Use when uploading evidence as a file or string.
          name: CANCELLATION_OR_REFUND_DOCUMENTATION
        - description: |-
            Evidence that shows relevant communication with the cardholder.
            Example evidence includes emails or texts that show the cardholder received goods/services or
            demonstrate cardholder satisfaction.

            Use when uploading evidence as a file.
          name: CARDHOLDER_COMMUNICATION
        - description: |-
            Evidence that validates the customer's identity.
            Example evidence includes personally identifiable details such as name, email address, purchaser IP
            address, and a copy of the cardholder ID.

            Use when uploading evidence as a file or string.
          name: CARDHOLDER_INFORMATION
        - description: |-
            Evidence that shows proof of the sale/transaction.
            Example evidence includes an invoice, contract, or other item showing the customer’s acknowledgement
            of the purchase and your terms.

            Use when uploading evidence as a file or string.
          name: PURCHASE_ACKNOWLEDGEMENT
        - description: |-
            Evidence that shows the charges in question are valid and distinct from one another.
            Example evidence includes receipts, shipping labels, and invoices along with their distinct payment IDs.

            Use when uploading evidence as a file.
          name: DUPLICATE_CHARGE_DOCUMENTATION
        - description: |-
            A description of the product or service sold.

            Use when uploading evidence as a file or string.
          name: PRODUCT_OR_SERVICE_DESCRIPTION
        - description: |-
            A receipt or message sent to the cardholder detailing the charge.
            Note: You do not need to upload the Square receipt; Square submits the receipt on your behalf.

            Use when uploading evidence as a file or string.
          name: RECEIPT
        - description: |-
            Evidence that the service was provided to the cardholder or the expected date that services will be rendered.
            Example evidence includes a signed delivery form, work order, expected delivery date, or other written agreements.

            Use when uploading evidence as a file or string.
          name: SERVICE_RECEIVED_DOCUMENTATION
        - description: |-
            Evidence that shows the product was provided to the cardholder or the expected date of delivery.
            Example evidence includes a signed delivery form or written agreement acknowledging receipt of the goods or services.

            Use when uploading evidence as a file or string.
          name: PROOF_OF_DELIVERY_DOCUMENTATION
        - description: |-
            Evidence that shows the cardholder previously processed transactions on the same card and did not dispute them.
            Note: Square automatically provides up to five distinct Square receipts for related transactions, when available.

            Use when uploading evidence as a file or string.
          name: RELATED_TRANSACTION_DOCUMENTATION
        - description: |-
            An explanation of why the cardholder’s claim is invalid.
            Example evidence includes an explanation of why each distinct charge is a legitimate purchase, why the cardholder’s claim
            for credit owed due to their attempt to cancel, return, or refund is invalid per your stated policy and cardholder
            agreement, or an explanation of how the cardholder did not attempt to remedy the issue with you first to receive credit.

            Use when uploading evidence as a file or string.
          name: REBUTTAL_EXPLANATION
        - description: |-
            The tracking number for the order provided by the shipping carrier. If you have multiple numbers, they need to be
            submitted individually as separate pieces of evidence.

            Use when uploading evidence as a string.
          name: TRACKING_NUMBER
      x-release-status: PUBLIC
    DisputeReason:
      description: |-
        The list of possible reasons why a cardholder might initiate a
        dispute with their bank.
      enum:
        - AMOUNT_DIFFERS
        - CANCELLED
        - DUPLICATE
        - NO_KNOWLEDGE
        - NOT_AS_DESCRIBED
        - NOT_RECEIVED
        - PAID_BY_OTHER_MEANS
        - CUSTOMER_REQUESTS_CREDIT
        - EMV_LIABILITY_SHIFT
      type: string
      x-enum-elements:
        - description: |-
            The cardholder claims that they were charged the wrong amount for the purchase.
            To challenge this dispute, provide specific and concrete evidence that the cardholder agreed
            to the amount charged.
          name: AMOUNT_DIFFERS
        - description: |-
            The cardholder claims that they attempted to return the goods or cancel the service.
            To challenge this dispute, provide specific and concrete evidence to prove that the cardholder
            is not due a refund and that the cardholder acknowledged your cancellation policy.
          name: CANCELLED
        - description: |-
            The cardholder claims that they were charged twice for the same purchase.
            To challenge this dispute, provide specific and concrete evidence that shows both charges are
            legitimate and independent of one another.
          name: DUPLICATE
        - description: |-
            The cardholder claims that they did not make this purchase nor authorized the charge.
            To challenge this dispute, provide specific and concrete evidence that proves that the cardholder
            identity was verified at the time of purchase and that the purchase was authorized.
          name: NO_KNOWLEDGE
        - description: |-
            The cardholder claims the product or service was provided, but the quality of the deliverable
            did not align with the expectations of the cardholder based on the description.
            To challenge this dispute, provide specific and concrete evidence that shows the cardholder is in
            possession of the product as described or received the service as described and agreed on.
          name: NOT_AS_DESCRIBED
        - description: |-
            The cardholder claims the product or service was not received by the cardholder within the
            stated time frame.
            To challenge this dispute, provide specific and concrete evidence to prove that the cardholder is
            in possession of or received the product or service sold.
          name: NOT_RECEIVED
        - description: |-
            The cardholder claims that they previously paid for this purchase.
            To challenge this dispute, provide specific and concrete evidence that shows both charges are
            legitimate and independent of one another or proof that you already provided a credit for the charge.
          name: PAID_BY_OTHER_MEANS
        - description: |-
            The cardholder claims that the purchase was canceled or returned, but they have not yet received
            the credit.
            To challenge this dispute, provide specific and concrete evidence to prove that the cardholder is not
            due a refund and that they acknowledged your cancellation and/or refund policy.
          name: CUSTOMER_REQUESTS_CREDIT
        - description: |-
            A chip-enabled card was not processed through a compliant chip-card reader (for example, it was swiped
            instead of dipped into a chip-card reader).
            You cannot challenge this dispute because the payment did not comply with EMV security requirements.
            For more information, see [What Is EMV?](https://squareup.com/emv)
          name: EMV_LIABILITY_SHIFT
      x-release-status: PUBLIC
    DisputeState:
      description: The list of possible dispute states.
      enum:
        - UNKNOWN_STATE
        - INQUIRY_EVIDENCE_REQUIRED
        - INQUIRY_PROCESSING
        - INQUIRY_CLOSED
        - EVIDENCE_REQUIRED
        - PROCESSING
        - WON
        - LOST
        - ACCEPTED
        - WAITING_THIRD_PARTY
      type: string
      x-enum-elements:
        - description: ""
          name: UNKNOWN_STATE
        - description: ""
          name: INQUIRY_EVIDENCE_REQUIRED
        - description: ""
          name: INQUIRY_PROCESSING
        - description: ""
          name: INQUIRY_CLOSED
        - description: ""
          name: EVIDENCE_REQUIRED
        - description: ""
          name: PROCESSING
        - description: ""
          name: WON
        - description: ""
          name: LOST
        - description: ""
          name: ACCEPTED
        - description: ""
          name: WAITING_THIRD_PARTY
      x-release-status: PUBLIC
    DisputedPayment:
      description: The payment the cardholder disputed.
      properties:
        payment_id:
          description: Square-generated unique ID of the payment being disputed.
          maxLength: 192
          minLength: 1
          type: string
      type: object
      x-release-status: PUBLIC
    EcomVisibility:
      description: Determines item visibility in Ecom (Online Store) and Online Checkout.
      enum:
        - UNINDEXED
        - UNAVAILABLE
        - HIDDEN
        - VISIBLE
      type: string
      x-enum-elements:
        - description: Item is not synced with Ecom (Weebly). This is the default state
          name: UNINDEXED
        - description: Item is synced but is unavailable within Ecom (Weebly) and Online Checkout
          name: UNAVAILABLE
        - description: Option for seller to choose manually created Quick Amounts.
          name: HIDDEN
        - description: Item is synced but available within Ecom (Weebly) and Online Checkout but is hidden from Ecom Store.
          name: VISIBLE
      x-release-status: PUBLIC
    Employee:
      description: An employee object that is used by the external API.
      properties:
        created_at:
          description: A read-only timestamp in RFC 3339 format.
          type: string
          x-read-only: true
        email:
          description: The employee's email address
          type: string
        first_name:
          description: The employee's first name.
          type: string
        id:
          description: UUID for this object.
          type: string
        is_owner:
          description: |-
            Whether this employee is the owner of the merchant. Each merchant
            has one owner employee, and that employee has full authority over
            the account.
          type: boolean
        last_name:
          description: The employee's last name.
          type: string
        location_ids:
          description: A list of location IDs where this employee has access to.
          items:
            type: string
          type: array
        phone_number:
          description: The employee's phone number in E.164 format, i.e. "+12125554250"
          type: string
        status:
          description: Specifies the status of the employees being fetched.
          type: string
        updated_at:
          description: A read-only timestamp in RFC 3339 format.
          type: string
          x-read-only: true
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    EmployeeStatus:
      description: The status of the Employee being retrieved.
      enum:
        - ACTIVE
        - INACTIVE
      type: string
      x-enum-elements:
        - description: Specifies that the employee is in the Active state.
          name: ACTIVE
        - description: Specifies that the employee is in the Inactive state.
          name: INACTIVE
      x-is-deprecated: true
      x-release-status: DEPRECATED
    EmployeeWage:
      description: |-
        The hourly wage rate that an employee earns on a `Shift` for doing the job
        specified by the `title` property of this object. Deprecated at version 2020-08-26. Use `TeamMemberWage` instead.
      properties:
        employee_id:
          description: The `Employee` that this wage is assigned to.
          type: string
        hourly_rate:
          $ref: "#/components/schemas/Money"
        id:
          description: The UUID for this object.
          type: string
        title:
          description: The job title that this wage relates to.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    Error:
      description: |-
        Represents an error encountered during a request to the Connect API.

        See [Handling errors](https://developer.squareup.com/docs/build-basics/handling-errors) for more information.
      properties:
        category:
          description: The high-level category for the error.
          type: string
        code:
          description: The specific code of the error.
          type: string
        detail:
          description: A human-readable description of the error for debugging purposes.
          type: string
        field:
          description: |-
            The name of the field provided in the original request (if any) that
            the error pertains to.
          type: string
      required:
        - category
        - code
      type: object
      x-release-status: PUBLIC
    ErrorCategory:
      description: |-
        Indicates which high-level category of error has occurred during a
        request to the Connect API.
      enum:
        - API_ERROR
        - AUTHENTICATION_ERROR
        - INVALID_REQUEST_ERROR
        - RATE_LIMIT_ERROR
        - PAYMENT_METHOD_ERROR
        - REFUND_ERROR
        - MERCHANT_SUBSCRIPTION_ERROR
      type: string
      x-enum-elements:
        - description: An error occurred with the Connect API itself.
          name: API_ERROR
        - description: |-
            An authentication error occurred. Most commonly, the request had
            a missing, malformed, or otherwise invalid `Authorization` header.
          name: AUTHENTICATION_ERROR
        - description: |-
            The request was invalid. Most commonly, a required parameter was
            missing, or a provided parameter had an invalid value.
          name: INVALID_REQUEST_ERROR
        - description: |-
            Your application reached the Connect API rate limit. Retry your
            request after a while.
          name: RATE_LIMIT_ERROR
        - description: |-
            An error occurred while processing a payment method. Most commonly,
            the details of the payment method were invalid (such as a card's CVV
            or expiration date).
          name: PAYMENT_METHOD_ERROR
        - description: An error occurred while attempting to process a refund.
          name: REFUND_ERROR
        - description: An error occurred when checking a merchant subscription status
          name: MERCHANT_SUBSCRIPTION_ERROR
      x-release-status: PUBLIC
    ErrorCode:
      description: |-
        Indicates the specific error that occurred during a request to a
        Square API.
      enum:
        - INTERNAL_SERVER_ERROR
        - UNAUTHORIZED
        - ACCESS_TOKEN_EXPIRED
        - ACCESS_TOKEN_REVOKED
        - CLIENT_DISABLED
        - FORBIDDEN
        - INSUFFICIENT_SCOPES
        - APPLICATION_DISABLED
        - V1_APPLICATION
        - V1_ACCESS_TOKEN
        - CARD_PROCESSING_NOT_ENABLED
        - MERCHANT_SUBSCRIPTION_NOT_FOUND
        - BAD_REQUEST
        - MISSING_REQUIRED_PARAMETER
        - INCORRECT_TYPE
        - INVALID_TIME
        - INVALID_TIME_RANGE
        - INVALID_VALUE
        - INVALID_CURSOR
        - UNKNOWN_QUERY_PARAMETER
        - CONFLICTING_PARAMETERS
        - EXPECTED_JSON_BODY
        - INVALID_SORT_ORDER
        - VALUE_REGEX_MISMATCH
        - VALUE_TOO_SHORT
        - VALUE_TOO_LONG
        - VALUE_TOO_LOW
        - VALUE_TOO_HIGH
        - VALUE_EMPTY
        - ARRAY_LENGTH_TOO_LONG
        - ARRAY_LENGTH_TOO_SHORT
        - ARRAY_EMPTY
        - EXPECTED_BOOLEAN
        - EXPECTED_INTEGER
        - EXPECTED_FLOAT
        - EXPECTED_STRING
        - EXPECTED_OBJECT
        - EXPECTED_ARRAY
        - EXPECTED_MAP
        - EXPECTED_BASE64_ENCODED_BYTE_ARRAY
        - INVALID_ARRAY_VALUE
        - INVALID_ENUM_VALUE
        - INVALID_CONTENT_TYPE
        - INVALID_FORM_VALUE
        - CUSTOMER_NOT_FOUND
        - ONE_INSTRUMENT_EXPECTED
        - NO_FIELDS_SET
        - TOO_MANY_MAP_ENTRIES
        - MAP_KEY_LENGTH_TOO_SHORT
        - MAP_KEY_LENGTH_TOO_LONG
        - CARD_EXPIRED
        - INVALID_EXPIRATION
        - INVALID_EXPIRATION_YEAR
        - INVALID_EXPIRATION_DATE
        - UNSUPPORTED_CARD_BRAND
        - UNSUPPORTED_ENTRY_METHOD
        - INVALID_ENCRYPTED_CARD
        - INVALID_CARD
        - GENERIC_DECLINE
        - CVV_FAILURE
        - ADDRESS_VERIFICATION_FAILURE
        - INVALID_ACCOUNT
        - CURRENCY_MISMATCH
        - INSUFFICIENT_FUNDS
        - INSUFFICIENT_PERMISSIONS
        - CARDHOLDER_INSUFFICIENT_PERMISSIONS
        - INVALID_LOCATION
        - TRANSACTION_LIMIT
        - VOICE_FAILURE
        - PAN_FAILURE
        - EXPIRATION_FAILURE
        - CARD_NOT_SUPPORTED
        - INVALID_PIN
        - MISSING_PIN
        - MISSING_ACCOUNT_TYPE
        - INVALID_POSTAL_CODE
        - INVALID_FEES
        - MANUALLY_ENTERED_PAYMENT_NOT_SUPPORTED
        - PAYMENT_LIMIT_EXCEEDED
        - GIFT_CARD_AVAILABLE_AMOUNT
        - ACCOUNT_UNUSABLE
        - BUYER_REFUSED_PAYMENT
        - DELAYED_TRANSACTION_EXPIRED
        - DELAYED_TRANSACTION_CANCELED
        - DELAYED_TRANSACTION_CAPTURED
        - DELAYED_TRANSACTION_FAILED
        - CARD_TOKEN_EXPIRED
        - CARD_TOKEN_USED
        - AMOUNT_TOO_HIGH
        - UNSUPPORTED_INSTRUMENT_TYPE
        - REFUND_AMOUNT_INVALID
        - REFUND_ALREADY_PENDING
        - PAYMENT_NOT_REFUNDABLE
        - REFUND_DECLINED
        - INVALID_CARD_DATA
        - SOURCE_USED
        - SOURCE_EXPIRED
        - UNSUPPORTED_LOYALTY_REWARD_TIER
        - LOCATION_MISMATCH
        - IDEMPOTENCY_KEY_REUSED
        - UNEXPECTED_VALUE
        - SANDBOX_NOT_SUPPORTED
        - INVALID_EMAIL_ADDRESS
        - INVALID_PHONE_NUMBER
        - CHECKOUT_EXPIRED
        - BAD_CERTIFICATE
        - INVALID_SQUARE_VERSION_FORMAT
        - API_VERSION_INCOMPATIBLE
        - CARD_DECLINED
        - VERIFY_CVV_FAILURE
        - VERIFY_AVS_FAILURE
        - CARD_DECLINED_CALL_ISSUER
        - CARD_DECLINED_VERIFICATION_REQUIRED
        - BAD_EXPIRATION
        - CHIP_INSERTION_REQUIRED
        - ALLOWABLE_PIN_TRIES_EXCEEDED
        - RESERVATION_DECLINED
        - NOT_FOUND
        - APPLE_PAYMENT_PROCESSING_CERTIFICATE_HASH_NOT_FOUND
        - METHOD_NOT_ALLOWED
        - NOT_ACCEPTABLE
        - REQUEST_TIMEOUT
        - CONFLICT
        - GONE
        - REQUEST_ENTITY_TOO_LARGE
        - UNSUPPORTED_MEDIA_TYPE
        - UNPROCESSABLE_ENTITY
        - RATE_LIMITED
        - NOT_IMPLEMENTED
        - BAD_GATEWAY
        - SERVICE_UNAVAILABLE
        - TEMPORARY_ERROR
        - GATEWAY_TIMEOUT
      type: string
      x-enum-elements:
        - description: A general server error occurred.
          name: INTERNAL_SERVER_ERROR
        - description: A general authorization error occurred.
          name: UNAUTHORIZED
        - description: The provided access token has expired.
          name: ACCESS_TOKEN_EXPIRED
        - description: The provided access token has been revoked.
          name: ACCESS_TOKEN_REVOKED
        - description: The provided client has been disabled.
          name: CLIENT_DISABLED
        - description: A general access error occurred.
          name: FORBIDDEN
        - description: |-
            The provided access token does not have permission
            to execute the requested action.
          name: INSUFFICIENT_SCOPES
        - description: The calling application was disabled.
          name: APPLICATION_DISABLED
        - description: |-
            The calling application was created prior to
            2016-03-30 and is not compatible with v2 Square API calls.
          name: V1_APPLICATION
        - description: |-
            The calling application is using an access token
            created prior to 2016-03-30 and is not compatible with v2 Square API
            calls.
          name: V1_ACCESS_TOKEN
        - description: |-
            The location provided in the API call is not
            enabled for credit card processing.
          name: CARD_PROCESSING_NOT_ENABLED
        - description: A required subscription was not found for the merchant
          name: MERCHANT_SUBSCRIPTION_NOT_FOUND
        - description: A general error occurred with the request.
          name: BAD_REQUEST
        - description: |-
            The request is missing a required path, query, or
            body parameter.
          name: MISSING_REQUIRED_PARAMETER
        - description: |-
            The value provided in the request is the wrong
            type. For example, a string instead of an integer.
          name: INCORRECT_TYPE
        - description: |-
            Formatting for the provided time value is
            incorrect.
          name: INVALID_TIME
        - description: |-
            The time range provided in the request is invalid.
            For example, the end time is before the start time.
          name: INVALID_TIME_RANGE
        - description: |-
            The provided value is invalid. For example,
            including `%` in a phone number.
          name: INVALID_VALUE
        - description: |-
            The pagination cursor included in the request is
            invalid.
          name: INVALID_CURSOR
        - description: |-
            The query parameters provided is invalid for the
            requested endpoint.
          name: UNKNOWN_QUERY_PARAMETER
        - description: |-
            One or more of the request parameters conflict with
            each other.
          name: CONFLICTING_PARAMETERS
        - description: The request body is not a JSON object.
          name: EXPECTED_JSON_BODY
        - description: |-
            The provided sort order is not a valid key.
            Currently, sort order must be `ASC` or `DESC`.
          name: INVALID_SORT_ORDER
        - description: |-
            The provided value does not match an expected
            regular expression.
          name: VALUE_REGEX_MISMATCH
        - description: |-
            The provided string value is shorter than the
            minimum length allowed.
          name: VALUE_TOO_SHORT
        - description: |-
            The provided string value is longer than the
            maximum length allowed.
          name: VALUE_TOO_LONG
        - description: |-
            The provided value is less than the supported
            minimum.
          name: VALUE_TOO_LOW
        - description: |-
            The provided value is greater than the supported
            maximum.
          name: VALUE_TOO_HIGH
        - description: |-
            The provided value has a default (empty) value
            such as a blank string.
          name: VALUE_EMPTY
        - description: The provided array has too many elements.
          name: ARRAY_LENGTH_TOO_LONG
        - description: The provided array has too few elements.
          name: ARRAY_LENGTH_TOO_SHORT
        - description: The provided array is empty.
          name: ARRAY_EMPTY
        - description: |-
            The endpoint expected the provided value to be a
            boolean.
          name: EXPECTED_BOOLEAN
        - description: |-
            The endpoint expected the provided value to be an
            integer.
          name: EXPECTED_INTEGER
        - description: |-
            The endpoint expected the provided value to be a
            float.
          name: EXPECTED_FLOAT
        - description: |-
            The endpoint expected the provided value to be a
            string.
          name: EXPECTED_STRING
        - description: |-
            The endpoint expected the provided value to be a
            JSON object.
          name: EXPECTED_OBJECT
        - description: |-
            The endpoint expected the provided value to be an
            array or list.
          name: EXPECTED_ARRAY
        - description: |-
            The endpoint expected the provided value to be a
            map or associative array.
          name: EXPECTED_MAP
        - description: |-
            The endpoint expected the provided value to be an
            array encoded in base64.
          name: EXPECTED_BASE64_ENCODED_BYTE_ARRAY
        - description: |-
            One or more objects in the array does not match the
            array type.
          name: INVALID_ARRAY_VALUE
        - description: |-
            The provided static string is not valid for the
            field.
          name: INVALID_ENUM_VALUE
        - description: Invalid content type header.
          name: INVALID_CONTENT_TYPE
        - description: |-
            Only relevant for applications created prior to
            2016-03-30. Indicates there was an error while parsing form values.
          name: INVALID_FORM_VALUE
        - description: The provided customer id can't be found in the merchant's customers list.
          name: CUSTOMER_NOT_FOUND
        - description: A general error occurred.
          name: ONE_INSTRUMENT_EXPECTED
        - description: A general error occurred.
          name: NO_FIELDS_SET
        - description: Too many entries in the map field.
          name: TOO_MANY_MAP_ENTRIES
        - description: The length of one of the provided keys in the map is too short.
          name: MAP_KEY_LENGTH_TOO_SHORT
        - description: The length of one of the provided keys in the map is too long.
          name: MAP_KEY_LENGTH_TOO_LONG
        - description: The card issuer declined the request because the card is expired.
          name: CARD_EXPIRED
        - description: |-
            The expiration date for the payment card is invalid. For example,
            it indicates a date in the past.
          name: INVALID_EXPIRATION
        - description: |-
            The expiration year for the payment card is invalid. For example,
            it indicates a year in the past or contains invalid characters.
          name: INVALID_EXPIRATION_YEAR
        - description: |-
            The expiration date for the payment card is invalid. For example,
            it contains invalid characters.
          name: INVALID_EXPIRATION_DATE
        - description: The credit card provided is not from a supported issuer.
          name: UNSUPPORTED_CARD_BRAND
        - description: The entry method for the credit card (swipe, dip, tap) is not supported.
          name: UNSUPPORTED_ENTRY_METHOD
        - description: The encrypted card information is invalid.
          name: INVALID_ENCRYPTED_CARD
        - description: The credit card cannot be validated based on the provided details.
          name: INVALID_CARD
        - description: |-
            Square received a decline without any additional information.
            If the payment information seems correct, the buyer can contact their
            issuer to ask for more information.
          name: GENERIC_DECLINE
        - description: The card issuer declined the request because the CVV value is invalid.
          name: CVV_FAILURE
        - description: The card issuer declined the request because the postal code is invalid.
          name: ADDRESS_VERIFICATION_FAILURE
        - description: The issuer was not able to locate the account on record.
          name: INVALID_ACCOUNT
        - description: |-
            The currency associated with the payment is not valid for the provided
            funding source. For example, a gift card funded in USD cannot be used to process
            payments in GBP.
          name: CURRENCY_MISMATCH
        - description: The funding source has insufficient funds to cover the payment.
          name: INSUFFICIENT_FUNDS
        - description: |-
            The Square account does not have the permissions to accept
            this payment. For example, Square may limit which merchants are
            allowed to receive gift card payments.
          name: INSUFFICIENT_PERMISSIONS
        - description: |-
            The card issuer has declined the transaction due to restrictions on where the card can be used.
            For example, a gift card is limited to a single merchant.
          name: CARDHOLDER_INSUFFICIENT_PERMISSIONS
        - description: |-
            The Square account cannot take payments in the specified region.
            A Square account can take payments only from the region where the account was created.
          name: INVALID_LOCATION
        - description: |-
            The card issuer has determined the payment amount is either too high or too low.
            The API returns the error code mostly for credit cards (for example, the card reached
            the credit limit). However, sometimes the issuer bank can indicate the error for debit
            or prepaid cards (for example, card has insufficient funds).
          name: TRANSACTION_LIMIT
        - description: The card issuer declined the request because the issuer requires voice authorization from the cardholder.
          name: VOICE_FAILURE
        - description: |-
            The specified card number is invalid. For example, it is of
            incorrect length or is incorrectly formatted.
          name: PAN_FAILURE
        - description: |-
            The card expiration date is either invalid or indicates that the
            card is expired.
          name: EXPIRATION_FAILURE
        - description: |-
            The card is not supported either in the geographic region or by
            the [merchant category code](https://developer.squareup.com/docs/locations-api#initialize-a-merchant-category-code) (MCC).
          name: CARD_NOT_SUPPORTED
        - description: The card issuer declined the request because the PIN is invalid.
          name: INVALID_PIN
        - description: The payment is missing a required PIN.
          name: MISSING_PIN
        - description: The payment is missing a required ACCOUNT_TYPE parameter.
          name: MISSING_ACCOUNT_TYPE
        - description: The postal code is incorrectly formatted.
          name: INVALID_POSTAL_CODE
        - description: The app_fee_money on a payment is too high.
          name: INVALID_FEES
        - description: The card must be swiped, tapped, or dipped. Payments attempted by manually entering the card number are declined.
          name: MANUALLY_ENTERED_PAYMENT_NOT_SUPPORTED
        - description: Square declined the request because the payment amount exceeded the processing limit for this merchant.
          name: PAYMENT_LIMIT_EXCEEDED
        - description: |-
            When a Gift Card is a payment source, you can allow taking a partial payment 
            by adding the `accept_partial_authorization` parameter in the request. 
            However, taking such a partial payment does not work if your request also includes 
            `tip_money`, `app_fee_money`, or both. Square declines such payments and returns 
            the `GIFT_CARD_AVAILABLE_AMOUNT` error. 
            For more information, see 
            [CreatePayment errors (additional information)](https://developer.squareup.com/docs/payments-api/error-codes#createpayment-errors-additional-information).
          name: GIFT_CARD_AVAILABLE_AMOUNT
        - description: The account provided cannot carry out transactions.
          name: ACCOUNT_UNUSABLE
        - description: Bank account rejected or was not authorized for the payment.
          name: BUYER_REFUSED_PAYMENT
        - description: The application tried to update a delayed-capture payment that has expired.
          name: DELAYED_TRANSACTION_EXPIRED
        - description: The application tried to cancel a delayed-capture payment that was already cancelled.
          name: DELAYED_TRANSACTION_CANCELED
        - description: The application tried to capture a delayed-capture payment that was already captured.
          name: DELAYED_TRANSACTION_CAPTURED
        - description: The application tried to update a delayed-capture payment that failed.
          name: DELAYED_TRANSACTION_FAILED
        - description: The provided card token (nonce) has expired.
          name: CARD_TOKEN_EXPIRED
        - description: The provided card token (nonce) was already used to process payment.
          name: CARD_TOKEN_USED
        - description: The requested payment amount is too high for the provided payment source.
          name: AMOUNT_TOO_HIGH
        - description: The API request references an unsupported instrument type/
          name: UNSUPPORTED_INSTRUMENT_TYPE
        - description: The requested refund amount exceeds the amount available to refund.
          name: REFUND_AMOUNT_INVALID
        - description: The payment already has a pending refund.
          name: REFUND_ALREADY_PENDING
        - description: |-
            The payment is not refundable. For example, a previous refund has
            already been rejected and no new refunds can be accepted.
          name: PAYMENT_NOT_REFUNDABLE
        - description: Request failed - The card issuer declined the refund.
          name: REFUND_DECLINED
        - description: Generic error - the provided card data is invalid.
          name: INVALID_CARD_DATA
        - description: The provided source id was already used to create a card.
          name: SOURCE_USED
        - description: The provided source id has expired.
          name: SOURCE_EXPIRED
        - description: |-
            The referenced loyalty program reward tier is not supported.
            This could happen if the reward tier created in a first party
            application is incompatible with the Loyalty API.
          name: UNSUPPORTED_LOYALTY_REWARD_TIER
        - description: Generic error - the given location does not matching what is expected.
          name: LOCATION_MISMATCH
        - description: The provided idempotency key has already been used.
          name: IDEMPOTENCY_KEY_REUSED
        - description: General error - the value provided was unexpected.
          name: UNEXPECTED_VALUE
        - description: The API request is not supported in sandbox.
          name: SANDBOX_NOT_SUPPORTED
        - description: The provided email address is invalid.
          name: INVALID_EMAIL_ADDRESS
        - description: The provided phone number is invalid.
          name: INVALID_PHONE_NUMBER
        - description: The provided checkout URL has expired.
          name: CHECKOUT_EXPIRED
        - description: Bad certificate.
          name: BAD_CERTIFICATE
        - description: The provided Square-Version is incorrectly formatted.
          name: INVALID_SQUARE_VERSION_FORMAT
        - description: The provided Square-Version is incompatible with the requested action.
          name: API_VERSION_INCOMPATIBLE
        - description: The card was declined.
          name: CARD_DECLINED
        - description: The CVV could not be verified.
          name: VERIFY_CVV_FAILURE
        - description: The AVS could not be verified.
          name: VERIFY_AVS_FAILURE
        - description: |-
            The payment card was declined with a request
            for the card holder to call the issuer.
          name: CARD_DECLINED_CALL_ISSUER
        - description: |-
            The payment card was declined with a request
            for additional verification.
          name: CARD_DECLINED_VERIFICATION_REQUIRED
        - description: |-
            The card expiration date is either missing or
            incorrectly formatted.
          name: BAD_EXPIRATION
        - description: |-
            The card issuer requires that the card be read
            using a chip reader.
          name: CHIP_INSERTION_REQUIRED
        - description: |-
            The card has exhausted its available pin entry
            retries set by the card issuer. Resolving the error typically requires the
            card holder to contact the card issuer.
          name: ALLOWABLE_PIN_TRIES_EXCEEDED
        - description: The card issuer declined the refund.
          name: RESERVATION_DECLINED
        - description: Not Found - a general error occurred.
          name: NOT_FOUND
        - description: Square could not find the associated Apple Pay certificate.
          name: APPLE_PAYMENT_PROCESSING_CERTIFICATE_HASH_NOT_FOUND
        - description: Method Not Allowed - a general error occurred.
          name: METHOD_NOT_ALLOWED
        - description: Not Acceptable - a general error occurred.
          name: NOT_ACCEPTABLE
        - description: Request Timeout - a general error occurred.
          name: REQUEST_TIMEOUT
        - description: Conflict - a general error occurred.
          name: CONFLICT
        - description: |-
            The target resource is no longer available and this
            condition is likely to be permanent.
          name: GONE
        - description: Request Entity Too Large - a general error occurred.
          name: REQUEST_ENTITY_TOO_LARGE
        - description: Unsupported Media Type - a general error occurred.
          name: UNSUPPORTED_MEDIA_TYPE
        - description: Unprocessable Entity - a general error occurred.
          name: UNPROCESSABLE_ENTITY
        - description: Rate Limited - a general error occurred.
          name: RATE_LIMITED
        - description: Not Implemented - a general error occurred.
          name: NOT_IMPLEMENTED
        - description: Bad Gateway - a general error occurred.
          name: BAD_GATEWAY
        - description: Service Unavailable - a general error occurred.
          name: SERVICE_UNAVAILABLE
        - description: |-
            A temporary internal error occurred. You can safely retry your call
            using the same idempotency key.
          name: TEMPORARY_ERROR
        - description: Gateway Timeout - a general error occurred.
          name: GATEWAY_TIMEOUT
      x-release-status: PUBLIC
    ExcludeStrategy:
      description: |-
        Indicates which products matched by a CatalogPricingRule
        will be excluded if the pricing rule uses an exclude set.
      enum:
        - LEAST_EXPENSIVE
        - MOST_EXPENSIVE
      type: string
      x-enum-elements:
        - description: |-
            The least expensive matched products are excluded from the pricing. If
            the pricing rule is set to exclude one product and multiple products in the
            match set qualify as least expensive, then one will be excluded at random.

            Excluding the least expensive product gives the best discount value to the buyer.
          name: LEAST_EXPENSIVE
        - description: |-
            The most expensive matched product is excluded from the pricing rule.
            If multiple products have the same price and all qualify as least expensive,
            one will be excluded at random.

            This guarantees that the most expensive product is purchased at full price.
          name: MOST_EXPENSIVE
      x-is-beta: true
      x-release-status: BETA
    ExternalPaymentDetails:
      description: |-
        Stores details about an external payment. Contains only non-confidential information.
        For more information, see 
        [Take External Payments](https://developer.squareup.com/docs/payments-api/take-payments/external-payments).
      properties:
        source:
          description: |-
            A description of the external payment source. For example, 
            "Food Delivery Service".
          maxLength: 255
          type: string
        source_fee_money:
          $ref: "#/components/schemas/Money"
        source_id:
          description: An ID to associate the payment to its originating source.
          maxLength: 255
          type: string
        type:
          description: |-
            The type of external payment the seller received. It can be one of the following:
            - CHECK - Paid using a physical check.
            - BANK_TRANSFER - Paid using external bank transfer.
            - OTHER\_GIFT\_CARD - Paid using a non-Square gift card.
            - CRYPTO - Paid using a crypto currency.
            - SQUARE_CASH - Paid using Square Cash App.
            - SOCIAL - Paid using peer-to-peer payment applications.
            - EXTERNAL - A third-party application gathered this payment outside of Square.
            - EMONEY - Paid using an E-money provider.
            - CARD - A credit or debit card that Square does not support.
            - STORED_BALANCE - Use for house accounts, store credit, and so forth.
            - FOOD_VOUCHER - Restaurant voucher provided by employers to employees to pay for meals
            - OTHER - A type not listed here.
          maxLength: 50
          type: string
      required:
        - type
        - source
      type: object
      x-release-status: PUBLIC
    FilterValue:
      description: |-
        A filter to select resources based on an exact field value. For any given
        value, the value can only be in one property. Depending on the field, either
        all properties can be set or only a subset will be available.

        Refer to the documentation of the field.
      properties:
        all:
          description: A list of terms that must be present on the field of the resource.
          items:
            type: string
          type: array
        any:
          description: |-
            A list of terms where at least one of them must be present on the
            field of the resource.
          items:
            type: string
          type: array
        none:
          description: A list of terms that must not be present on the field the resource
          items:
            type: string
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    GANSource: {}
    GetBankAccountByV1IdRequest:
      description: |-
        Request object for fetching a specific `BankAccount`
        by the object ID.
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetBankAccountByV1IdResponse:
      description: Response object returned by GetBankAccountByV1Id.
      example:
        bank_account:
          account_number_suffix: "971"
          account_type: CHECKING
          bank_name: Bank Name
          country: US
          creditable: false
          currency: USD
          debitable: false
          holder_name: Jane Doe
          id: w3yRgCGYQnwmdl0R3GB
          location_id: S8GWD5example
          primary_bank_identification_number: "112200303"
          status: VERIFICATION_IN_PROGRESS
          version: 5
      properties:
        bank_account:
          $ref: "#/components/schemas/BankAccount"
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    GetBankAccountRequest:
      description: |-
        Request object to fetch a specific `BankAccount`
        by the object ID.
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetBankAccountResponse:
      description: Response object returned by `GetBankAccount`.
      example:
        bank_account:
          account_number_suffix: "971"
          account_type: CHECKING
          bank_name: Bank Name
          country: US
          creditable: false
          currency: USD
          debitable: false
          holder_name: Jane Doe
          id: w3yRgCGYQnwmdl0R3GB
          location_id: S8GWD5example
          primary_bank_identification_number: "112200303"
          status: VERIFICATION_IN_PROGRESS
          version: 5
      properties:
        bank_account:
          $ref: "#/components/schemas/BankAccount"
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    GetBreakTypeRequest:
      description: A request to get a `BreakType` by ID.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetBreakTypeResponse:
      description: |-
        The response to a request to get a `BreakType`. The response contains
        the requested `BreakType` objects and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        break_type:
          break_name: Lunch Break
          created_at: 2019-02-21T17:50:00Z
          expected_duration: PT30M
          id: lA0mj_RSOprNPwMUXdYp
          is_paid: true
          location_id: 059SB0E0WCNWS
          updated_at: 2019-02-21T17:50:00Z
          version: 1
      properties:
        break_type:
          $ref: "#/components/schemas/BreakType"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    GetDeviceCodeRequest:
      description: ""
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetDeviceCodeResponse:
      description: ""
      example:
        device_code:
          code: EBCARJ
          created_at: 2020-02-06T18:44:33.000Z
          device_id: 907CS13101300122
          id: B3Z6NAMYQSMTM
          location_id: B5E4484SHHNYH
          name: Counter 1
          pair_by: 2020-02-06T18:49:33.000Z
          product_type: TERMINAL_API
          status: PAIRED
          status_changed_at: 2020-02-06T18:47:28.000Z
      properties:
        device_code:
          $ref: "#/components/schemas/DeviceCode"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    GetEmployeeWageRequest:
      description: A request to get an `EmployeeWage`.
      example: {}
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    GetEmployeeWageResponse:
      description: |-
        A response to a request to get an `EmployeeWage`. The response contains
        the requested `EmployeeWage` objects and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        employee_wage:
          employee_id: 33fJchumvVdJwxV0H6L9
          hourly_rate:
            amount: 2000
            currency: USD
          id: pXS3qCv7BERPnEGedM4S8mhm
          title: Manager
      properties:
        employee_wage:
          $ref: "#/components/schemas/EmployeeWage"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    GetInvoiceRequest:
      description: Describes a `GetInvoice` request.
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetInvoiceResponse:
      description: Describes a `GetInvoice` response.
      example:
        invoice:
          accepted_payment_methods:
            bank_account: false
            card: true
            square_gift_card: false
          created_at: 2020-06-18T17:45:13Z
          custom_fields:
            - label: Event Reference Number
              placement: ABOVE_LINE_ITEMS
              value: "Ref. #1234"
            - label: Terms of Service
              placement: BELOW_LINE_ITEMS
              value: The terms of service are...
          delivery_method: EMAIL
          description: We appreciate your business!
          id: inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
          invoice_number: inv-100
          location_id: ES0RJRZYEC39A
          order_id: CAISENgvlJ6jLWAzERDzjyHVybY
          payment_requests:
            - automatic_payment_source: NONE
              computed_amount_money:
                amount: 10000
                currency: USD
              due_date: 2030-01-24
              reminders:
                - message: Your invoice is due tomorrow
                  relative_scheduled_days: -1
                  status: PENDING
                  uid: beebd363-e47f-4075-8785-c235aaa7df11
              request_type: BALANCE
              tipping_enabled: true
              total_completed_amount_money:
                amount: 0
                currency: USD
              uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
          primary_recipient:
            customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            email_address: Amelia.Earhart@example.com
            family_name: Earhart
            given_name: Amelia
            phone_number: 1-212-555-4240
          scheduled_at: 2030-01-13T10:00:00Z
          status: DRAFT
          timezone: America/Los_Angeles
          title: Event Planning Services
          updated_at: 2020-06-18T17:45:13Z
          version: 0
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        invoice:
          $ref: "#/components/schemas/Invoice"
      type: object
      x-release-status: PUBLIC
    GetPaymentRefundRequest:
      description: |-
        Describes a request to retrieve a refund using 
        [GetPaymentRefund](https://developer.squareup.com/reference/square_2021-08-18/refunds-api/get-payment-refund).
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetPaymentRefundResponse:
      description: |-
        Defines the response returned by [GetRefund](https://developer.squareup.com/reference/square_2021-08-18/refunds-api/get-payment-refund).

        Note: If there are errors processing the request, the refund field might not be
        present or it might be present in a FAILED state.
      example:
        refund:
          amount_money:
            amount: 1000
            currency: USD
          created_at: 2019-07-06T18:01:22.123Z
          id: O2QAAhTYs7rUfzlxT38GMO7LvaB_q7JwCHtxmgXrh8fAhV468WQ44VxDtL7CU4yVRlsbXmI
          location_id: XK3DBG77NJBFX
          order_id: 2duiyoqbfeXY0DBi15GEyk5Epa4F
          payment_id: O2QAAhTYs7rUfzlxT38GMO7LvaB
          processing_fee:
            - amount_money:
                amount: -59
                currency: USD
              effective_at: 2019-07-06T20:01:12.000Z
              type: INITIAL
          status: COMPLETED
          updated_at: 2019-07-06T18:06:03.874Z
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refund:
          $ref: "#/components/schemas/PaymentRefund"
      type: object
      x-release-status: PUBLIC
    GetPaymentRequest:
      description: |-
        Describes a request to retrieve a payment using 
        [GetPayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/get-payment).
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetPaymentResponse:
      description: Defines the response returned by [GetPayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/get-payment).
      example:
        payment:
          amount_money:
            amount: 200
            currency: USD
          app_fee_money:
            amount: 10
            currency: USD
          approved_money:
            amount: 200
            currency: USD
          card_details:
            auth_result_code: nsAyY2
            avs_status: AVS_ACCEPTED
            card:
              bin: "411111"
              card_brand: VISA
              card_type: DEBIT
              exp_month: 7
              exp_year: 2026
              fingerprint: sq-1-TpmjbNBMFdibiIjpQI5LiRgNUBC7u1689i0TgHjnlyHEWYB7tnn-K4QbW4ttvtaqXw
              last_4: "1111"
              prepaid_type: PREPAID
            card_payment_timeline:
              authorized_at: 2019-07-10T13:23:49.234Z
              captured_at: 2019-07-10T13:23:49.446Z
            cvv_status: CVV_ACCEPTED
            entry_method: ON_FILE
            statement_description: SQ *MY MERCHANT
            status: CAPTURED
          created_at: 2019-07-10T13:23:49.154Z
          customer_id: RDX9Z4XTIZR7MRZJUXNY9HUK6I
          id: GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
          location_id: XTI0H92143A39
          note: Brief description
          order_id: m2Hr8Hk8A3CTyQQ1k4ynExg92tO3
          processing_fee:
            - amount_money:
                amount: 36
                currency: USD
              effective_at: 2019-07-10T15:23:49.000Z
              type: INITIAL
          receipt_number: GQTF
          receipt_url: https://squareup.com/receipt/preview/GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
          reference_id: "123456"
          source_type: CARD
          status: COMPLETED
          total_money:
            amount: 200
            currency: USD
          updated_at: 2019-07-10T13:23:49.446Z
          version_token: hj8JqHWu9R1Kkfu63UuIUmYc7zm6YFOt92g8d2fb9fz6o
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        payment:
          $ref: "#/components/schemas/Payment"
      type: object
      x-release-status: PUBLIC
    GetShiftRequest:
      description: A request to get a `Shift` by ID.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetShiftResponse:
      description: |-
        A response to a request to get a `Shift`. The response contains
        the requested `Shift` object and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        shift:
          breaks:
            - break_type_id: 92EPDRQKJ5088
              end_at: 2019-02-23T20:00:00-05:00
              expected_duration: PT1H
              id: M9BBKEPQAQD2T
              is_paid: true
              name: Lunch Break
              start_at: 2019-02-23T19:00:00-05:00
          created_at: 2019-02-27T00:12:12Z
          employee_id: D71KRMQof6cXGUW0aAv7
          end_at: 2019-02-23T21:00:00-05:00
          id: T35HMQSN89SV4
          location_id: PAA1RJZZKXBFG
          start_at: 2019-02-23T18:00:00-05:00
          status: CLOSED
          team_member_id: D71KRMQof6cXGUW0aAv7
          timezone: America/New_York
          updated_at: 2019-02-27T00:12:12Z
          version: 1
          wage:
            hourly_rate:
              amount: 1457
              currency: USD
            title: Cashier
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        shift:
          $ref: "#/components/schemas/Shift"
      type: object
      x-release-status: PUBLIC
    GetTeamMemberWageRequest:
      description: A request to get a `TeamMemberWage`.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetTeamMemberWageResponse:
      description: |-
        A response to a request to get a `TeamMemberWage`. The response contains
        the requested `TeamMemberWage` objects and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        team_member_wage:
          hourly_rate:
            amount: 2000
            currency: USD
          id: pXS3qCv7BERPnEGedM4S8mhm
          team_member_id: 33fJchumvVdJwxV0H6L9
          title: Manager
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_member_wage:
          $ref: "#/components/schemas/TeamMemberWage"
      type: object
      x-release-status: PUBLIC
    GetTerminalCheckoutRequest:
      description: ""
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetTerminalCheckoutResponse:
      description: ""
      example:
        checkout:
          amount_money:
            amount: 2610
            currency: USD
          app_id: APP_ID
          created_at: 2020-04-06T16:39:32.545Z
          deadline_duration: PT10M
          device_options:
            device_id: dbb5d83a-7838-11ea-bc55-0242ac130003
            skip_receipt_screen: false
            tip_settings:
              allow_tipping: false
          id: 08YceKh7B3ZqO
          note: A brief note
          reference_id: id11572
          status: IN_PROGRESS
          updated_at: 2020-04-06T16:39:323.001Z
      properties:
        checkout:
          $ref: "#/components/schemas/TerminalCheckout"
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    GetTerminalRefundRequest:
      description: ""
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    GetTerminalRefundResponse:
      description: ""
      example:
        refund:
          amount_money:
            amount: 111
            currency: CAD
          app_id: sandbox-sq0idb-c2OuYt13YaCAeJq_2cd8OQ
          card:
            bin: "411111"
            card_brand: INTERAC
            card_type: CREDIT
            exp_month: 1
            exp_year: 2022
            fingerprint: sq-1-B1fP9MNNmZgVVaPKRND6oDKYbz25S2cTvg9Mzwg3RMTK1zT1PiGRT-AE3nTA8vSmmw
            last_4: "1111"
          created_at: 2020-09-29T15:21:46.771Z
          deadline_duration: PT5M
          device_id: f72dfb8e-4d65-4e56-aade-ec3fb8d33291
          id: 009DP5HD-5O5OvgkcNUhl7JBuINflcjKqUzXZY
          location_id: 76C9W6K8CNNQ5
          order_id: kcuKDKreRaI4gF4TjmEgZjHk8Z7YY
          payment_id: 5O5OvgkcNUhl7JBuINflcjKqUzXZY
          reason: Returning item
          refund_id: 5O5OvgkcNUhl7JBuINflcjKqUzXZY_43Q4iGp7sNeATiWrUruA1EYeMRUXaddXXlDDJ1EQLvb
          status: COMPLETED
          updated_at: 2020-09-29T15:21:48.675Z
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refund:
          $ref: "#/components/schemas/TerminalRefund"
      type: object
      x-release-status: PUBLIC
    GiftCard:
      description: Represents a Square gift card.
      properties:
        balance_money:
          $ref: "#/components/schemas/Money"
        created_at:
          description: |-
            The timestamp when the gift card was created, in RFC 3339 format. 
            In the case of a digital gift card, it is the time when you create a card 
            (using the Square Point of Sale application, Seller Dashboard, or Gift Cards API).  
            In the case of a plastic gift card, it is the time when Square associates the card with the 
            seller at the time of activation.
          type: string
          x-read-only: true
        customer_ids:
          description: The IDs of the customers to whom this gift card is linked.
          items:
            maxLength: 191
            type: string
          type: array
          x-read-only: true
        gan:
          description: The gift card account number.
          type: string
        gan_source:
          $ref: "#/components/schemas/GANSource"
        id:
          description: The Square-assigned ID of the gift card.
          type: string
          x-read-only: true
        state:
          $ref: "#/components/schemas/Status"
        type:
          $ref: "#/components/schemas/Type"
      required:
        - type
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivity:
      description: Represents an action performed on a gift card that affects its state or balance.
      properties:
        activate_activity_details:
          $ref: "#/components/schemas/GiftCardActivityActivate"
        adjust_decrement_activity_details:
          $ref: "#/components/schemas/GiftCardActivityAdjustDecrement"
        adjust_increment_activity_details:
          $ref: "#/components/schemas/GiftCardActivityAdjustIncrement"
        block_activity_details:
          $ref: "#/components/schemas/GiftCardActivityBlock"
        clear_balance_activity_details:
          $ref: "#/components/schemas/GiftCardActivityClearBalance"
        created_at:
          description: The timestamp when the gift card activity was created, in RFC 3339 format.
          type: string
          x-read-only: true
        deactivate_activity_details:
          $ref: "#/components/schemas/GiftCardActivityDeactivate"
        gift_card_balance_money:
          $ref: "#/components/schemas/Money"
        gift_card_gan:
          description: The gift card GAN. The GAN is not required if `gift_card_id` is present.
          type: string
        gift_card_id:
          description: The gift card ID. The ID is not required if a GAN is present.
          type: string
        id:
          description: The unique ID of the gift card activity.
          type: string
          x-read-only: true
        import_activity_details:
          $ref: "#/components/schemas/GiftCardActivityImport"
        import_reversal_activity_details:
          $ref: "#/components/schemas/GiftCardActivityImportReversal"
        load_activity_details:
          $ref: "#/components/schemas/GiftCardActivityLoad"
        location_id:
          description: The ID of the location at which the activity occurred.
          type: string
        redeem_activity_details:
          $ref: "#/components/schemas/GiftCardActivityRedeem"
        refund_activity_details:
          $ref: "#/components/schemas/GiftCardActivityRefund"
        type:
          $ref: "#/components/schemas/Type"
        unblock_activity_details:
          $ref: "#/components/schemas/GiftCardActivityUnblock"
        unlinked_activity_refund_activity_details:
          $ref: "#/components/schemas/GiftCardActivityUnlinkedActivityRefund"
      required:
        - type
        - location_id
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityActivate:
      description: Describes a gift card activity of the ACTIVATE type.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        buyer_payment_instrument_ids:
          description: |-
            Required if your application does not use the Square Orders API. 
            This is a list of client-provided payment instrument IDs. 
            Square uses this information to perform compliance checks.
            If you use the Square Orders API, Square has the necessary instrument IDs to perform necessary 
            compliance checks.
          items:
            type: string
          type: array
        line_item_uid:
          description: |-
            The `line_item_uid` of the gift card line item in an order. 
            This is required if your application uses the Square Orders API.
          type: string
        order_id:
          description: |-
            The ID of the order associated with the activity. 
            This is required if your application uses the Square Orders API.
          type: string
        reference_id:
          description: |-
            If your application does not use the Square Orders API, you can optionally use this field 
            to associate the gift card activity with a client-side entity.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityAdjustDecrement:
      description: Describes a gift card activity of the ADJUST_DECREMENT type.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        reason:
          $ref: "#/components/schemas/Reason"
      required:
        - amount_money
        - reason
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityAdjustDecrementReason:
      description: ""
      enum:
        - SUSPICIOUS_ACTIVITY
        - BALANCE_ACCIDENTALLY_INCREASED
        - SUPPORT_ISSUE
      type: string
      x-enum-elements:
        - description: The seller determined suspicious activity by the buyer.
          name: SUSPICIOUS_ACTIVITY
        - description: The seller previously increased the gift card balance by accident.
          name: BALANCE_ACCIDENTALLY_INCREASED
        - description: |-
            The seller decreased the gift card balance to 
            accommodate support issues.
          name: SUPPORT_ISSUE
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityAdjustIncrement:
      description: Describes a gift card activity of the ADJUST_INCREMENT type.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        reason:
          $ref: "#/components/schemas/Reason"
      required:
        - amount_money
        - reason
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityAdjustIncrementReason:
      description: ""
      enum:
        - COMPLIMENTARY
        - SUPPORT_ISSUE
        - TRANSACTION_VOIDED
      type: string
      x-enum-elements:
        - description: Seller gifted a complimentary gift card balance increase.
          name: COMPLIMENTARY
        - description: |-
            The seller increased the gift card balance 
            to accommodate support issues.
          name: SUPPORT_ISSUE
        - description: The transaction is voided.
          name: TRANSACTION_VOIDED
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityBlock:
      description: Describes a gift card activity of the BLOCK type.
      properties:
        reason:
          $ref: "#/components/schemas/Reason"
      required:
        - reason
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityBlockReason:
      description: ""
      enum:
        - CHARGEBACK_BLOCK
      type: string
      x-enum-elements:
        - description: The gift card is blocked because the buyer initiated a chargeback on the gift card purchase.
          name: CHARGEBACK_BLOCK
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityClearBalance:
      description: Describes a gift card activity of the CLEAR_BALANCE type.
      properties:
        reason:
          $ref: "#/components/schemas/Reason"
      required:
        - reason
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityClearBalanceReason:
      description: ""
      enum:
        - SUSPICIOUS_ACTIVITY
        - REUSE_GIFTCARD
        - UNKNOWN_REASON
      type: string
      x-enum-elements:
        - description: The seller suspects suspicious activity.
          name: SUSPICIOUS_ACTIVITY
        - description: The seller cleared the balance to reuse the gift card.
          name: REUSE_GIFTCARD
        - description: The gift card balance was cleared for an unknown reason.
          name: UNKNOWN_REASON
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityDeactivate:
      description: Describes a gift card activity of the DEACTIVATE type.
      properties:
        reason:
          $ref: "#/components/schemas/Reason"
      required:
        - reason
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityDeactivateReason:
      description: ""
      enum:
        - SUSPICIOUS_ACTIVITY
        - UNKNOWN_REASON
        - CHARGEBACK_DEACTIVATE
      type: string
      x-enum-elements:
        - description: The seller suspects suspicious activity.
          name: SUSPICIOUS_ACTIVITY
        - description: The gift card deactivated for an unknown reason.
          name: UNKNOWN_REASON
        - description: A chargeback on the gift card purchase (or the gift card load) was ruled in favor of the buyer.
          name: CHARGEBACK_DEACTIVATE
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityImport:
      description: |-
        Describes a gift card activity of the IMPORT type and the `GiftCardGANSource` is OTHER 
        (a third-party gift card).
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
      required:
        - amount_money
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityImportReversal:
      description: Present only when GiftCardActivityType is IMPORT_REVERSAL and GiftCardGANSource is OTHER
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
      required:
        - amount_money
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityLoad:
      description: Present only when `GiftCardActivityType` is LOAD.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        buyer_payment_instrument_ids:
          description: |-
            If you are not using the Orders API, this field is required because it is used to identify a buyer 
            to perform compliance checks.
          items:
            type: string
          type: array
        line_item_uid:
          description: |-
            The `line_item_uid` of the gift card’s line item in the order associated with the activity.
            It is populated along with `order_id` and is required if using the Square Orders API.
          type: string
        order_id:
          description: |-
            The `order_id` of the order associated with the activity.
            It is populated along with `line_item_uid` and is required if using the Square Orders API.
          type: string
        reference_id:
          description: |-
            A client-specified ID to associate an entity, in another system, with this gift card
            activity. This can be used to track the order or payment related information when the Square Orders
            API is not being used.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityRedeem:
      description: Present only when `GiftCardActivityType` is REDEEM.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        payment_id:
          description: |-
            When the Square Payments API is used, Redeem is not called on the Gift Cards API.
            However, when Square reads a Redeem activity from the Gift Cards API, developers need to know the
            associated `payment_id`.
          type: string
          x-read-only: true
        reference_id:
          description: |-
            A client-specified ID to associate an entity, in another system, with this gift card
            activity. This can be used to track the order or payment related information when the Square Orders
            API is not being used.
          type: string
      required:
        - amount_money
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityRefund:
      description: Present only when `GiftCardActivityType` is REFUND.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        payment_id:
          description: |-
            When the Square Payments API is used, Refund is not called on the Gift Cards API.
            However, when Square reads a Refund activity from the Gift Cards API, the developer needs to know the
            ID of the payment (made using this gift card) that is being refunded.
          type: string
          x-read-only: true
        redeem_activity_id:
          description: |-
            The ID for the Redeem activity that needs to be refunded. Hence, the activity it
            refers to has to be of the REDEEM type.
          type: string
        reference_id:
          description: |-
            A client-specified ID to associate an entity, in another system, with this gift card
            activity. This can be used to track the order or payment related information when the Square Orders
            API is not being used.
          type: string
      required:
        - redeem_activity_id
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityType:
      description: ""
      enum:
        - ACTIVATE
        - LOAD
        - REDEEM
        - CLEAR_BALANCE
        - DEACTIVATE
        - ADJUST_INCREMENT
        - ADJUST_DECREMENT
        - REFUND
        - UNLINKED_ACTIVITY_REFUND
        - IMPORT
        - BLOCK
        - UNBLOCK
        - IMPORT_REVERSAL
      type: string
      x-enum-elements:
        - description: Activated a gift card with a balance.
          name: ACTIVATE
        - description: Loaded a gift card with additional funds.
          name: LOAD
        - description: Redeemed a gift card.
          name: REDEEM
        - description: Cleared a gift card balance to zero.
          name: CLEAR_BALANCE
        - description: |-
            Permanently blocked a gift card from a balance-changing 
            activity.
          name: DEACTIVATE
        - description: Manually increased a gift card balance.
          name: ADJUST_INCREMENT
        - description: Manually decreased a gift card balance.
          name: ADJUST_DECREMENT
        - description: |-
            Added money to a gift card because a transaction 
            paid with this gift card was refunded.
          name: REFUND
        - description: |2-
             Added money to a gift card because a transaction 
            not linked to this gift card was refunded
            to this gift card.
          name: UNLINKED_ACTIVITY_REFUND
        - description: Imported a third-party gift card.
          name: IMPORT
        - description: |-
            Temporarily blocked a gift card from balance-changing 
            activities.
          name: BLOCK
        - description: Unblocked a gift card. It can resume balance-changing activities.
          name: UNBLOCK
        - description: |-
            A third-party gift card was imported with a balance. 
            The import is reversed.
          name: IMPORT_REVERSAL
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityUnblock:
      description: Present only when `GiftCardActivityType` is UNBLOCK.
      properties:
        reason:
          $ref: "#/components/schemas/Reason"
      required:
        - reason
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityUnblockReason:
      description: ""
      enum:
        - CHARGEBACK_UNBLOCK
      type: string
      x-enum-elements:
        - description: The gift card is unblocked because a chargeback was ruled in favor of the seller.
          name: CHARGEBACK_UNBLOCK
      x-is-beta: true
      x-release-status: BETA
    GiftCardActivityUnlinkedActivityRefund:
      description: Present only when `GiftCardActivityType` is UNLINKED_ACTIVITY_REFUND.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        payment_id:
          description: |-
            When using the Square Payments API, the ID of the payment that was refunded to this gift
            card.
          type: string
          x-read-only: true
        reference_id:
          description: |-
            A client-specified ID to associate an entity, in another system, with this gift card
            activity. This can be used to track the order or payment related information when the Square Payments
            API is not being used.
          type: string
      required:
        - amount_money
      type: object
      x-is-beta: true
      x-release-status: BETA
    GiftCardGANSource:
      description: |-
        Indicates the source that generated the gift card 
        account number (GAN).
      enum:
        - SQUARE
        - OTHER
      type: string
      x-enum-elements:
        - description: The gift card account number (GAN) is generated by Square.
          name: SQUARE
        - description: |-
            The gift card account number (GAN) is imported from a non-Square system. 
            For more information, see 
            [Third-party gift cards](https://developer.squareup.com/docs/gift-cards/using-gift-cards-api#third-party-gift-cards).
          name: OTHER
      x-is-beta: true
      x-release-status: BETA
    GiftCardStatus:
      description: Indicates the gift card state.
      enum:
        - ACTIVE
        - DEACTIVATED
        - BLOCKED
        - PENDING
      type: string
      x-enum-elements:
        - description: The gift card is active and can be used as a payment source.
          name: ACTIVE
        - description: Any activity that changes the gift card balance is permanently forbidden.
          name: DEACTIVATED
        - description: Any activity that changes the gift card balance is temporarily forbidden.
          name: BLOCKED
        - description: |-
            The gift card is pending activation.
            This is the state when a gift card is initially created. You must activate the gift card
            before you can use it.
          name: PENDING
      x-is-beta: true
      x-release-status: BETA
    GiftCardType:
      description: ""
      enum:
        - PHYSICAL
        - DIGITAL
      type: string
      x-enum-elements:
        - description: A plastic gift card.
          name: PHYSICAL
        - description: A digital gift card.
          name: DIGITAL
      x-is-beta: true
      x-release-status: BETA
    Info: {}
    InfoCode: {}
    InlineTypes:
      description: Object types to inline under their respective parent object in certain connect v2 responses
      enum:
        - INLINE_NONE
        - INLINE_VARIATIONS
        - INLINE_ALL
      type: string
      x-enum-elements:
        - description: ""
          name: INLINE_NONE
        - description: ""
          name: INLINE_VARIATIONS
        - description: ""
          name: INLINE_ALL
      x-release-status: PUBLIC
    InventoryAdjustment:
      description: |-
        Represents a change in state or quantity of product inventory at a
        particular time and location.
      properties:
        adjustment_group:
          $ref: "#/components/schemas/InventoryAdjustmentGroup"
        catalog_object_id:
          description: |-
            The Square-generated ID of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked.
          maxLength: 100
          type: string
        catalog_object_type:
          description: |-
            The [type](https://developer.squareup.com/reference/square_2021-08-18/enums/CatalogObjectType) of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked. Tracking is only
            supported for the `ITEM_VARIATION` type.
          maxLength: 14
          type: string
        created_at:
          description: An RFC 3339-formatted timestamp that indicates when the inventory adjustment is received.
          maxLength: 34
          type: string
          x-read-only: true
        employee_id:
          description: |-
            The Square-generated ID of the [Employee](https://developer.squareup.com/reference/square_2021-08-18/objects/Employee) responsible for the
            inventory adjustment.
          maxLength: 100
          type: string
        from_state:
          description: |-
            The [inventory state](https://developer.squareup.com/reference/square_2021-08-18/enums/InventoryState) of the related quantity
            of items before the adjustment.
          type: string
        goods_receipt_id:
          description: |-
            The Square-generated ID of the goods receipt that caused the
            adjustment. Only relevant for state transitions from the Square for Retail
            app.
          maxLength: 100
          type: string
          x-read-only: true
        id:
          description: |-
            A unique ID generated by Square for the
            `InventoryAdjustment`.
          maxLength: 100
          type: string
        location_id:
          description: |-
            The Square-generated ID of the [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the related
            quantity of items is being tracked.
          maxLength: 100
          type: string
        occurred_at:
          description: |-
            A client-generated RFC 3339-formatted timestamp that indicates when
            the inventory adjustment took place. For inventory adjustment updates, the `occurred_at`
            timestamp cannot be older than 24 hours or in the future relative to the
            time of the request.
          maxLength: 34
          type: string
        purchase_order_id:
          description: |-
            The Square-generated ID of the purchase order that caused the
            adjustment. Only relevant for state transitions from the Square for Retail
            app.
          maxLength: 100
          type: string
          x-read-only: true
        quantity:
          description: |-
            The number of items affected by the adjustment as a decimal string.
            Can support up to 5 digits after the decimal point.
          maxLength: 26
          type: string
        reference_id:
          description: |-
            An optional ID provided by the application to tie the
            `InventoryAdjustment` to an external
            system.
          maxLength: 255
          type: string
        refund_id:
          description: |-
            The Square-generated ID of the [Refund][#type-refund] that
            caused the adjustment. Only relevant for refund-related state
            transitions.
          maxLength: 255
          type: string
          x-read-only: true
        source:
          $ref: "#/components/schemas/SourceApplication"
        to_state:
          description: |-
            The [inventory state](https://developer.squareup.com/reference/square_2021-08-18/enums/InventoryState) of the related quantity
            of items after the adjustment.
          type: string
        total_price_money:
          $ref: "#/components/schemas/Money"
        transaction_id:
          description: |-
            The Square-generated ID of the [Transaction][#type-transaction] that
            caused the adjustment. Only relevant for payment-related state
            transitions.
          maxLength: 255
          type: string
          x-read-only: true
      type: object
      x-release-status: PUBLIC
    InventoryAdjustmentGroup:
      description: ""
      properties:
        from_state:
          description: |-
            Representative `from_state` for adjustments within the group. For example, for a group adjustment from `IN_STOCK` to `SOLD`,
            there can be two component adjustments in the group: one from `IN_STOCK`to `COMPOSED` and the other one from `COMPOSED` to `SOLD`.
            Here, the representative `from_state` for the `InventoryAdjustmentGroup` is `IN_STOCK`.
          type: string
          x-read-only: true
        id:
          description: |-
            A unique ID generated by Square for the
            `InventoryAdjustmentGroup`.
          maxLength: 100
          type: string
          x-read-only: true
        root_adjustment_id:
          description: The inventory adjustment of the composed variation.
          maxLength: 100
          type: string
          x-read-only: true
        to_state:
          description: |-
            Representative `to_state` for adjustments within group. For example, for a group adjustment from `IN_STOCK` to `SOLD`,
            the two component adjustments in the group can be from `IN_STOCK` to `COMPOSED` and from `COMPOSED` to `SOLD`. 
            Here, the representative `to_state` of the `InventoryAdjustmentGroup` is `SOLD`.
          type: string
          x-read-only: true
      type: object
      x-is-beta: true
      x-release-status: BETA
    InventoryAlertType:
      description: Indicates whether Square should alert the merchant when the inventory quantity of a CatalogItemVariation is low.
      enum:
        - NONE
        - LOW_QUANTITY
      type: string
      x-enum-elements:
        - description: The variation does not display an alert.
          name: NONE
        - description: The variation generates an alert when its quantity is low.
          name: LOW_QUANTITY
      x-release-status: PUBLIC
    InventoryChange:
      description: |-
        Represents a single physical count, inventory, adjustment, or transfer
        that is part of the history of inventory changes for a particular
        [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) instance.
      properties:
        adjustment:
          $ref: "#/components/schemas/InventoryAdjustment"
        measurement_unit:
          $ref: "#/components/schemas/CatalogMeasurementUnit"
        measurement_unit_id:
          description: The ID of the [CatalogMeasurementUnit](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogMeasurementUnit) object representing the catalog measurement unit associated with the inventory change.
          type: string
          x-read-only: true
        physical_count:
          $ref: "#/components/schemas/InventoryPhysicalCount"
        transfer:
          $ref: "#/components/schemas/InventoryTransfer"
        type:
          description: |-
            Indicates how the inventory change is applied. See
            [InventoryChangeType](https://developer.squareup.com/reference/square_2021-08-18/enums/InventoryChangeType) for all possible values.
          type: string
      type: object
      x-release-status: PUBLIC
    InventoryChangeType:
      description: Indicates how the inventory change was applied to a tracked product quantity.
      enum:
        - PHYSICAL_COUNT
        - ADJUSTMENT
        - TRANSFER
      type: string
      x-enum-elements:
        - description: The change occurred as part of a physical count update.
          name: PHYSICAL_COUNT
        - description: |-
            The change occurred as part of the normal lifecycle of goods
            (e.g., as an inventory adjustment).
          name: ADJUSTMENT
        - description: The change occurred as part of an inventory transfer.
          name: TRANSFER
      x-release-status: PUBLIC
    InventoryCount:
      description: |-
        Represents Square-estimated quantity of items in a particular state at a
        particular seller location based on the known history of physical counts and
        inventory adjustments.
      properties:
        calculated_at:
          description: |-
            An RFC 3339-formatted timestamp that indicates when the most recent physical count or adjustment affecting
            the estimated count is received.
          maxLength: 34
          type: string
          x-read-only: true
        catalog_object_id:
          description: |-
            The Square-generated ID of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked.
          maxLength: 100
          type: string
        catalog_object_type:
          description: |-
            The [type](https://developer.squareup.com/reference/square_2021-08-18/enums/CatalogObjectType) of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked. Tracking is only
            supported for the `ITEM_VARIATION` type.
          maxLength: 14
          type: string
        is_estimated:
          description: |-
            Whether the inventory count is for composed variation (TRUE) or not (FALSE). If true, the inventory count will not be present in the response of
            any of these endpoints: [BatchChangeInventory](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/batch-change-inventory), 
            [BatchRetrieveInventoryChanges](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/batch-retrieve-inventory-changes), 
            [BatchRetrieveInventoryCounts](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/batch-retrieve-inventory-counts), and 
            [RetrieveInventoryChanges](https://developer.squareup.com/reference/square_2021-08-18/inventory-api/retrieve-inventory-changes).
          type: boolean
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        location_id:
          description: |-
            The Square-generated ID of the [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the related
            quantity of items is being tracked.
          maxLength: 100
          type: string
        quantity:
          description: |-
            The number of items affected by the estimated count as a decimal string.
            Can support up to 5 digits after the decimal point.
          maxLength: 26
          type: string
        state:
          description: |-
            The current [inventory state](https://developer.squareup.com/reference/square_2021-08-18/enums/InventoryState) for the related
            quantity of items.
          type: string
      type: object
      x-release-status: PUBLIC
    InventoryPhysicalCount:
      description: |-
        Represents the quantity of an item variation that is physically present
        at a specific location, verified by a seller or a seller's employee. For example,
        a physical count might come from an employee counting the item variations on
        hand or from syncing with an external system.
      properties:
        catalog_object_id:
          description: |-
            The Square-generated ID of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked.
          maxLength: 100
          type: string
        catalog_object_type:
          description: |-
            The [type](https://developer.squareup.com/reference/square_2021-08-18/enums/CatalogObjectType) of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked. Tracking is only
            supported for the `ITEM_VARIATION` type.
          maxLength: 14
          type: string
        created_at:
          description: An RFC 3339-formatted timestamp that indicates when the physical count is received.
          maxLength: 34
          type: string
          x-read-only: true
        employee_id:
          description: |-
            The Square-generated ID of the [Employee](https://developer.squareup.com/reference/square_2021-08-18/objects/Employee) responsible for the
            physical count.
          maxLength: 100
          type: string
        id:
          description: |-
            A unique Square-generated ID for the
            [InventoryPhysicalCount](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryPhysicalCount).
          maxLength: 100
          type: string
        location_id:
          description: |-
            The Square-generated ID of the [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the related
            quantity of items is being tracked.
          maxLength: 100
          type: string
        occurred_at:
          description: |-
            A client-generated RFC 3339-formatted timestamp that indicates when
            the physical count was examined. For physical count updates, the `occurred_at`
            timestamp cannot be older than 24 hours or in the future relative to the
            time of the request.
          maxLength: 34
          type: string
        quantity:
          description: |-
            The number of items affected by the physical count as a decimal string.
            The number can support up to 5 digits after the decimal point.
          maxLength: 26
          type: string
        reference_id:
          description: |-
            An optional ID provided by the application to tie the
            [InventoryPhysicalCount](https://developer.squareup.com/reference/square_2021-08-18/objects/InventoryPhysicalCount) to an external
            system.
          maxLength: 255
          type: string
        source:
          $ref: "#/components/schemas/SourceApplication"
        state:
          description: |-
            The current [inventory state](https://developer.squareup.com/reference/square_2021-08-18/enums/InventoryState) for the related
            quantity of items.
          type: string
      type: object
      x-release-status: PUBLIC
    InventoryState:
      description: Indicates the state of a tracked item quantity in the lifecycle of goods.
      enum:
        - CUSTOM
        - IN_STOCK
        - SOLD
        - RETURNED_BY_CUSTOMER
        - RESERVED_FOR_SALE
        - SOLD_ONLINE
        - ORDERED_FROM_VENDOR
        - RECEIVED_FROM_VENDOR
        - IN_TRANSIT_TO
        - NONE
        - WASTE
        - UNLINKED_RETURN
        - COMPOSED
        - DECOMPOSED
        - SUPPORTED_BY_NEWER_VERSION
      type: string
      x-enum-elements:
        - description: |-
            The related quantity of items are in a custom state. **READ-ONLY**:
            the Inventory API cannot move quantities to or from this state.
          name: CUSTOM
        - description: The related quantity of items are on hand and available for sale.
          name: IN_STOCK
        - description: |-
            The related quantity of items were sold as part of an itemized
            transaction. Quantities in the `SOLD` state are no longer tracked.
          name: SOLD
        - description: |-
            The related quantity of items were returned through the Square Point
            of Sale application, but are not yet available for sale. **READ-ONLY**:
            the Inventory API cannot move quantities to or from this state.
          name: RETURNED_BY_CUSTOMER
        - description: |-
            The related quantity of items are on hand, but not currently
            available for sale. **READ-ONLY**: the Inventory API cannot move
            quantities to or from this state.
          name: RESERVED_FOR_SALE
        - description: |-
            The related quantity of items were sold online. **READ-ONLY**: the
            Inventory API cannot move quantities to or from this state.
          name: SOLD_ONLINE
        - description: |-
            The related quantity of items were ordered from a vendor but not yet
            received. **READ-ONLY**: the Inventory API cannot move quantities to or
            from this state.
          name: ORDERED_FROM_VENDOR
        - description: |-
            The related quantity of items were received from a vendor but are
            not yet available for sale. **READ-ONLY**: the Inventory API cannot move
            quantities to or from this state.
          name: RECEIVED_FROM_VENDOR
        - description: |-
            The related quantity of items are in transit between locations.
            *READ-ONLY**: the Inventory API cannot move quantities to or from this
            state.
          name: IN_TRANSIT_TO
        - description: |-
            A placeholder indicating that the related quantity of items are not
            currently tracked in Square. Transferring quantities from the `NONE` state
            to a tracked state (e.g., `IN_STOCK`) introduces stock into the system.
          name: NONE
        - description: |-
            The related quantity of items are lost or damaged and cannot be
            sold.
          name: WASTE
        - description: |-
            The related quantity of items were returned but not linked to a
            previous transaction. Unlinked returns are not tracked in Square.
            Transferring a quantity from `UNLINKED_RETURN` to a tracked state (e.g.,
            `IN_STOCK`) introduces new stock into the system.
          name: UNLINKED_RETURN
        - description: The related quantity of items that are part of a composition consisting one or more components.
          name: COMPOSED
        - description: The related quantity of items that are part of a component.
          name: DECOMPOSED
        - description: This state is not supported by this version of the Square API. We recommend that you upgrade the client to use the appropriate version of the Square API supporting this state.
          name: SUPPORTED_BY_NEWER_VERSION
      x-release-status: PUBLIC
    InventoryTransfer:
      description: |-
        Represents the transfer of a quantity of product inventory at a
        particular time from one location to another.
      properties:
        catalog_object_id:
          description: |-
            The Square-generated ID of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked.
          maxLength: 100
          type: string
        catalog_object_type:
          description: |-
            The [type](https://developer.squareup.com/reference/square_2021-08-18/enums/CatalogObjectType) of the
            [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) being tracked.Tracking is only
            supported for the `ITEM_VARIATION` type.
          maxLength: 14
          type: string
        created_at:
          description: |-
            An RFC 3339-formatted timestamp that indicates when Square
            received the transfer request.
          maxLength: 34
          type: string
          x-read-only: true
        employee_id:
          description: |-
            The Square-generated ID of the [Employee](https://developer.squareup.com/reference/square_2021-08-18/objects/Employee) responsible for the
            inventory transfer.
          maxLength: 100
          type: string
        from_location_id:
          description: |-
            The Square-generated ID of the [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the related
            quantity of items was tracked before the transfer.
          maxLength: 100
          type: string
        id:
          description: |-
            A unique ID generated by Square for the
            `InventoryTransfer`.
          maxLength: 100
          type: string
        occurred_at:
          description: |-
            A client-generated RFC 3339-formatted timestamp that indicates when
            the transfer took place. For write actions, the `occurred_at` timestamp
            cannot be older than 24 hours or in the future relative to the time of the
            request.
          maxLength: 34
          type: string
        quantity:
          description: |-
            The number of items affected by the transfer as a decimal string.
            Can support up to 5 digits after the decimal point.
          maxLength: 26
          type: string
        reference_id:
          description: |-
            An optional ID provided by the application to tie the
            `InventoryTransfer` to an external system.
          maxLength: 255
          type: string
        source:
          $ref: "#/components/schemas/SourceApplication"
        state:
          description: |-
            The [inventory state](https://developer.squareup.com/reference/square_2021-08-18/enums/InventoryState) for the quantity of
            items being transferred.
          type: string
        to_location_id:
          description: |-
            The Square-generated ID of the [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the related
            quantity of items was tracked after the transfer.
          maxLength: 100
          type: string
      type: object
      x-release-status: PUBLIC
    Invoice:
      description: |-
        Stores information about an invoice. You use the Invoices API to create and manage
        invoices. For more information, see [Manage Invoices Using the Invoices API](https://developer.squareup.com/docs/invoices-api/overview).
      properties:
        accepted_payment_methods:
          $ref: "#/components/schemas/InvoiceAcceptedPaymentMethods"
        created_at:
          description: The timestamp when the invoice was created, in RFC 3339 format.
          type: string
          x-read-only: true
        custom_fields:
          description: |-
            Additional seller-defined fields to render on the invoice. These fields are visible to sellers and buyers
            on the Square-hosted invoice page and in emailed or PDF copies of invoices. For more information, see
            [Custom fields](https://developer.squareup.com/docs/invoices-api/overview#custom-fields).

            Adding custom fields to an invoice requires an 
            [Invoices Plus subscription](https://developer.squareup.com/docs/invoices-api/overview#invoices-plus-subscription).

            Max: 2 custom fields
          items:
            $ref: "#/components/schemas/InvoiceCustomField"
          type: array
        delivery_method:
          $ref: "#/components/schemas/invoice_delivery_methodInvoiceDeliveryMethod"
        description:
          description: The description of the invoice. This is visible to the customer receiving the invoice.
          maxLength: 65536
          minLength: 1
          type: string
        id:
          description: The Square-assigned ID of the invoice.
          type: string
          x-read-only: true
        invoice_number:
          description: |-
            A user-friendly invoice number. The value is unique within a location.
            If not provided when creating an invoice, Square assigns a value.
            It increments from 1 and padded with zeros making it 7 characters long
            (for example, 0000001 and 0000002).
          maxLength: 191
          minLength: 1
          type: string
        location_id:
          description: |-
            The ID of the location that this invoice is associated with. 

            If specified in a `CreateInvoice` request, the value must match the `location_id` of the associated order.
          maxLength: 255
          minLength: 1
          type: string
        next_payment_amount_money:
          $ref: "#/components/schemas/Money"
        order_id:
          description: |-
            The ID of the [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) for which the invoice is created. 
            This field is required when creating an invoice, and the order must be in the `OPEN` state.

            To view the line items and other information for the associated order, call the 
            [RetrieveOrder](https://developer.squareup.com/reference/square_2021-08-18/orders-api/retrieve-order) endpoint using the order ID.
          maxLength: 255
          minLength: 1
          type: string
        payment_requests:
          description: |-
            The payment schedule for the invoice, represented by one or more payment requests that
            define payment settings, such as amount due and due date. An invoice supports the following payment request combinations:
            - One balance
            - One deposit with one balance
            - 2–12 installments 
            - One deposit with 2–12 installments

            This field is required when creating an invoice. It must contain at least one payment request. 
            All payment requests for the invoice must equal the total order amount. For more information, see 
            [Payment requests](https://developer.squareup.com/docs/invoices-api/overview#payment-requests).

            Adding `INSTALLMENT` payment requests to an invoice requires an 
            [Invoices Plus subscription](https://developer.squareup.com/docs/invoices-api/overview#invoices-plus-subscription).
          items:
            $ref: "#/components/schemas/InvoicePaymentRequest"
          type: array
        primary_recipient:
          $ref: "#/components/schemas/InvoiceRecipient"
        public_url:
          description: |-
            The URL of the Square-hosted invoice page.
            After you publish the invoice using the `PublishInvoice` endpoint, Square hosts the invoice
            page and returns the page URL in the response.
          type: string
          x-read-only: true
        scheduled_at:
          description: |-
            The timestamp when the invoice is scheduled for processing, in RFC 3339 format.
            After the invoice is published, Square processes the invoice on the specified date,
            according to the delivery method and payment request settings.

            If the field is not set, Square processes the invoice immediately after it is published.
          type: string
        status:
          description: The status of the invoice.
          type: string
          x-read-only: true
        subscription_id:
          description: |-
            The ID of the [subscription](https://developer.squareup.com/reference/square_2021-08-18/objects/Subscription) associated with the invoice.
            This field is present only on subscription billing invoices.
          type: string
          x-read-only: true
        timezone:
          description: |-
            The time zone used to interpret calendar dates on the invoice, such as `due_date`.
            When an invoice is created, this field is set to the `timezone` specified for the seller
            location. The value cannot be changed.

            For example, a payment `due_date` of 2021-03-09 with a `timezone` of America/Los\_Angeles
            becomes overdue at midnight on March 9 in America/Los\_Angeles (which equals a UTC timestamp
            of 2021-03-10T08:00:00Z).
          type: string
          x-read-only: true
        title:
          description: The title of the invoice.
          maxLength: 255
          minLength: 1
          type: string
        updated_at:
          description: The timestamp when the invoice was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
        version:
          description: The Square-assigned version number, which is incremented each time an update is committed to the invoice.
          type: integer
      type: object
      x-release-status: PUBLIC
    InvoiceAcceptedPaymentMethods:
      description: The payment methods that customers can use to pay an invoice on the Square-hosted invoice page.
      properties:
        bank_account:
          description: |-
            Indicates whether bank transfer payments are accepted. The default value is `false`.

            This option is allowed only for invoices that have a single payment request of type `BALANCE`.
          type: boolean
        card:
          description: Indicates whether credit card or debit card payments are accepted. The default value is `false`.
          type: boolean
        square_gift_card:
          description: Indicates whether Square gift card payments are accepted. The default value is `false`.
          type: boolean
      type: object
      x-release-status: PUBLIC
    InvoiceAutomaticPaymentSource:
      description: Indicates the automatic payment method for an [invoice payment request](https://developer.squareup.com/reference/square_2021-08-18/objects/InvoicePaymentRequest).
      enum:
        - NONE
        - CARD_ON_FILE
        - BANK_ON_FILE
      type: string
      x-enum-elements:
        - description: An automatic payment is not configured for the payment request.
          name: NONE
        - description: |-
            Use a card on file as the automatic payment method. On the due date, Square charges the card
            for the amount of the payment request.

            For `CARD_ON_FILE` payments, the invoice delivery method must be `EMAIL` and `card_id` must be
            specified for the payment request before the invoice can be published.
          name: CARD_ON_FILE
        - description: |-
            Use a bank account on file as the automatic payment method. On the due date, Square charges the bank
            account for the amount of the payment request.

            This payment method applies only to recurring invoices that sellers create in the Seller Dashboard or other
            Square first-party applications. The bank account is provided by the customer during the payment flow. 

            You cannot set `BANK_ON_FILE` as a payment method using the Invoices API, but you can change a `BANK_ON_FILE`
            payment method to `NONE` or `CARD_ON_FILE`. For `BANK_ON_FILE` payments, the invoice delivery method must be `EMAIL`.
          name: BANK_ON_FILE
      x-release-status: PUBLIC
    InvoiceCustomField:
      description: |-
        An additional seller-defined and customer-facing field to include on the invoice. For more information, 
        see [Custom fields](https://developer.squareup.com/docs/invoices-api/overview#custom-fields).

        Adding custom fields to an invoice requires an 
        [Invoices Plus subscription](https://developer.squareup.com/docs/invoices-api/overview#invoices-plus-subscription).
      properties:
        label:
          description: The label or title of the custom field. This field is required for a custom field.
          maxLength: 30
          type: string
        placement:
          description: The location of the custom field on the invoice. This field is required for a custom field.
          type: string
        value:
          description: The text of the custom field. If omitted, only the label is rendered.
          maxLength: 2000
          type: string
      type: object
      x-release-status: PUBLIC
    InvoiceCustomFieldPlacement:
      description: |-
        Indicates where to render a custom field on the Square-hosted invoice page and in emailed or PDF 
        copies of the invoice.
      enum:
        - ABOVE_LINE_ITEMS
        - BELOW_LINE_ITEMS
      type: string
      x-enum-elements:
        - description: Render the custom field above the invoice line items.
          name: ABOVE_LINE_ITEMS
        - description: Render the custom field below the invoice line items.
          name: BELOW_LINE_ITEMS
      x-release-status: PUBLIC
    InvoiceDeliveryMethod:
      description: Indicates how Square delivers the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) to the customer.
      enum:
        - EMAIL
        - SHARE_MANUALLY
        - SMS
      type: string
      x-enum-elements:
        - description: Directs Square to send invoices, reminders, and receipts to the customer using email.
          name: EMAIL
        - description: |-
            Directs Square to take no action on the invoice. In this case, the seller
            or application developer follows up with the customer for payment. For example,
            a seller might collect a payment in the Seller Dashboard or Point of Sale (POS) application.
            The seller might also share the URL of the Square-hosted invoice page (`public_url`) with the customer to request payment.
          name: SHARE_MANUALLY
        - description: |-
            Directs Square to send invoices and receipts to the customer using SMS (text message).

            You cannot set `SMS` as a delivery method using the Invoices API, but you can change an `SMS` delivery method to `EMAIL` or `SHARE_MANUALLY`.
          name: SMS
      x-release-status: PUBLIC
    InvoiceFilter:
      description: Describes query filters to apply.
      properties:
        customer_ids:
          description: |-
            Limits the search to the specified customers, within the specified locations. 
            Specifying a customer is optional. In the current implementation, 
            a maximum of one customer can be specified.
          items:
            type: string
          type: array
        location_ids:
          description: |-
            Limits the search to the specified locations. A location is required. 
            In the current implementation, only one location can be specified.
          items:
            type: string
          type: array
      required:
        - location_ids
      type: object
      x-release-status: PUBLIC
    InvoicePaymentReminder:
      description: |-
        Describes a payment request reminder (automatic notification) that Square sends
        to the customer. You configure a reminder relative to the payment request
        `due_date`.
      properties:
        message:
          description: The reminder message.
          maxLength: 1000
          minLength: 1
          type: string
        relative_scheduled_days:
          description: |-
            The number of days before (a negative number) or after (a positive number)
            the payment request `due_date` when the reminder is sent. For example, -3 indicates that
            the reminder should be sent 3 days before the payment request `due_date`.
          maximum: 32767
          minimum: -32767
          type: integer
        sent_at:
          description: If sent, the timestamp when the reminder was sent, in RFC 3339 format.
          type: string
          x-read-only: true
        status:
          description: The status of the reminder.
          type: string
          x-read-only: true
        uid:
          description: |-
            A Square-assigned ID that uniquely identifies the reminder within the
            `InvoicePaymentRequest`.
          type: string
          x-read-only: true
      type: object
      x-release-status: PUBLIC
    InvoicePaymentReminderStatus:
      description: The status of a payment request reminder.
      enum:
        - PENDING
        - NOT_APPLICABLE
        - SENT
      type: string
      x-enum-elements:
        - description: The reminder will be sent on the `relative_scheduled_date` (if the invoice is published).
          name: PENDING
        - description: |-
            The reminder is not applicable and is not sent. The following are examples
            of when reminders are not applicable and are not sent:
            - You schedule a reminder to be sent before the invoice is published.
            - The invoice is configured with multiple payment requests and a payment request reminder
            is configured to be sent after the next payment request `due_date`.
            - Two reminders (for different payment requests) are configured to be sent on the
            same date. Therefore, only one reminder is sent.
            - You configure a reminder to be sent on the date that the invoice is scheduled to be sent.
            - The payment request is already paid.
            - The invoice status is `CANCELED` or `FAILED`.
          name: NOT_APPLICABLE
        - description: The reminder is sent.
          name: SENT
      x-release-status: PUBLIC
    InvoicePaymentRequest:
      description: |-
        Represents a payment request for an [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice). Invoices can specify a maximum
        of 13 payment requests, with up to 12 `INSTALLMENT` request types. For more information, 
        see [Payment requests](https://developer.squareup.com/docs/invoices-api/overview#payment-requests).

        Adding `INSTALLMENT` payment requests to an invoice requires an 
        [Invoices Plus subscription](https://developer.squareup.com/docs/invoices-api/overview#invoices-plus-subscription).
      properties:
        automatic_payment_source:
          description: |-
            The payment method for an automatic payment.

            The default value is `NONE`.
          type: string
        card_id:
          description: |-
            The ID of the credit or debit card on file to charge for the payment request. To get the cards on file for a customer,
            call [ListCards](https://developer.squareup.com/reference/square_2021-08-18/cards-api/list-cards) and include the `customer_id` of the invoice recipient.
          maxLength: 255
          minLength: 1
          type: string
        computed_amount_money:
          $ref: "#/components/schemas/Money"
        due_date:
          description: |-
            The due date (in the invoice's time zone) for the payment request, in `YYYY-MM-DD` format. This field
            is required to create a payment request.

            After this date, the invoice becomes overdue. For example, a payment `due_date` of 2021-03-09 with a `timezone`
            of America/Los\_Angeles becomes overdue at midnight on March 9 in America/Los\_Angeles (which equals a UTC
            timestamp of 2021-03-10T08:00:00Z).
          type: string
        fixed_amount_requested_money:
          $ref: "#/components/schemas/Money"
        percentage_requested:
          description: |-
            Specifies the amount for the payment request in percentage:

            - When the payment `request_type` is `DEPOSIT`, it is the percentage of the order's total amount.
            - When the payment `request_type` is `INSTALLMENT`, it is the percentage of the order's total less 
            the deposit, if requested. The sum of the `percentage_requested` in all installment 
            payment requests must be equal to 100.

            You cannot specify this when the payment `request_type` is `BALANCE` or when the 
            payment request specifies the `fixed_amount_requested_money` field.
          type: string
        reminders:
          description: A list of one or more reminders to send for the payment request.
          items:
            $ref: "#/components/schemas/InvoicePaymentReminder"
          type: array
        request_method:
          description: |-
            Indicates how Square processes the payment request. DEPRECATED at version 2021-01-21. Replaced by the
            `Invoice.delivery_method` and `InvoicePaymentRequest.automatic_payment_source` fields.

            One of the following is required when creating an invoice:
            - (Recommended) The `delivery_method` field of the invoice. To configure an automatic payment, the
            `automatic_payment_source` field of the payment request is also required.
            - This `request_method` field. Note that `invoice` objects returned in responses do not include `request_method`.
          type: string
          x-is-deprecated: true
          x-release-status: DEPRECATED
        request_type:
          description: |-
            Identifies the payment request type. This type defines how the payment request amount is determined. 
            This field is required to create a payment request.
          type: string
        rounding_adjustment_included_money:
          $ref: "#/components/schemas/Money"
        tipping_enabled:
          description: |-
            If set to true, the Square-hosted invoice page (the `public_url` field of the invoice) 
            provides a place for the customer to pay a tip. 

            This field is allowed only on the final payment request  
            and the payment `request_type` must be `BALANCE` or `INSTALLMENT`.
          type: boolean
        total_completed_amount_money:
          $ref: "#/components/schemas/Money"
        uid:
          description: The Square-generated ID of the payment request in an [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice).
          maxLength: 255
          minLength: 1
          type: string
          x-read-only: true
      type: object
      x-release-status: PUBLIC
    InvoiceQuery:
      description: Describes query criteria for searching invoices.
      properties:
        filter:
          $ref: "#/components/schemas/InvoiceFilter"
        sort:
          $ref: "#/components/schemas/InvoiceSort"
      required:
        - filter
      type: object
      x-release-status: PUBLIC
    InvoiceRecipient:
      description: Provides customer data that Square uses to deliver an invoice.
      properties:
        address:
          $ref: "#/components/schemas/Address"
        company_name:
          description: The name of the recipient's company.
          type: string
          x-read-only: true
        customer_id:
          description: |-
            The ID of the customer. This is the customer profile ID that 
            you provide when creating a draft invoice.
          maxLength: 255
          minLength: 1
          type: string
        email_address:
          description: The recipient's email address.
          type: string
          x-read-only: true
        family_name:
          description: The recipient's family (that is, last) name.
          type: string
          x-read-only: true
        given_name:
          description: The recipient's given (that is, first) name.
          type: string
          x-read-only: true
        phone_number:
          description: The recipient's phone number.
          type: string
          x-read-only: true
      type: object
      x-release-status: PUBLIC
    InvoiceRequestMethod:
      description: |-
        Specifies the action for Square to take for processing the invoice. For example, 
        email the invoice, charge a customer's card on file, or do nothing. DEPRECATED at
        version 2021-01-21. The corresponding `request_method` field is replaced by the
        `Invoice.delivery_method` and `InvoicePaymentRequest.automatic_payment_source` fields.
      enum:
        - EMAIL
        - CHARGE_CARD_ON_FILE
        - SHARE_MANUALLY
        - CHARGE_BANK_ON_FILE
        - SMS
        - SMS_CHARGE_CARD_ON_FILE
        - SMS_CHARGE_BANK_ON_FILE
      type: string
      x-enum-elements:
        - description: |-
            Directs Square to send invoices, reminders, and receipts to the customer using email.
            Square sends the invoice after it is published (either immediately or at the `scheduled_at`
            time, if specified in the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice)).
          name: EMAIL
        - description: |-
            Directs Square to charge the card on file on the `due_date` specified in the payment request
            and to use email to send invoices, reminders, and receipts.
          name: CHARGE_CARD_ON_FILE
        - description: |-
            Directs Square to take no specific action on the invoice. In this case, the seller 
            (or the application developer) follows up with the customer for payment. For example, 
            a seller might collect a payment in the Seller Dashboard or use the Point of Sale (POS) application. 
            The seller might also share the URL of the Square-hosted invoice page (`public_url`) with the customer requesting payment.
          name: SHARE_MANUALLY
        - description: |-
            Directs Square to charge the bank account on file on the `due_date` specified in the
            payment request and to use email to send invoices, reminders, and receipts.

            The bank on file payment method applies only to recurring invoices that sellers create in the Seller Dashboard or other
            Square first-party applications. The bank account is provided by the customer during the payment flow. You 
            cannot set `CHARGE_BANK_ON_FILE` as a request method using the Invoices API.
          name: CHARGE_BANK_ON_FILE
        - description: |-
            Directs Square to send invoices and receipts to the customer using SMS (text message). Square sends the invoice
            after it is published (either immediately or at the `scheduled_at` time, if specified in the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice)). 

            You cannot set `SMS` as a request method using the Invoices API.
          name: SMS
        - description: |-
            Directs Square to charge the card on file on the `due_date` specified in the payment request and to
            use SMS (text message) to send invoices and receipts. 

            You cannot set `SMS_CHARGE_CARD_ON_FILE` as a request method using the Invoices API.
          name: SMS_CHARGE_CARD_ON_FILE
        - description: |-
            Directs Square to charge the bank account on file on the `due_date` specified in the payment request
            and to use SMS (text message) to send invoices and receipts. 

            The bank on file payment method applies only to recurring invoices that sellers create in the Seller Dashboard
            or other Square first-party applications. The bank account is provided by the customer during the payment flow. 
            You cannot set `SMS_CHARGE_BANK_ON_FILE` as a request method using the Invoices API.
          name: SMS_CHARGE_BANK_ON_FILE
      x-is-deprecated: true
      x-release-status: DEPRECATED
    InvoiceRequestType:
      description: |-
        Indicates the type of the payment request. For more information, see 
        [Payment requests](https://developer.squareup.com/docs/invoices-api/overview#payment-requests).
      enum:
        - BALANCE
        - DEPOSIT
        - INSTALLMENT
      type: string
      x-enum-elements:
        - description: |-
            A request for a balance payment. The balance amount is computed as follows: 

            - If the invoice specifies only a balance payment request, the balance amount is the 
            total amount of the associated order. 
            - If the invoice also specifies a deposit request, the balance amount is the amount 
            remaining after the deposit.

            `INSTALLMENT` and `BALANCE` payment requests are not allowed in the same invoice.
          name: BALANCE
        - description: |-
            A request for a deposit payment. You have the option of specifying 
            an exact amount or a percentage of the total order amount. If you request a deposit, 
            it must be due before any other payment requests.
          name: DEPOSIT
        - description: |-
            A request for an installment payment. Installments allow buyers to pay the invoice over time. Installments can optionally be combined with a deposit. 

            Adding `INSTALLMENT` payment requests to an invoice requires an 
            [Invoices Plus subscription](https://developer.squareup.com/docs/invoices-api/overview#invoices-plus-subscription).
          name: INSTALLMENT
      x-release-status: PUBLIC
    InvoiceSort:
      description: Identifies the sort field and sort order.
      properties:
        field:
          description: The field to use for sorting.
          type: string
        order:
          description: The order to use for sorting the results.
          type: string
      required:
        - field
      type: object
      x-release-status: PUBLIC
    InvoiceSortField:
      description: The field to use for sorting.
      enum:
        - INVOICE_SORT_DATE
      type: string
      x-enum-elements:
        - description: |-
            The field works as follows:

            - If the invoice is a draft, it uses the invoice `created_at` date.
            - If the invoice is scheduled for publication, it uses the `scheduled_at` date.
            - If the invoice is published, it uses the invoice publication date.
          name: INVOICE_SORT_DATE
      x-release-status: PUBLIC
    InvoiceStatus:
      description: Indicates the status of an invoice.
      enum:
        - DRAFT
        - UNPAID
        - SCHEDULED
        - PARTIALLY_PAID
        - PAID
        - PARTIALLY_REFUNDED
        - REFUNDED
        - CANCELED
        - FAILED
        - PAYMENT_PENDING
      type: string
      x-enum-elements:
        - description: |-
            The invoice is a draft. You must publish a draft invoice before Square can process it.
            A draft invoice has no `public_url`, so it is not available to customers.
          name: DRAFT
        - description: The invoice is published but not yet paid.
          name: UNPAID
        - description: |-
            The invoice is scheduled to be processed. On the scheduled date,
            Square sends the invoice, initiates an automatic payment, or takes no action, depending on
            the delivery method and payment request settings. Square also sets the invoice status to the
            appropriate state: `UNPAID`, `PAID`, `PARTIALLY_PAID`, or `PAYMENT_PENDING`.
          name: SCHEDULED
        - description: A partial payment is received for the invoice.
          name: PARTIALLY_PAID
        - description: The customer paid the invoice in full.
          name: PAID
        - description: |-
            The invoice is paid (or partially paid) and some but not all the amount paid is
            refunded.
          name: PARTIALLY_REFUNDED
        - description: The full amount that the customer paid for the invoice is refunded.
          name: REFUNDED
        - description: |-
            The invoice is canceled. Square no longer requests payments from the customer.
            The `public_url` page remains and is accessible, but it displays the invoice
            as canceled and does not accept payment.
          name: CANCELED
        - description: Square canceled the invoice due to suspicious activity.
          name: FAILED
        - description: |-
            A payment on the invoice was initiated but has not yet been processed.

            When in this state, invoices cannot be updated and other payments cannot be initiated.
          name: PAYMENT_PENDING
      x-release-status: PUBLIC
    ItemVariationLocationOverrides:
      description: Price and inventory alerting overrides for a `CatalogItemVariation` at a specific `Location`.
      properties:
        inventory_alert_threshold:
          description: |-
            If the inventory quantity for the variation is less than or equal to this value and `inventory_alert_type`
            is `LOW_QUANTITY`, the variation displays an alert in the merchant dashboard.

            This value is always an integer.
          format: int64
          type: integer
        inventory_alert_type:
          description: |-
            Indicates whether the `CatalogItemVariation` displays an alert when its inventory
            quantity is less than or equal to its `inventory_alert_threshold`.
          type: string
        location_id:
          description: The ID of the `Location`. This can include locations that are deactivated.
          type: string
        price_money:
          $ref: "#/components/schemas/Money"
        pricing_type:
          description: The pricing type (fixed or variable) for the `CatalogItemVariation` at the given `Location`.
          type: string
        track_inventory:
          description: If `true`, inventory tracking is active for the `CatalogItemVariation` at this `Location`.
          type: boolean
      type: object
      x-release-status: PUBLIC
    JobAssignment:
      description: An object describing a job that a team member is assigned to.
      properties:
        annual_rate:
          $ref: "#/components/schemas/Money"
        hourly_rate:
          $ref: "#/components/schemas/Money"
        job_title:
          description: The title of the job.
          minLength: 1
          type: string
        pay_type:
          description: |-
            The current pay type for the job assignment used to
            calculate the pay amount in a pay period.
          type: string
        weekly_hours:
          description: The planned hours per week for the job. Set if the job `PayType` is `SALARY`.
          type: integer
      required:
        - job_title
        - pay_type
      type: object
      x-release-status: PUBLIC
    JobAssignmentPayType:
      description: Enumerates the possible pay types that a job can be assigned.
      enum:
        - NONE
        - HOURLY
        - SALARY
      type: string
      x-enum-elements:
        - description: The job does not have a defined pay type.
          name: NONE
        - description: The job pays an hourly rate.
          name: HOURLY
        - description: The job pays an annual salary.
          name: SALARY
      x-release-status: PUBLIC
    LinkCustomerToGiftCardRequest:
      description: A request to link a customer to a gift card
      example:
        request_body:
          customer_id: GKY0FZ3V717AH8Q2D821PNT2ZW
        request_params: ?gift_card_id=gftc:71ea002277a34f8a945e284b04822edb
      properties:
        customer_id:
          description: The ID of the customer to be linked.
          maxLength: 191
          minLength: 1
          type: string
      required:
        - customer_id
      type: object
      x-is-beta: true
      x-release-status: BETA
    LinkCustomerToGiftCardResponse:
      description: |-
        A response that contains one `GiftCard` that was linked. The response might contain a set of `Error`
        objects if the request resulted in errors.
      example:
        gift_card:
          balance_money:
            amount: 2500
            currency: USD
          created_at: 2021-03-25T05:13:01Z
          customer_ids:
            - GKY0FZ3V717AH8Q2D821PNT2ZW
          gan: "7783320005440920"
          gan_source: SQUARE
          id: gftc:71ea002277a34f8a945e284b04822edb
          state: ACTIVE
          type: DIGITAL
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card:
          $ref: "#/components/schemas/GiftCard"
      type: object
      x-is-beta: true
      x-release-status: BETA
    ListBankAccountsRequest:
      description: |-
        Request object for fetching all `BankAccount`
        objects linked to a account.
      properties:
        cursor:
          description: |-
            The pagination cursor returned by a previous call to this endpoint.
            Use it in the next `ListBankAccounts` request to retrieve the next set 
            of results.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        limit:
          description: |-
            Upper limit on the number of bank accounts to return in the response. 
            Currently, 1000 is the largest supported limit. You can specify a limit 
            of up to 1000 bank accounts. This is also the default limit.
          type: integer
        location_id:
          description: |-
            Location ID. You can specify this optional filter 
            to retrieve only the linked bank accounts belonging to a specific location.
          type: string
      type: object
      x-release-status: PUBLIC
    ListBankAccountsResponse:
      description: Response object returned by ListBankAccounts.
      example:
        bank_accounts:
          - account_number_suffix: "971"
            account_type: CHECKING
            bank_name: Bank Name
            country: US
            creditable: false
            currency: USD
            debitable: false
            holder_name: Jane Doe
            id: ao6iaQ9vhDiaQD7n3GB
            location_id: S8GWD5example
            primary_bank_identification_number: "112200303"
            status: VERIFICATION_IN_PROGRESS
            version: 5
          - account_number_suffix: "972"
            account_type: CHECKING
            bank_name: Bank Name
            country: US
            creditable: false
            currency: USD
            debitable: false
            holder_name: Jane Doe
            id: 4x7WXuaxrkQkVlka3GB
            location_id: S8GWD5example
            primary_bank_identification_number: "112200303"
            status: VERIFICATION_IN_PROGRESS
            version: 5
      properties:
        bank_accounts:
          description: List of BankAccounts associated with this account.
          items:
            $ref: "#/components/schemas/BankAccount"
          type: array
        cursor:
          description: |-
            When a response is truncated, it includes a cursor that you can 
            use in a subsequent request to fetch next set of bank accounts.
            If empty, this is the final response.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    ListBreakTypesRequest:
      description: A request for a filtered set of `BreakType` objects.
      example:
        request_params: ?location_id=PAA1RJZZKXBFG&limit=2&cursor=s4R0Z6ecFTzTC4jz8sUDBQTudX3KE313OT9fCt3VUgsXM4sMgED
      properties:
        cursor:
          description: A pointer to the next page of `BreakType` results to fetch.
          type: string
        limit:
          description: |-
            The maximum number of `BreakType` results to return per page. The number can range between 1
            and 200. The default is 200.
          maximum: 200
          minimum: 1
          type: integer
        location_id:
          description: |-
            Filter the returned `BreakType` results to only those that are associated with the
            specified location.
          type: string
      type: object
      x-release-status: PUBLIC
    ListBreakTypesResponse:
      description: |-
        The response to a request for a set of `BreakType` objects. The response contains
        the requested `BreakType` objects and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        break_types:
          - break_name: Coffee Break
            created_at: 2019-01-22T20:47:37Z
            expected_duration: PT5M
            id: REGS1EQR1TPZ5
            is_paid: false
            location_id: PAA1RJZZKXBFG
            updated_at: 2019-01-22T20:47:37Z
            version: 1
          - break_name: Lunch Break
            created_at: 2019-01-25T19:26:30Z
            expected_duration: PT1H
            id: 92EPDRQKJ5088
            is_paid: true
            location_id: PAA1RJZZKXBFG
            updated_at: 2019-01-25T19:26:30Z
            version: 3
        cursor: 2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED
      properties:
        break_types:
          description: " A page of `BreakType` results."
          items:
            $ref: "#/components/schemas/BreakType"
          type: array
        cursor:
          description: |-
            The value supplied in the subsequent request to fetch the next page
            of `BreakType` results.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    ListCardsRequest:
      description: |-
        Retrieves details for a specific Card. Accessible via
        HTTP requests at GET https://connect.squareup.com/v2/cards
      example:
        request_body: {}
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          maxLength: 256
          type: string
        customer_id:
          description: |-
            Limit results to cards associated with the customer supplied.
            By default, all cards owned by the merchant are returned.
          type: string
        include_disabled:
          description: |-
            Includes disabled cards.
            By default, all enabled cards owned by the merchant are returned.
          type: boolean
        reference_id:
          description: Limit results to cards associated with the reference_id supplied.
          type: string
        sort_order:
          description: |-
            Sorts the returned list by when the card was created with the specified order.
            This field defaults to ASC.
          type: string
      type: object
      x-release-status: PUBLIC
    ListCardsResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [ListCards](#endpoint-cards-listcards) endpoint.

        Note: if there are errors processing the request, the card field will not be
        present.
      example:
        cards:
          - card:
              billing_address:
                address_line_1: 500 Electric Ave
                address_line_2: Suite 600
                administrative_district_level_1: NY
                country: US
                locality: New York
                postal_code: "10003"
              bin: "411111"
              card_brand: VISA
              card_type: CREDIT
              cardholder_name: Amelia Earhart
              customer_id: VDKXEEKPJN48QDG3BGGFAK05P8
              enabled: true
              exp_month: 11
              exp_year: 2022
              fingerprint: ex-p-cs80EK9Flz7LsCMv-szbptQ_ssAGrhemzSTsPFgt9nzyE6t7okiLIQc-qw_quqKX4Q
              id: ccof:uIbfJXhXETSP197M3GB
              last_4: "1111"
              prepaid_type: NOT_PREPAID
              reference_id: user-id-1
              version: 1
      properties:
        cards:
          description: The requested list of `Card`s.
          items:
            $ref: "#/components/schemas/Card"
          type: array
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If empty,
            this is the final response.

            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    ListCashDrawerShiftEventsRequest:
      description: ""
      example:
        request_body: {}
      properties:
        cursor:
          description: Opaque cursor for fetching the next page of results.
          type: string
        limit:
          description: |-
            Number of resources to be returned in a page of results (200 by
            default, 1000 max).
          maximum: 1000
          type: integer
        location_id:
          description: The ID of the location to list cash drawer shifts for.
          minLength: 1
          type: string
      required:
        - location_id
      type: object
      x-release-status: PUBLIC
    ListCashDrawerShiftEventsResponse:
      description: ""
      example:
        events:
          - created_at: 2019-11-22T00:43:02.000Z
            description: ""
            event_money:
              amount: 100
              currency: USD
            event_type: CASH_TENDER_PAYMENT
            id: 9F07DB01-D85A-4B77-88C3-D5C64CEB5155
          - created_at: 2019-11-22T00:43:12.000Z
            description: ""
            event_money:
              amount: 250
              currency: USD
            event_type: CASH_TENDER_PAYMENT
            id: B2854CEA-A781-49B3-8F31-C64558231F48
          - created_at: 2019-11-22T00:43:23.000Z
            description: ""
            event_money:
              amount: 250
              currency: USD
            event_type: CASH_TENDER_CANCELLED_PAYMENT
            id: B5FB7F72-95CD-44A3-974D-26C41064D042
          - created_at: 2019-11-22T00:43:46.000Z
            description: ""
            event_money:
              amount: 100
              currency: USD
            event_type: CASH_TENDER_REFUND
            id: 0B425480-8504-40B4-A867-37B23543931B
          - created_at: 2019-11-22T00:44:18.000Z
            description: Transfer from another drawer
            event_money:
              amount: 10000
              currency: USD
            event_type: PAID_IN
            id: 8C66E60E-FDCF-4EEF-A98D-3B14B7ED5CBE
          - created_at: 2019-11-22T00:44:29.000Z
            description: Transfer out to another drawer
            event_money:
              amount: 10000
              currency: USD
            event_type: PAID_OUT
            id: D5ACA7FE-C64D-4ADA-8BC8-82118A2DAE4F
      properties:
        cursor:
          description: |-
            Opaque cursor for fetching the next page. Cursor is not present in
            the last page of results.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        events:
          description: |-
            All of the events (payments, refunds, etc.) for a cash drawer during
            the shift.
          items:
            $ref: "#/components/schemas/CashDrawerShiftEvent"
          type: array
      type: object
      x-release-status: PUBLIC
    ListCashDrawerShiftsRequest:
      description: ""
      example:
        request_body: {}
      properties:
        begin_time:
          description: The inclusive start time of the query on opened_at, in ISO 8601 format.
          type: string
        cursor:
          description: Opaque cursor for fetching the next page of results.
          type: string
        end_time:
          description: The exclusive end date of the query on opened_at, in ISO 8601 format.
          type: string
        limit:
          description: |-
            Number of cash drawer shift events in a page of results (200 by
            default, 1000 max).
          maximum: 1000
          type: integer
        location_id:
          description: The ID of the location to query for a list of cash drawer shifts.
          minLength: 1
          type: string
        sort_order:
          description: |-
            The order in which cash drawer shifts are listed in the response,
            based on their opened_at field. Default value: ASC
          type: string
      required:
        - location_id
      type: object
      x-release-status: PUBLIC
    ListCashDrawerShiftsResponse:
      description: ""
      example:
        items:
          - closed_at: 2019-11-22T00:44:49.000Z
            closed_cash_money:
              amount: 9970
              currency: USD
            description: Misplaced some change
            ended_at: 2019-11-22T00:44:49.000Z
            expected_cash_money:
              amount: 10000
              currency: USD
            id: DCC99978-09A6-4926-849F-300BE9C5793A
            opened_at: 2019-11-22T00:42:54.000Z
            opened_cash_money:
              amount: 10000
              currency: USD
            state: CLOSED
      properties:
        cursor:
          description: |-
            Opaque cursor for fetching the next page of results. Cursor is not
            present in the last page of results.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        items:
          description: |-
            A collection of CashDrawerShiftSummary objects for shifts that match
            the query.
          items:
            $ref: "#/components/schemas/CashDrawerShiftSummary"
          type: array
      type: object
      x-release-status: PUBLIC
    ListCatalogRequest:
      description: ""
      example:
        request_params: ?types=category,tax
      properties:
        catalog_version:
          description: |-
            The specific version of the catalog objects to be included in the response. 
            This allows you to retrieve historical
            versions of objects. The specified version value is matched against
            the [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s' `version` attribute.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        cursor:
          description: |-
            The pagination cursor returned in the previous response. Leave unset for an initial request.
            The page size is currently set to be 100.
            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        types:
          description: |-
            An optional case-insensitive, comma-separated list of object types to retrieve.

            The valid values are defined in the [CatalogObjectType](https://developer.squareup.com/reference/square_2021-08-18/enums/CatalogObjectType) enum, including
            `ITEM`, `ITEM_VARIATION`, `CATEGORY`, `DISCOUNT`, `TAX`,
            `MODIFIER`, `MODIFIER_LIST`, or `IMAGE`.

            If this is unspecified, the operation returns objects of all the types at the version of the Square API used to make the request.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/ListCatalog/ListCatalogRequest.csharp
        java: /sdk_samples/Catalog/ListCatalog/ListCatalogRequest.java
        javascript: /sdk_samples/Catalog/ListCatalog/ListCatalogRequest.javascript
        php: /sdk_samples/Catalog/ListCatalog/ListCatalogRequest.php
        python: /sdk_samples/Catalog/ListCatalog/ListCatalogRequest.python
        ruby: /sdk_samples/Catalog/ListCatalog/ListCatalogRequest.ruby
    ListCatalogResponse:
      description: ""
      example:
        objects:
          - category_data:
              name: Beverages
            id: 5ZYQZZ2IECPVJ2IJ5KQPRDC3
            is_deleted: false
            present_at_all_locations: true
            type: CATEGORY
            updated_at: 2017-02-21T14:50:26.495Z
            version: 1487688626495
          - id: L5R47DGBZOOVKCAFIXC56AEN
            is_deleted: false
            present_at_all_locations: true
            tax_data:
              calculation_phase: TAX_SUBTOTAL_PHASE
              enabled: true
              inclusion_type: ADDITIVE
              name: Sales Tax
              percentage: "5.0"
            type: TAX
            updated_at: 2017-02-21T14:50:26.495Z
            version: 1487688626495
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If unset, this is the final response.
            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        objects:
          description: The CatalogObjects returned.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.csharp
        java: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.java
        javascript: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.javascript
        php: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.php
        python: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.python
        ruby: /sdk_samples/Catalog/ListCatalog/ListCatalogResponse.ruby
    ListCustomerGroupsRequest:
      description: |-
        Defines the query parameters that can be included in a request to the
        [ListCustomerGroups](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/list-customer-groups) endpoint.
      example:
        request_body: {}
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for your original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The maximum number of results to return in a single page. This limit is advisory. The response might contain more or fewer results. 
            The limit is ignored if it is less than 1 or greater than 50. The default value is 50.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          maximum: 50
          minimum: 1
          type: integer
      type: object
      x-release-status: PUBLIC
    ListCustomerGroupsResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [ListCustomerGroups](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/list-customer-groups) endpoint.

        Either `errors` or `groups` is present in a given response (never both).
      example:
        groups:
          - created_at: 2020-04-13T21:54:57.863Z
            id: 2TAT3CMH4Q0A9M87XJZED0WMR3
            name: Loyal Customers
            updated_at: 2020-04-13T21:54:58Z
          - created_at: 2020-04-13T21:55:18.795Z
            id: 4XMEHESXJBNE9S9JAKZD2FGB14
            name: Super Loyal Customers
            updated_at: 2020-04-13T21:55:19Z
      properties:
        cursor:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint. This value is present only if the request
            succeeded and additional results are available.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        groups:
          description: A list of customer groups belonging to the current seller.
          items:
            $ref: "#/components/schemas/CustomerGroup"
          type: array
      type: object
      x-release-status: PUBLIC
    ListCustomerSegmentsRequest:
      description: Defines the valid parameters for requests to the `ListCustomerSegments` endpoint.
      example:
        request_body: {}
      properties:
        cursor:
          description: |-
            A pagination cursor returned by previous calls to `ListCustomerSegments`.
            This cursor is used to retrieve the next set of query results.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The maximum number of results to return in a single page. This limit is advisory. The response might contain more or fewer results. 
            The limit is ignored if it is less than 1 or greater than 50. The default value is 50.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          maximum: 50
          minimum: 1
          type: integer
      type: object
      x-release-status: PUBLIC
    ListCustomerSegmentsResponse:
      description: |-
        Defines the fields that are included in the response body for requests to the `ListCustomerSegments` endpoint.

        Either `errors` or `segments` is present in a given response (never both).
      example:
        segments:
          - created_at: 2020-01-09T19:33:24.469Z
            id: GMNXRZVEXNQDF.CHURN_RISK
            name: Lapsed
            updated_at: 2020-04-13T21:47:04Z
          - created_at: 2020-01-09T19:33:24.486Z
            id: GMNXRZVEXNQDF.LOYAL
            name: Regulars
            updated_at: 2020-04-13T21:47:04Z
          - created_at: 2020-01-09T19:33:21.813Z
            id: GMNXRZVEXNQDF.REACHABLE
            name: Reachable
            updated_at: 2020-04-13T21:47:04Z
          - created_at: 2020-01-09T19:33:25Z
            id: gv2:KF92J19VXN5FK30GX2E8HSGQ20
            name: Instant Profile
            updated_at: 2020-04-13T23:01:03Z
      properties:
        cursor:
          description: |-
            A pagination cursor to be used in subsequent calls to `ListCustomerSegments`
            to retrieve the next set of query results. The cursor is only present if the request succeeded and
            additional results are available.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        segments:
          description: The list of customer segments belonging to the associated Square account.
          items:
            $ref: "#/components/schemas/CustomerSegment"
          type: array
      type: object
      x-release-status: PUBLIC
    ListCustomersRequest:
      description: |-
        Defines the query parameters that can be included in a request to the
        `ListCustomers` endpoint.
      example: {}
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for your original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The maximum number of results to return in a single page. This limit is advisory. The response might contain more or fewer results. 
            The limit is ignored if it is less than 1 or greater than 100. The default value is 100.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          maximum: 100
          minimum: 1
          type: integer
        sort_field:
          description: |-
            Indicates how customers should be sorted.

            The default value is `DEFAULT`.
          type: string
        sort_order:
          description: |-
            Indicates whether customers should be sorted in ascending (`ASC`) or
            descending (`DESC`) order.

            The default value is `ASC`.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListCustomers/ListCustomersRequest.csharp
        java: /sdk_samples/ListCustomers/ListCustomersRequest.java
        javascript: /sdk_samples/ListCustomers/ListCustomersRequest.javascript
        php: /sdk_samples/ListCustomers/ListCustomersRequest.php
        python: /sdk_samples/ListCustomers/ListCustomersRequest.python
        ruby: /sdk_samples/ListCustomers/ListCustomersRequest.ruby
    ListCustomersResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `ListCustomers` endpoint.

        Either `errors` or `customers` is present in a given response (never both).
      example:
        customers:
          - address:
              address_line_1: 500 Electric Ave
              address_line_2: Suite 600
              administrative_district_level_1: NY
              country: US
              locality: New York
              postal_code: "10003"
            created_at: 2016-03-23T20:21:54.859Z
            creation_source: THIRD_PARTY
            email_address: Amelia.Earhart@example.com
            family_name: Earhart
            given_name: Amelia
            group_ids:
              - 545AXB44B4XXWMVQ4W8SBT3HHF
            id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            note: a customer
            phone_number: 1-212-555-4240
            preferences:
              email_unsubscribed: false
            reference_id: YOUR_REFERENCE_ID
            segment_ids:
              - 1KB9JE5EGJXCW.REACHABLE
            updated_at: 2016-03-23T20:21:55Z
            version: 1
      properties:
        cursor:
          description: |-
            A pagination cursor to retrieve the next set of results for the
            original query. A cursor is only present if the request succeeded and additional results
            are available.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        customers:
          description: An array of `Customer` objects that match the provided query.
          items:
            $ref: "#/components/schemas/Customer"
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListCustomers/ListCustomersResponse.csharp
        java: /sdk_samples/ListCustomers/ListCustomersResponse.java
        javascript: /sdk_samples/ListCustomers/ListCustomersResponse.javascript
        php: /sdk_samples/ListCustomers/ListCustomersResponse.php
        python: /sdk_samples/ListCustomers/ListCustomersResponse.python
        ruby: /sdk_samples/ListCustomers/ListCustomersResponse.ruby
    ListDeviceCodesRequest:
      description: ""
      example:
        request_body: {}
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          type: string
        location_id:
          description: |-
            If specified, only returns DeviceCodes of the specified location.
            Returns DeviceCodes of all locations if empty.
          type: string
        product_type:
          description: |-
            If specified, only returns DeviceCodes targeting the specified product type.
            Returns DeviceCodes of all product types if empty.
          type: string
        status:
          description: |-
            If specified, returns DeviceCodes with the specified statuses.
            Returns DeviceCodes of status `PAIRED` and `UNPAIRED` if empty.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    ListDeviceCodesResponse:
      description: ""
      example:
        device_codes:
          - code: EBCARJ
            created_at: 2020-02-06T18:44:33.000Z
            device_id: 907CS13101300122
            id: B3Z6NAMYQSMTM
            location_id: B5E4484SHHNYH
            name: Counter 1
            pair_by: 2020-02-06T18:49:33.000Z
            product_type: TERMINAL_API
            status: PAIRED
            status_changed_at: 2020-02-06T18:47:28.000Z
          - code: GVXNYN
            created_at: 2020-02-07T19:55:04.000Z
            id: YKGMJMYK8H4PQ
            location_id: A6SYFRSV4WAFW
            name: Unused device code
            pair_by: 2020-02-07T20:00:04.000Z
            product_type: TERMINAL_API
            status: UNPAIRED
            status_changed_at: 2020-02-07T19:55:04.000Z
      properties:
        cursor:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint. This value is present only if the request
            succeeded and additional results are available.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          type: string
        device_codes:
          description: The queried DeviceCode.
          items:
            $ref: "#/components/schemas/DeviceCode"
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    ListDisputeEvidenceRequest:
      description: Defines the parameters for a `ListDisputeEvidence` request.
      example:
        request_body: {}
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
      type: object
      x-release-status: PUBLIC
    ListDisputeEvidenceResponse:
      description: Defines the fields in a `ListDisputeEvidence` response.
      example:
        cursor: G1aSTRm48CLjJsg6Sg3hQN1b1OMaoVuG
        evidence:
          - dispute_id: bVTprrwk0gygTLZ96VX1oB
            evidence_text: 1Z8888888888888888
            evidence_type: TRACKING_NUMBER
            id: TOomLInj6iWmP3N8qfCXrB
            uploaded_at: 2018-10-18T16:01:10.000Z
          - dispute_id: bVTprrwk0gygTLZ96VX1oB
            evidence_file:
              filename: evidence.tiff
              filetype: image/tiff
            evidence_id: TOomLInj6iWmP3N8qfCXrB
            evidence_type: GENERIC_EVIDENCE
            uploaded_at: 2018-10-18T16:01:10.000Z
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request.
            If unset, this is the final response. For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        evidence:
          description: The list of evidence previously uploaded to the specified dispute.
          items:
            $ref: "#/components/schemas/DisputeEvidence"
          type: array
      type: object
      x-release-status: PUBLIC
    ListDisputesRequest:
      description: Defines the request parameters for the `ListDisputes` endpoint.
      example:
        request_body: {}
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        location_id:
          description: |-
            The ID of the location for which to return a list of disputes. If not specified, the endpoint returns
            all open disputes (the dispute status is not `INQUIRY_CLOSED`, `WON`, or `LOST`) associated with all locations.
          maxLength: 40
          minLength: 1
          type: string
        states:
          description: |-
            The dispute states to filter the result.
            If not specified, the endpoint returns all open disputes (the dispute status is not `INQUIRY_CLOSED`, `WON`,
            or `LOST`).
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    ListDisputesResponse:
      description: Defines fields in a `ListDisputes` response.
      example:
        cursor: G1aSTRm48CLjJsg6Sg3hQN1b1OMaoVuG
        disputes:
          - amount_money:
              amount: 1000
              currency: USD
            brand_dispute_id: "100000809947"
            card_brand: VISA
            created_at: 2018-10-12T02:20:25.577Z
            disputed_payments:
              - payment_id: APgIq6RX2jM6DKDhMHiC6QEkuaB
            due_at: 2018-10-11T00:00:00.000Z
            id: OnY1AZwhSi775rbNIK4gv
            reason: NO_KNOWLEDGE
            state: EVIDENCE_REQUIRED
            updated_at: 2018-10-12T02:20:25.577Z
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request.
            If unset, this is the final response. For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        disputes:
          description: The list of disputes.
          items:
            $ref: "#/components/schemas/Dispute"
          type: array
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    ListEmployeeWagesRequest:
      description: A request for a set of `EmployeeWage` objects.
      example:
        request_params: ?employee_id=33fJchumvVdJwxV0H6L9&limit=4&cursor=s4R0Z6ecFTzTC4jz8sUDBQTudX3KE313OT9fCt3VUgsXM4sMgED
      properties:
        cursor:
          description: A pointer to the next page of `EmployeeWage` results to fetch.
          type: string
        employee_id:
          description: Filter the returned wages to only those that are associated with the specified employee.
          type: string
        limit:
          description: |-
            The maximum number of `EmployeeWage` results to return per page. The number can range between
            1 and 200. The default is 200.
          maximum: 200
          minimum: 1
          type: integer
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    ListEmployeeWagesResponse:
      description: |-
        The response to a request for a set of `EmployeeWage` objects. The response contains
        a set of `EmployeeWage` objects.
      example:
        cursor: 2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED
        employee_wages:
          - employee_id: 33fJchumvVdJwxV0H6L9
            hourly_rate:
              amount: 3250
              currency: USD
            id: pXS3qCv7BERPnEGedM4S8mhm
            title: Manager
          - employee_id: 33fJchumvVdJwxV0H6L9
            hourly_rate:
              amount: 2600
              currency: USD
            id: rZduCkzYDUVL3ovh1sQgbue6
            title: Cook
          - employee_id: 33fJchumvVdJwxV0H6L9
            hourly_rate:
              amount: 1600
              currency: USD
            id: FxLbs5KpPUHa8wyt5ctjubDX
            title: Barista
          - employee_id: 33fJchumvVdJwxV0H6L9
            hourly_rate:
              amount: 1700
              currency: USD
            id: vD1wCgijMDR3cX5TPnu7VXto
            title: Cashier
      properties:
        cursor:
          description: |-
            The value supplied in the subsequent request to fetch the next page
            of `EmployeeWage` results.
          type: string
        employee_wages:
          description: A page of `EmployeeWage` results.
          items:
            $ref: "#/components/schemas/EmployeeWage"
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    ListEmployeesRequest:
      description: ""
      properties:
        cursor:
          description: The token required to retrieve the specified page of results.
          type: string
        limit:
          description: The number of employees to be returned on each page.
          type: integer
        location_id:
          description: ""
          type: string
        status:
          description: Specifies the EmployeeStatus to filter the employee by.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    ListEmployeesResponse:
      description: ""
      properties:
        cursor:
          description: The token to be used to retrieve the next page of results.
          type: string
        employees:
          description: ""
          items:
            $ref: "#/components/schemas/Employee"
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    ListGiftCardActivitiesRequest:
      description: |-
        Returns a list of gift card activities. You can optionally specify a filter to retrieve a
        subset of activites.
      example:
        request_body: {}
      properties:
        begin_time:
          description: |-
            The timestamp for the beginning of the reporting period, in RFC 3339 format.
            Inclusive. Default: The current time minus one year.
          type: string
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            If you do not provide the cursor, the call returns the first page of the results.
          type: string
        end_time:
          description: |-
            The timestamp for the end of the reporting period, in RFC 3339 format.
            Inclusive. Default: The current time.
          type: string
        gift_card_id:
          description: |-
            If you provide a gift card ID, the endpoint returns activities that belong 
            to the specified gift card. Otherwise, the endpoint returns all gift card activities for 
            the seller.
          maxLength: 50
          type: string
        limit:
          description: |-
            If you provide a limit value, the endpoint returns the specified number 
            of results (or less) per page. A maximum value is 100. The default value is 50.
          maximum: 100
          minimum: 1
          type: integer
        location_id:
          description: |-
            If you provide a location ID, the endpoint returns gift card activities for that location. 
            Otherwise, the endpoint returns gift card activities for all locations.
          type: string
        sort_order:
          description: |-
            The order in which the endpoint returns the activities, based on `created_at`.
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          type: string
        type:
          description: |-
            If you provide a type, the endpoint returns gift card activities of this type. 
            Otherwise, the endpoint returns all types of gift card activities.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    ListGiftCardActivitiesResponse:
      description: |-
        A response that contains one or more `GiftCardActivity`. The response might contain a set of `Error` objects
        if the request resulted in errors.
      example:
        gift_card_activities:
          - created_at: 2021-06-02T22:26:38.000Z
            gift_card_balance_money:
              amount: 700
              currency: USD
            gift_card_gan: "7783320002929081"
            gift_card_id: gftc:6d55a72470d940c6ba09c0ab8ad08d20
            id: gcact_897698f894b44b3db46c6147e26a0e19
            location_id: 81FN9BNFZTKS4
            redeem_activity_details:
              amount_money:
                amount: 300
                currency: USD
            type: REDEEM
          - activate_activity_details:
              amount_money:
                amount: 1000
                currency: USD
              line_item_uid: eIWl7X0nMuO9Ewbh0ChIx
              order_id: jJNGHm4gLI6XkFbwtiSLqK72KkAZY
            created_at: 2021-05-20T22:26:54.000Z
            gift_card_balance_money:
              amount: 1000
              currency: USD
            gift_card_gan: "7783320002929081"
            gift_card_id: gftc:6d55a72470d940c6ba09c0ab8ad08d20
            id: gcact_b968ebfc7d46437b945be7b9e09123b4
            location_id: 81FN9BNFZTKS4
            type: ACTIVATE
      properties:
        cursor:
          description: |-
            When a response is truncated, it includes a cursor that you can use in a
            subsequent request to fetch the next set of activities. If empty, this is
            the final response.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card_activities:
          description: Gift card activities retrieved.
          items:
            $ref: "#/components/schemas/GiftCardActivity"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    ListGiftCardsRequest:
      description: |-
        A request to list gift cards. You can optionally specify a filter to retrieve a subset of 
        gift cards.
      example:
        request_params: ?type=DIGITAL&state=ACTIVE&cursor=Jj0rA9-rrDW5k-PsorOq-m4BiGf
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            If a cursor is not provided, it returns the first page of the results. 
            For more information, see [Pagination](https://developer.squareup.com/docs/docs/working-with-apis/pagination).
          type: string
        customer_id:
          description: If a value is provided, returns only the gift cards linked to the specified customer
          maxLength: 191
          type: string
        limit:
          description: |-
            If a value is provided, it returns only that number of results per page.
            The maximum number of results allowed per page is 50. The default value is 30.
          maximum: 50
          minimum: 1
          type: integer
        state:
          description: |-
            If the state is provided, it returns the gift cards in the specified state 
            (see [GiftCardStatus](https://developer.squareup.com/reference/square_2021-08-18/enums/GiftCardStatus)).
            Otherwise, it returns the gift cards of all states.
          type: string
        type:
          description: |-
            If a type is provided, gift cards of this type are returned 
            (see [GiftCardType](https://developer.squareup.com/reference/square_2021-08-18/enums/GiftCardType)).
            If no type is provided, it returns gift cards of all types.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    ListGiftCardsResponse:
      description: |-
        A response that contains one or more `GiftCard`. The response might contain a set of `Error`
        objects if the request resulted in errors.
      example:
        cursor: JbFmyvUpaNKsfC1hoLSA4WlqkgkZXTWeKuStajR5BkP7OE0ETAbeWSi6U6u7sH
        gift_cards:
          - balance_money:
              amount: 3900
              currency: USD
            created_at: 2021-06-09T22:26:54.000Z
            gan: "7783320008524605"
            gan_source: SQUARE
            id: gftc:00113070ba5745f0b2377c1b9570cb03
            state: ACTIVE
            type: DIGITAL
          - balance_money:
              amount: 2000
              currency: USD
            created_at: 2021-05-20T22:26:54.000Z
            gan: "7783320002692465"
            gan_source: SQUARE
            id: gftc:00128a12725b41e58e0de1d20497a9dd
            state: ACTIVE
            type: DIGITAL
      properties:
        cursor:
          description: |-
            When a response is truncated, it includes a cursor that you can use in a
            subsequent request to fetch the next set of gift cards. If empty, this is
            the final response.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_cards:
          description: Gift cards retrieved.
          items:
            $ref: "#/components/schemas/GiftCard"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    ListInvoicesRequest:
      description: Describes a `ListInvoice` request.
      example:
        request_params: ?location_id=ES0RJRZYEC39A
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint. 
            Provide this cursor to retrieve the next set of results for your original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The maximum number of invoices to return (200 is the maximum `limit`). 
            If not provided, the server uses a default limit of 100 invoices.
          type: integer
        location_id:
          description: The ID of the location for which to list invoices.
          maxLength: 255
          minLength: 1
          type: string
      required:
        - location_id
      type: object
      x-release-status: PUBLIC
    ListInvoicesResponse:
      description: Describes a `ListInvoice` response.
      example:
        cursor: ChoIDhIWVm54ZVRhLXhySFBOejBBM2xJb2daUQoFCI4IGAE
        invoices:
          - accepted_payment_methods:
              bank_account: false
              card: true
              square_gift_card: false
            created_at: 2020-06-18T17:45:13Z
            custom_fields:
              - label: Event Reference Number
                placement: ABOVE_LINE_ITEMS
                value: "Ref. #1234"
              - label: Terms of Service
                placement: BELOW_LINE_ITEMS
                value: The terms of service are...
            delivery_method: EMAIL
            description: We appreciate your business!
            id: inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
            invoice_number: inv-100
            location_id: ES0RJRZYEC39A
            order_id: CAISENgvlJ6jLWAzERDzjyHVybY
            payment_requests:
              - automatic_payment_source: NONE
                computed_amount_money:
                  amount: 10000
                  currency: USD
                due_date: 2030-01-24
                reminders:
                  - message: Your invoice is due tomorrow
                    relative_scheduled_days: -1
                    status: PENDING
                    uid: beebd363-e47f-4075-8785-c235aaa7df11
                request_type: BALANCE
                tipping_enabled: true
                total_completed_amount_money:
                  amount: 0
                  currency: USD
                uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
            primary_recipient:
              customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
              email_address: Amelia.Earhart@example.com
              family_name: Earhart
              given_name: Amelia
              phone_number: 1-212-555-4240
            scheduled_at: 2030-01-13T10:00:00Z
            status: DRAFT
            timezone: America/Los_Angeles
            title: Event Planning Services
            updated_at: 2020-06-18T17:45:13Z
            version: 0
          - accepted_payment_methods:
              bank_account: false
              card: true
              square_gift_card: true
            created_at: 2021-01-23T15:29:12Z
            delivery_method: EMAIL
            id: inv:0-ChC366qAfskpGrBI_1bozs9mEA3
            invoice_number: inv-455
            location_id: ES0RJRZYEC39A
            next_payment_amount_money:
              amount: 3000
              currency: USD
            order_id: a65jnS8NXbfprvGJzY9F4fQTuaB
            payment_requests:
              - automatic_payment_source: CARD_ON_FILE
                card_id: ccof:IkWfpLj4tNHMyFii3GB
                computed_amount_money:
                  amount: 1000
                  currency: USD
                due_date: 2021-01-23
                percentage_requested: "25"
                request_type: DEPOSIT
                tipping_enabled: false
                total_completed_amount_money:
                  amount: 1000
                  currency: USD
                uid: 66c3bdfd-5090-4ff9-a8a0-c1e1a2ffa176
              - automatic_payment_source: CARD_ON_FILE
                card_id: ccof:IkWfpLj4tNHMyFii3GB
                computed_amount_money:
                  amount: 3000
                  currency: USD
                due_date: 2021-06-15
                request_type: BALANCE
                tipping_enabled: false
                total_completed_amount_money:
                  amount: 0
                  currency: USD
                uid: 120c5e18-4f80-4f6b-b159-774cb9bf8f99
            primary_recipient:
              customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
              email_address: Amelia.Earhart@example.com
              family_name: Earhart
              given_name: Amelia
              phone_number: 1-212-555-4240
            public_url: https://squareup.com/pay-invoice/h9sfsfTGTSnYEhISUDBhEQ
            status: PARTIALLY_PAID
            timezone: America/Los_Angeles
            updated_at: 2021-01-23T15:29:56Z
            version: 3
      properties:
        cursor:
          description: |-
            When a response is truncated, it includes a cursor that you can use in a 
            subsequent request to retrieve the next set of invoices. If empty, this is the final 
            response. 
            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        invoices:
          description: The invoices retrieved.
          items:
            $ref: "#/components/schemas/Invoice"
          type: array
      type: object
      x-release-status: PUBLIC
    ListLocationsRequest:
      description: |-
        Defines the fields that are included in requests to
        the __ListLocations__ endpoint.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListLocations/ListLocationsRequest.csharp
        java: /sdk_samples/ListLocations/ListLocationsRequest.java
        javascript: /sdk_samples/ListLocations/ListLocationsRequest.javascript
        php: /sdk_samples/ListLocations/ListLocationsRequest.php
        python: /sdk_samples/ListLocations/ListLocationsRequest.python
        ruby: /sdk_samples/ListLocations/ListLocationsRequest.ruby
    ListLocationsResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the __ListLocations__ endpoint.

        One of `errors` or `locations` is present in a given response (never both).
      example:
        locations:
          - address:
              address_line_1: 123 Main St
              administrative_district_level_1: CA
              country: US
              locality: San Francisco
              postal_code: "94114"
            business_name: Pumbaa's business name
            capabilities:
              - CREDIT_CARD_PROCESSING
            country: US
            created_at: 2016-09-19T17:33:12Z
            currency: USD
            id: 18YC4JDH91E1H
            language_code: en-US
            merchant_id: 3MYCJG5GVYQ8Q
            name: your location name
            phone_number: +1 650-354-7217
            status: ACTIVE
            timezone: America/Los_Angeles
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        locations:
          description: The business locations.
          items:
            $ref: "#/components/schemas/Location"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListLocations/ListLocationsResponse.csharp
        java: /sdk_samples/ListLocations/ListLocationsResponse.java
        javascript: /sdk_samples/ListLocations/ListLocationsResponse.javascript
        php: /sdk_samples/ListLocations/ListLocationsResponse.php
        python: /sdk_samples/ListLocations/ListLocationsResponse.python
        ruby: /sdk_samples/ListLocations/ListLocationsResponse.ruby
    ListLoyaltyProgramsRequest:
      description: A request to list `LoyaltyProgram`.
      example:
        request_body: {}
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    ListLoyaltyProgramsResponse:
      description: A response that contains all loyalty programs.
      example:
        programs:
          - accrual_rules:
              - accrual_type: SPEND
                excluded_category_ids:
                  - 7ZERJKO5PVYXCVUHV2JCZ2UG
                  - FQKAOJE5C4FIMF5A2URMLW6V
                excluded_item_variation_ids:
                  - CBZXBUVVTYUBZGQO44RHMR6B
                  - EDILT24Z2NISEXDKGY6HP7XV
                points: 1
                spend_amount_money:
                  amount: 100
            created_at: 2020-04-20T16:55:11Z
            id: d619f755-2d17-41f3-990d-c04ecedd64dd
            location_ids:
              - P034NEENMD09F
            reward_tiers:
              - created_at: 2020-04-20T16:55:11Z
                definition:
                  discount_type: FIXED_PERCENTAGE
                  percentage_discount: "10"
                  scope: ORDER
                id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
                name: 10% off entire sale
                points: 10
                pricing_rule_reference:
                  catalog_version: "1605486402527"
                  object_id: 74C4JSHESNLTB2A7ITO5HO6F
            status: ACTIVE
            terminology:
              one: Point
              other: Points
            updated_at: 2020-05-01T02:00:02Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        programs:
          description: A list of `LoyaltyProgram` for the merchant.
          items:
            $ref: "#/components/schemas/LoyaltyProgram"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    ListMerchantsRequest:
      description: Request object for the [ListMerchant](https://developer.squareup.com/reference/square_2021-08-18/merchants-api/list-merchants) endpoint.
      properties:
        cursor:
          description: The cursor generated by the previous response.
          type: integer
      type: object
      x-release-status: PUBLIC
    ListMerchantsResponse:
      description: The response object returned by the [ListMerchant](https://developer.squareup.com/reference/square_2021-08-18/merchants-api/list-merchants) endpoint.
      example:
        merchant:
          - business_name: Apple A Day
            country: US
            currency: USD
            id: DM7VKY8Q63GNP
            language_code: en-US
            main_location_id: 9A65CGC72ZQG1
            status: ACTIVE
      properties:
        cursor:
          description: If the  response is truncated, the cursor to use in next  request to fetch next set of objects.
          type: integer
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        merchant:
          description: The requested `Merchant` entities.
          items:
            $ref: "#/components/schemas/Merchant"
          type: array
      type: object
      x-release-status: PUBLIC
    ListPaymentRefundsRequest:
      description: |-
        Describes a request to list refunds using 
        [ListPaymentRefunds](https://developer.squareup.com/reference/square_2021-08-18/refunds-api/list-payment-refunds).

        The maximum results per page is 100.
      example:
        request_body: {}
      properties:
        begin_time:
          description: |-
            The timestamp for the beginning of the requested reporting period, in RFC 3339 format.

            Default: The current time minus one year.
          type: string
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        end_time:
          description: |-
            The timestamp for the end of the requested reporting period, in RFC 3339 format.

            Default: The current time.
          type: string
        limit:
          description: |-
            The maximum number of results to be returned in a single page.

            It is possible to receive fewer results than the specified limit on a given page.

            If the supplied value is greater than 100, no more than 100 results are returned.

            Default: 100
          type: integer
        location_id:
          description: |-
            Limit results to the location supplied. By default, results are returned
            for all locations associated with the seller.
          type: string
        sort_order:
          description: |-
            The order in which results are listed:
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          type: string
        source_type:
          description: |-
            If provided, only refunds with the given source type are returned.
            - `CARD` - List refunds only for payments where `CARD` was specified as the payment
            source.

            Default: If omitted, refunds are returned regardless of the source type.
          type: string
        status:
          description: |-
            If provided, only refunds with the given status are returned.
            For a list of refund status values, see [PaymentRefund](https://developer.squareup.com/reference/square_2021-08-18/objects/PaymentRefund).

            Default: If omitted, refunds are returned regardless of their status.
          type: string
      type: object
      x-release-status: PUBLIC
    ListPaymentRefundsResponse:
      description: |-
        Defines the response returned by [ListPaymentRefunds](https://developer.squareup.com/reference/square_2021-08-18/refunds-api/list-payment-refunds).

        Either `errors` or `refunds` is present in a given response (never both).
      example:
        cursor: 5evquW1YswHoT4EoyUhzMmTsCnsSXBU9U0WJ4FU4623nrMQcocH0RGU6Up1YkwfiMcF59ood58EBTEGgzMTGHQJpocic7ExOL0NtrTXCeWcv0UJIJNk8eXb
        refunds:
          - amount_money:
              amount: 1000
              currency: USD
            created_at: 2019-07-06T18:01:22.335Z
            id: O2QAAhTYs7rUfzlxT38GMO7LvaB_q7JwCHtxmgXrh8fAhV468WQ44VxDtL7CU4yVRlsbXmI
            location_id: XK3DBG77NJBFX
            order_id: 2duiyoqbfeXY0DBi15GEyk5Epa4F
            payment_id: O2QAAhTYs7rUfzlxT38GMO7LvaB
            processing_fee:
              - amount_money:
                  amount: -59
                  currency: USD
                effective_at: 2019-07-06T20:01:12.000Z
                type: INITIAL
            status: COMPLETED
            updated_at: 2019-07-06T18:06:04.653Z
          - amount_money:
              amount: 1000
              currency: USD
            created_at: 2019-07-06T17:01:54.232Z
            id: 8TDIQvFw8PeDIxhSfd5yyX7GuaB_13px5Vrz01qzzuoGzmjsZIxDjfHhbkm2XppBUX1dW7I
            location_id: XK3DBG77NJBFX
            order_id: w6EXfEwS03oTQsnZTCqfE6f67e4F
            payment_id: 8TDIQvFw8PeDIxhSfd5yyX7GuaB
            processing_fee:
              - amount_money:
                  amount: -59
                  currency: USD
                effective_at: 2019-07-06T19:01:45.000Z
                type: INITIAL
            status: COMPLETED
            updated_at: 2019-07-06T17:21:04.684Z
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If empty,
            this is the final response.

            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refunds:
          description: The list of requested refunds.
          items:
            $ref: "#/components/schemas/PaymentRefund"
          type: array
      type: object
      x-release-status: PUBLIC
    ListPaymentsRequest:
      description: |-
        Describes a request to list payments using 
        [ListPayments](https://developer.squareup.com/reference/square_2021-08-18/payments-api/list-payments).

        The maximum results per page is 100.
      example:
        request_body: {}
      properties:
        begin_time:
          description: |-
            The timestamp for the beginning of the reporting period, in RFC 3339 format.
            Inclusive. Default: The current time minus one year.
          type: string
        card_brand:
          description: The brand of the payment card (for example, VISA).
          type: string
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        end_time:
          description: |-
            The timestamp for the end of the reporting period, in RFC 3339 format.

            Default: The current time.
          type: string
        last_4:
          description: The last four digits of a payment card.
          type: string
        limit:
          description: |-
            The maximum number of results to be returned in a single page.
            It is possible to receive fewer results than the specified limit on a given page.

            The default value of 100 is also the maximum allowed value. If the provided value is 
            greater than 100, it is ignored and the default value is used instead.

            Default: `100`
          type: integer
        location_id:
          description: |-
            Limit results to the location supplied. By default, results are returned
            for the default (main) location associated with the seller.
          type: string
        sort_order:
          description: |-
            The order in which results are listed:
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          type: string
        total:
          description: The exact amount in the `total_money` for a payment.
          format: int64
          minimum: 0
          type: integer
      type: object
      x-release-status: PUBLIC
    ListPaymentsResponse:
      description: Defines the response returned by [ListPayments](https://developer.squareup.com/reference/square_2021-08-18/payments-api/list-payments).
      example:
        cursor: 2TTnuq0yRYDdBRSFF2XuFkgO1Bclt4ZHNI7YrFNeyZ6rL1WZXkdnLn10H8fBIwFKdKW1Af6ifRa
        payments:
          - amount_money:
              amount: 1000
              currency: USD
            approved_money:
              amount: 1000
              currency: USD
            capabilities:
              - EDIT_AMOUNT_UP
              - EDIT_AMOUNT_DOWN
              - EDIT_TIP_AMOUNT_UP
              - EDIT_TIP_AMOUNT_DOWN
            card_details:
              auth_result_code: NQbV3A
              avs_status: AVS_ACCEPTED
              card:
                card_brand: VISA
                exp_month: 2
                exp_year: 2022
                fingerprint: sq-1-lHpUJIUyqOPQmH89b6GuQEljmc-mZmu4kSTaMlkLDkJI7NVjAl4Zirn2sk3OeyVKVA
                last_4: "1111"
              card_payment_timeline:
                authorized_at: 2019-07-09T14:36:13.798Z
              cvv_status: CVV_ACCEPTED
              entry_method: KEYED
              status: AUTHORIZED
            created_at: 2019-07-09T14:36:13.745Z
            id: ifrBnAil7rRfDtd27cdf9g9WO8paB
            location_id: QLIJX16Q3UZ0A
            order_id: MvfIilKnIYKBium4rauH67wFzRxv
            source_type: CARD
            status: APPROVED
            total_money:
              amount: 1000
              currency: USD
            updated_at: 2019-07-09T14:36:13.883Z
            version_token: v6orqdHcW2TwuzCQRdF6a4ktbG8T8nbDcBx8eyrkoZl6o
          - amount_money:
              amount: 1000
              currency: USD
            approved_money:
              amount: 1000
              currency: USD
            card_details:
              auth_result_code: vPIr0K
              avs_status: AVS_ACCEPTED
              card:
                card_brand: VISA
                exp_month: 7
                exp_year: 2026
                fingerprint: sq-1-TpmjbNBMFdibiIjpQI5LiRgNUBC7u1689i0TgHjnlyHEWYB7tnn-K4QbW4ttvtaqXw
                last_4: "2796"
              card_payment_timeline:
                authorized_at: 2019-07-08T01:00:51.617Z
                captured_at: 2019-07-08T01:13:58.508Z
              cvv_status: CVV_ACCEPTED
              entry_method: ON_FILE
              status: CAPTURED
            created_at: 2019-07-08T01:00:51.607Z
            customer_id: RDX9Z4XTIZR7MRZJUXNY9HUK6I
            id: GQTFp1ZlXdpoW4o6eGiZhbjosiDFf
            location_id: XTI0H92143A39
            order_id: m2Hr8Hk8A3CTyQQ1k4ynExg92tO3
            processing_fee:
              - amount_money:
                  amount: 59
                  currency: USD
                effective_at: 2019-07-08T03:00:53.000Z
                type: INITIAL
            source_type: CARD
            status: COMPLETED
            total_money:
              amount: 1000
              currency: USD
            updated_at: 2019-07-08T01:13:58.508Z
            version_token: pE0wanQBErcnO4ubL49pHCV1yAs4BUScWXb8fVvkRqa6o
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If empty,
            this is the final response.

            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        payments:
          description: The requested list of payments.
          items:
            $ref: "#/components/schemas/Payment"
          type: array
      type: object
      x-release-status: PUBLIC
    ListRefundsRequest:
      description: |-
        Defines the query parameters that can be included in
        a request to the [ListRefunds](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/list-refunds) endpoint.

        Deprecated - recommend using [SearchOrders](https://developer.squareup.com/reference/square_2021-08-18/orders-api/search-orders)
      example:
        request_params: ?begin_time=2016-01-15T00:00:00Z&end_time=2016-01-31T00:00:00Z
      properties:
        begin_time:
          description: |-
            The beginning of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time minus one year.
          type: string
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          type: string
        end_time:
          description: |-
            The end of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time.
          type: string
        sort_order:
          description: |-
            The order in which results are listed in the response (`ASC` for
            oldest first, `DESC` for newest first).

            Default value: `DESC`
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListRefunds/ListRefundsRequest.csharp
        java: /sdk_samples/ListRefunds/ListRefundsRequest.java
        javascript: /sdk_samples/ListRefunds/ListRefundsRequest.javascript
        php: /sdk_samples/ListRefunds/ListRefundsRequest.php
        python: /sdk_samples/ListRefunds/ListRefundsRequest.python
        ruby: /sdk_samples/ListRefunds/ListRefundsRequest.ruby
    ListRefundsResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [ListRefunds](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/list-refunds) endpoint.

        One of `errors` or `refunds` is present in a given response (never both).
      example:
        refunds:
          - additional_recipients:
              - amount_money:
                  amount: 10
                  currency: USD
                description: Application fees
                location_id: 057P5VYJ4A5X1
            amount_money:
              amount: 100
              currency: USD
            created_at: 2016-01-20T00:28:18Z
            id: b27436d1-7f8e-5610-45c6-417ef71434b4-SW
            location_id: 18YC4JDH91E1H
            reason: some reason
            status: APPROVED
            tender_id: MtZRYYdDrYNQbOvV7nbuBvMF
            transaction_id: KnL67ZIwXCPtzOrqj0HrkxMF
      properties:
        cursor:
          description: |-
            A pagination cursor for retrieving the next set of results,
            if any remain. Provide this value as the `cursor` parameter in a subsequent
            request to this endpoint.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refunds:
          description: An array of refunds that match your query.
          items:
            $ref: "#/components/schemas/Refund"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListRefunds/ListRefundsResponse.csharp
        java: /sdk_samples/ListRefunds/ListRefundsResponse.java
        javascript: /sdk_samples/ListRefunds/ListRefundsResponse.javascript
        php: /sdk_samples/ListRefunds/ListRefundsResponse.php
        python: /sdk_samples/ListRefunds/ListRefundsResponse.python
        ruby: /sdk_samples/ListRefunds/ListRefundsResponse.ruby
    ListSitesRequest:
      description: Represents a `ListSites` request.
      properties: {}
      type: object
      x-release-status: PUBLIC
    ListSitesResponse:
      description: Represents a `ListSites` response. The response can include either `sites` or `errors`.
      example:
        sites:
          - created_at: 2020-02-28T13:22:51Z
            domain: mysite1.square.site
            id: site_278075276488921835
            is_published: true
            site_title: My First Site
            updated_at: 2021-01-13T09:58:32Z
          - created_at: 2020-06-18T17:45:13Z
            domain: mysite2.square.site
            id: site_102725345836253849
            is_published: true
            site_title: My Second Site
            updated_at: 2020-11-23T02:19:10Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        sites:
          description: The sites that belong to the seller.
          items:
            $ref: "#/components/schemas/Site"
          type: array
      type: object
      x-release-status: PUBLIC
    ListSubscriptionEventsRequest:
      description: |-
        Defines parameters in a
        [ListSubscriptionEvents](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/list-subscription-events)
        endpoint request.
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The upper limit on the number of subscription events to return
            in the response.

            Default: `200`
          minimum: 1
          type: integer
      type: object
      x-release-status: PUBLIC
    ListSubscriptionEventsResponse:
      description: |-
        Defines the fields that are included in the response from the
        [ListSubscriptionEvents](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/list-subscription-events)
        endpoint.
      example:
        subscription_events:
          - effective_date: 2020-04-24
            id: 06809161-3867-4598-8269-8aea5be4f9de
            plan_id: 6JHXF3B2CW3YKHDV4XEM674H
            subscription_event_type: START_SUBSCRIPTION
          - effective_date: 2020-05-06
            id: a0c08083-5db0-4800-85c7-d398de4fbb6e
            plan_id: 6JHXF3B2CW3YKHDV4XEM674H
            subscription_event_type: STOP_SUBSCRIPTION
      properties:
        cursor:
          description: |-
            When a response is truncated, it includes a cursor that you can
            use in a subsequent request to fetch the next set of events.
            If empty, this is the final response.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        subscription_events:
          description: The `SubscriptionEvents` retrieved.
          items:
            $ref: "#/components/schemas/SubscriptionEvent"
          type: array
      type: object
      x-release-status: PUBLIC
    ListTeamMemberBookingProfilesRequest:
      description: ""
      properties:
        bookable_only:
          description: Indicates whether to include only bookable team members in the returned result (`true`) or not (`false`).
          type: boolean
        cursor:
          description: The cursor for paginating through the results.
          type: string
        limit:
          description: The maximum number of results to return.
          type: integer
        location_id:
          description: Indicates whether to include only team members enabled at the given location in the returned result.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    ListTeamMemberBookingProfilesResponse:
      description: ""
      example:
        errors: []
        team_member_booking_profiles:
          - display_name: Sandbox Seller
            is_bookable: true
            team_member_id: TMXUrsBWWcHTt79t
          - display_name: Sandbox Staff
            is_bookable: true
            team_member_id: TMaJcbiRqPIGZuS9
      properties:
        cursor:
          description: The cursor for paginating through the results.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_member_booking_profiles:
          description: The list of team member booking profiles.
          items:
            $ref: "#/components/schemas/TeamMemberBookingProfile"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    ListTeamMemberWagesRequest:
      description: A request for a set of `TeamMemberWage` objects.
      example:
        request_params: ?team_member_id=33fJchumvVdJwxV0H6L9&limit=4&cursor=s4R0Z6ecFTzTC4jz8sUDBQTudX3KE313OT9fCt3VUgsXM4sMgED
      properties:
        cursor:
          description: A pointer to the next page of `EmployeeWage` results to fetch.
          type: string
        limit:
          description: |-
            The maximum number of `TeamMemberWage` results to return per page. The number can range between
            1 and 200. The default is 200.
          maximum: 200
          minimum: 1
          type: integer
        team_member_id:
          description: |-
            Filter the returned wages to only those that are associated with the
            specified team member.
          type: string
      type: object
      x-release-status: PUBLIC
    ListTeamMemberWagesResponse:
      description: |-
        The response to a request for a set of `TeamMemberWage` objects. The response contains
        a set of `TeamMemberWage` objects.
      example:
        cursor: 2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED
        team_member_wages:
          - hourly_rate:
              amount: 3250
              currency: USD
            id: pXS3qCv7BERPnEGedM4S8mhm
            team_member_id: 33fJchumvVdJwxV0H6L9
            title: Manager
          - hourly_rate:
              amount: 2600
              currency: USD
            id: rZduCkzYDUVL3ovh1sQgbue6
            team_member_id: 33fJchumvVdJwxV0H6L9
            title: Cook
          - hourly_rate:
              amount: 1600
              currency: USD
            id: FxLbs5KpPUHa8wyt5ctjubDX
            team_member_id: 33fJchumvVdJwxV0H6L9
            title: Barista
          - hourly_rate:
              amount: 1700
              currency: USD
            id: vD1wCgijMDR3cX5TPnu7VXto
            team_member_id: 33fJchumvVdJwxV0H6L9
            title: Cashier
      properties:
        cursor:
          description: |-
            The value supplied in the subsequent request to fetch the next page
            of `TeamMemberWage` results.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_member_wages:
          description: A page of `TeamMemberWage` results.
          items:
            $ref: "#/components/schemas/TeamMemberWage"
          type: array
      type: object
      x-release-status: PUBLIC
    ListTransactionsRequest:
      description: |-
        Defines the query parameters that can be included in
        a request to the [ListTransactions](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/list-transactions) endpoint.

        Deprecated - recommend using [SearchOrders](https://developer.squareup.com/reference/square_2021-08-18/orders-api/search-orders)
      example:
        request_params: ?begin_time=2016-01-15T00:00:00Z&end_time=2016-01-31T00:00:00Z
      properties:
        begin_time:
          description: |-
            The beginning of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time minus one year.
          type: string
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          type: string
        end_time:
          description: |-
            The end of the requested reporting period, in RFC 3339 format.

            See [Date ranges](https://developer.squareup.com/docs/build-basics/working-with-dates) for details on date inclusivity/exclusivity.

            Default value: The current time.
          type: string
        sort_order:
          description: |-
            The order in which results are listed in the response (`ASC` for
            oldest first, `DESC` for newest first).

            Default value: `DESC`
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListTransactions/ListTransactionsRequest.csharp
        java: /sdk_samples/ListTransactions/ListTransactionsRequest.java
        javascript: /sdk_samples/ListTransactions/ListTransactionsRequest.javascript
        php: /sdk_samples/ListTransactions/ListTransactionsRequest.php
        python: /sdk_samples/ListTransactions/ListTransactionsRequest.python
        ruby: /sdk_samples/ListTransactions/ListTransactionsRequest.ruby
    ListTransactionsResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [ListTransactions](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/list-transactions) endpoint.

        One of `errors` or `transactions` is present in a given response (never both).
      example:
        transactions:
          - created_at: 2016-01-20T22:57:56Z
            id: KnL67ZIwXCPtzOrqj0HrkxMF
            location_id: 18YC4JDH91E1H
            product: EXTERNAL_API
            reference_id: some optional reference id
            refunds:
              - additional_recipients:
                  - amount_money:
                      amount: 100
                      currency: USD
                    description: Application fees
                    location_id: 057P5VYJ4A5X1
                amount_money:
                  amount: 5000
                  currency: USD
                created_at: 2016-01-20T22:59:20Z
                id: 7a5RcVI0CxbOcJ2wMOkE
                location_id: 18YC4JDH91E1H
                processing_fee_money:
                  amount: 138
                  currency: USD
                reason: some reason why
                status: APPROVED
                tender_id: MtZRYYdDrYNQbOvV7nbuBvMF
                transaction_id: KnL67ZIwXCPtzOrqj0HrkxMF
            tenders:
              - additional_recipients:
                  - amount_money:
                      amount: 20
                      currency: USD
                    description: Application fees
                    location_id: 057P5VYJ4A5X1
                amount_money:
                  amount: 5000
                  currency: USD
                card_details:
                  card:
                    card_brand: VISA
                    last_4: "1111"
                  entry_method: KEYED
                  status: CAPTURED
                created_at: 2016-01-20T22:57:56Z
                id: MtZRYYdDrYNQbOvV7nbuBvMF
                location_id: 18YC4JDH91E1H
                note: some optional note
                processing_fee_money:
                  amount: 138
                  currency: USD
                transaction_id: KnL67ZIwXCPtzOrqj0HrkxMF
                type: CARD
      properties:
        cursor:
          description: |-
            A pagination cursor for retrieving the next set of results,
            if any remain. Provide this value as the `cursor` parameter in a subsequent
            request to this endpoint.

            See [Paginating results](https://developer.squareup.com/docs/working-with-apis/pagination) for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        transactions:
          description: An array of transactions that match your query.
          items:
            $ref: "#/components/schemas/Transaction"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ListTransactions/ListTransactionsResponse.csharp
        java: /sdk_samples/ListTransactions/ListTransactionsResponse.java
        javascript: /sdk_samples/ListTransactions/ListTransactionsResponse.javascript
        php: /sdk_samples/ListTransactions/ListTransactionsResponse.php
        python: /sdk_samples/ListTransactions/ListTransactionsResponse.python
        ruby: /sdk_samples/ListTransactions/ListTransactionsResponse.ruby
    ListWorkweekConfigsRequest:
      description: A request for a set of `WorkweekConfig` objects.
      example:
        request_params: ?limit=1&cursor=s4R0Z6ecFTzTC4jz8sUDBQTudX3KE313OT9fCt3VUgsXM4sMgED
      properties:
        cursor:
          description: A pointer to the next page of `WorkweekConfig` results to fetch.
          type: string
        limit:
          description: The maximum number of `WorkweekConfigs` results to return per page.
          type: integer
      type: object
      x-release-status: PUBLIC
    ListWorkweekConfigsResponse:
      description: |-
        The response to a request for a set of `WorkweekConfig` objects. The response contains
        the requested `WorkweekConfig` objects and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        cursor: 2fofTniCgT0yIPAq26kmk0YyFQJZfbWkh73OOnlTHmTAx13NgED
        workweek_configs:
          - created_at: 2016-02-04T00:58:24Z
            id: FY4VCAQN700GM
            start_of_day_local_time: 10:00
            start_of_week: MON
            updated_at: 2019-02-28T01:04:35Z
            version: 11
      properties:
        cursor:
          description: |-
            The value supplied in the subsequent request to fetch the next page of
            `EmployeeWage` results.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        workweek_configs:
          description: A page of `EmployeeWage` results.
          items:
            $ref: "#/components/schemas/WorkweekConfig"
          type: array
      type: object
      x-release-status: PUBLIC
    Location:
      description: ""
      properties:
        address:
          $ref: "#/components/schemas/Address"
        business_email:
          description: |-
            The email of the location.
            This email is visible to the customers of the location.
            For example, the email appears on customer receipts. 
            For example, `help&#64;squareup.com`.
          type: string
        business_hours:
          $ref: "#/components/schemas/BusinessHours"
        business_name:
          description: |-
            The business name of the location
            This is the name visible to the customers of the location.
            For example, this name appears on customer receipts.
          type: string
        capabilities:
          description: |-
            The Square features that are enabled for the location.
            See [LocationCapability](https://developer.squareup.com/reference/square_2021-08-18/enums/LocationCapability) for possible values.
          items:
            type: string
          type: array
          x-read-only: true
        coordinates:
          $ref: "#/components/schemas/Coordinates"
        country:
          description: |-
            The country of the location, in ISO 3166-1-alpha-2 format.

            See [Country](https://developer.squareup.com/reference/square_2021-08-18/enums/Country) for possible values.
          type: string
          x-read-only: true
        created_at:
          description: |-
            The time when the location was created, in RFC 3339 format.
            For more information, see [Working with Dates](https://developer.squareup.com/docs/build-basics/working-with-dates).
          type: string
          x-read-only: true
        currency:
          description: |-
            The currency used for all transactions at this location,
            in ISO 4217 format.
            See [Currency](https://developer.squareup.com/reference/square_2021-08-18/enums/Currency) for possible values.
          type: string
          x-read-only: true
        description:
          description: The description of the location.
          type: string
        facebook_url:
          description: The Facebook profile URL of the location. The URL should begin with 'facebook.com/'. For example, `https://www.facebook.com/square`.
          type: string
        full_format_logo_url:
          description: |-
            The URL of a full-format logo image for the location. The Seller must choose this logo in the
            Seller dashboard (Receipts section) for the logo to appear on transactions (such as receipts, invoices)
            that Square generates on behalf of the Seller. This image can have an aspect ratio of 2:1 or greater
            and is recommended to be at least 1280x648 pixels.
          type: string
          x-read-only: true
        id:
          description: The Square-issued ID of the location.
          type: string
          x-read-only: true
        instagram_username:
          description: The Instagram username of the location without the '&#64;' symbol. For example, `square`.
          type: string
        language_code:
          description: |-
            The language associated with the location, in
            [BCP 47 format](https://tools.ietf.org/html/bcp47#appendix-A). 
            For more information, see [Location language code](https://developer.squareup.com/docs/locations-api#location-language-code).
          type: string
        logo_url:
          description: |-
            The URL of the logo image for the location. The Seller must choose this logo in the Seller
            dashboard (Receipts section) for the logo to appear on transactions (such as receipts, invoices)
            that Square generates on behalf of the Seller. This image should have an aspect ratio
            close to 1:1 and is recommended to be at least 200x200 pixels.
          type: string
          x-read-only: true
        mcc:
          description: |-
            The merchant category code (MCC) of the location, as standardized by ISO 18245.
            The MCC describes the kind of goods or services sold at the location.
          type: string
          x-is-beta: true
          x-release-status: BETA
        merchant_id:
          description: The ID of the merchant that owns the location.
          type: string
          x-read-only: true
        name:
          description: |-
            The name of the location.
            This information appears in the dashboard as the nickname.
            A location name must be unique within a seller account.
          type: string
        phone_number:
          description: The phone number of the location in human readable format. For example, `+353 80 0 098 8099`.
          type: string
        pos_background_url:
          description: The URL of the Point of Sale background image for the location.
          type: string
          x-read-only: true
        status:
          description: The status of the location, either active or inactive.
          type: string
        tax_ids:
          $ref: "#/components/schemas/TaxIds"
        timezone:
          description: |-
            The [IANA Timezone](https://www.iana.org/time-zones) identifier for
            the timezone of the location.
          type: string
        twitter_username:
          description: The Twitter username of the location without the '&#64;' symbol. For example, `Square`.
          type: string
        type:
          description: The type of the location, either physical or mobile.
          type: string
        website_url:
          description: The website URL of the location.  For example, `https://squareup.com`.
          type: string
      type: object
      x-release-status: PUBLIC
    LocationCapability:
      description: The capabilities a location may have.
      enum:
        - CREDIT_CARD_PROCESSING
        - AUTOMATIC_TRANSFERS
      type: string
      x-enum-elements:
        - description: |-
            The permission to process credit card transactions with Square.

            The location can process credit cards if this value is present
            in the `capabilities` array of the `Location`.
          name: CREDIT_CARD_PROCESSING
        - description: |-
            The capability to receive automatic transfers from Square.

            The location can receive automatic transfers of their balance from Square if this value
            is present in the `capabilities` array of the `Location`.
          name: AUTOMATIC_TRANSFERS
      x-release-status: PUBLIC
    LocationStatus:
      description: The status of the location, whether a location is active or inactive.
      enum:
        - ACTIVE
        - INACTIVE
      type: string
      x-enum-elements:
        - description: A location that is active for business.
          name: ACTIVE
        - description: |-
            A location that is not active for business. Inactive locations just provide historical
            information, so typically clients limit interaction with or hide these locations.
          name: INACTIVE
      x-release-status: PUBLIC
    LocationType:
      description: A location's physical or mobile type.
      enum:
        - PHYSICAL
        - MOBILE
      type: string
      x-enum-elements:
        - description: A place of business with a physical location.
          name: PHYSICAL
        - description: A place of business that is mobile, such as a food truck or online store.
          name: MOBILE
      x-release-status: PUBLIC
    LoyaltyAccount:
      description: |-
        Describes a loyalty account. For more information, see
        [Manage Loyalty Accounts Using the Loyalty API](https://developer.squareup.com/docs/loyalty-api/overview).
      properties:
        balance:
          description: |-
            The available point balance in the loyalty account. If points are scheduled to expire, they are listed in the `expiring_point_deadlines` field.

            Your application should be able to handle loyalty accounts that have a negative point balance (`balance` is less than 0). This might occur if a seller makes a manual adjustment or as a result of a refund or exchange.
          type: integer
          x-read-only: true
        created_at:
          description: The timestamp when the loyalty account was created, in RFC 3339 format.
          type: string
          x-read-only: true
        customer_id:
          description: The Square-assigned ID of the [customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) that is associated with the account.
          type: string
        enrolled_at:
          description: The timestamp when enrollment occurred, in RFC 3339 format.
          type: string
          x-read-only: true
        expiring_point_deadlines:
          description: |-
            The schedule for when points expire in the loyalty account balance. This field is present only if the account has points that are scheduled to expire. 

            The total number of points in this field equals the number of points in the `balance` field.
          items:
            $ref: "#/components/schemas/LoyaltyAccountExpiringPointDeadline"
          type: array
        id:
          description: The Square-assigned ID of the loyalty account.
          maxLength: 36
          type: string
          x-read-only: true
        lifetime_points:
          description: The total points accrued during the lifetime of the account.
          minimum: 0
          type: integer
          x-read-only: true
        mapping:
          $ref: "#/components/schemas/LoyaltyAccountMapping"
        program_id:
          description: The Square-assigned ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram) to which the account belongs.
          maxLength: 36
          minLength: 1
          type: string
        updated_at:
          description: The timestamp when the loyalty account was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
      required:
        - program_id
      type: object
      x-release-status: PUBLIC
    LoyaltyAccountExpiringPointDeadline:
      description: Represents a set of points for a loyalty account that are scheduled to expire on a specific date.
      properties:
        expires_at:
          description: The timestamp of when the points are scheduled to expire, in RFC 3339 format.
          minLength: 1
          type: string
        points:
          description: The number of points scheduled to expire at the `expires_at` timestamp.
          type: integer
      required:
        - points
        - expires_at
      type: object
      x-release-status: PUBLIC
    LoyaltyAccountMapping:
      description: |-
        Represents the mapping that associates a loyalty account with a buyer. 

        Currently, a loyalty account can only be mapped to a buyer by phone number. For more information, see 
        [Loyalty Overview](https://developer.squareup.com/docs/loyalty/overview).
      properties:
        created_at:
          description: The timestamp when the mapping was created, in RFC 3339 format.
          type: string
          x-read-only: true
        id:
          description: The Square-assigned ID of the mapping.
          maxLength: 36
          type: string
          x-read-only: true
        phone_number:
          description: The phone number of the buyer, in E.164 format. For example, "+14155551111".
          type: string
      type: object
      x-release-status: PUBLIC
    LoyaltyAccountMappingType:
      description: The type of mapping.
      enum:
        - PHONE
      type: string
      x-enum-elements:
        - description: The loyalty account is mapped by phone.
          name: PHONE
      x-release-status: PUBLIC
    LoyaltyEvent:
      description: |-
        Provides information about a loyalty event. 
        For more information, see [Loyalty events](https://developer.squareup.com/docs/loyalty-api/overview/#loyalty-events).
      properties:
        accumulate_points:
          $ref: "#/components/schemas/LoyaltyEventAccumulatePoints"
        adjust_points:
          $ref: "#/components/schemas/LoyaltyEventAdjustPoints"
        create_reward:
          $ref: "#/components/schemas/LoyaltyEventCreateReward"
        created_at:
          description: The timestamp when the event was created, in RFC 3339 format.
          minLength: 1
          type: string
          x-read-only: true
        delete_reward:
          $ref: "#/components/schemas/LoyaltyEventDeleteReward"
        expire_points:
          $ref: "#/components/schemas/LoyaltyEventExpirePoints"
        id:
          description: The Square-assigned ID of the loyalty event.
          minLength: 1
          type: string
          x-read-only: true
        location_id:
          description: The ID of the [location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the event occurred.
          type: string
          x-read-only: true
        loyalty_account_id:
          description: The ID of the [loyalty account](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyAccount) in which the event occurred.
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        other_event:
          $ref: "#/components/schemas/LoyaltyEventOther"
        redeem_reward:
          $ref: "#/components/schemas/LoyaltyEventRedeemReward"
        source:
          description: Defines whether the event was generated by the Square Point of Sale.
          type: string
          x-read-only: true
        type:
          description: The type of the loyalty event.
          type: string
          x-read-only: true
      required:
        - id
        - type
        - created_at
        - loyalty_account_id
        - source
      type: object
      x-release-status: PUBLIC
    LoyaltyEventAccumulatePoints:
      description: Provides metadata when the event `type` is `ACCUMULATE_POINTS`.
      properties:
        loyalty_program_id:
          description: The ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram).
          maxLength: 36
          type: string
          x-read-only: true
        order_id:
          description: |-
            The ID of the [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) for which the buyer accumulated the points.
            This field is returned only if the Orders API is used to process orders.
          type: string
        points:
          description: The number of points accumulated by the event.
          minimum: 1
          type: integer
      type: object
      x-release-status: PUBLIC
    LoyaltyEventAdjustPoints:
      description: Provides metadata when the event `type` is `ADJUST_POINTS`.
      properties:
        loyalty_program_id:
          description: The Square-assigned ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram).
          maxLength: 36
          type: string
          x-read-only: true
        points:
          description: The number of points added or removed.
          type: integer
        reason:
          description: The reason for the adjustment of points.
          type: string
      required:
        - points
      type: object
      x-release-status: PUBLIC
    LoyaltyEventCreateReward:
      description: Provides metadata when the event `type` is `CREATE_REWARD`.
      properties:
        loyalty_program_id:
          description: The ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram).
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        points:
          description: The loyalty points used to create the reward.
          maximum: 0
          type: integer
          x-read-only: true
        reward_id:
          description: |-
            The Square-assigned ID of the created [loyalty reward](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyReward).
            This field is returned only if the event source is `LOYALTY_API`.
          maxLength: 36
          type: string
          x-read-only: true
      required:
        - loyalty_program_id
        - points
      type: object
      x-release-status: PUBLIC
    LoyaltyEventDateTimeFilter:
      description: Filter events by date time range.
      properties:
        created_at:
          $ref: "#/components/schemas/TimeRange"
      required:
        - created_at
      type: object
      x-release-status: PUBLIC
    LoyaltyEventDeleteReward:
      description: Provides metadata when the event `type` is `DELETE_REWARD`.
      properties:
        loyalty_program_id:
          description: The ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram).
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        points:
          description: The number of points returned to the loyalty account.
          minimum: 0
          type: integer
          x-read-only: true
        reward_id:
          description: |-
            The ID of the deleted [loyalty reward](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyReward).
            This field is returned only if the event source is `LOYALTY_API`.
          maxLength: 36
          type: string
          x-read-only: true
      required:
        - loyalty_program_id
        - points
      type: object
      x-release-status: PUBLIC
    LoyaltyEventExpirePoints:
      description: Provides metadata when the event `type` is `EXPIRE_POINTS`.
      properties:
        loyalty_program_id:
          description: The Square-assigned ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram).
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        points:
          description: The number of points expired.
          maximum: 0
          type: integer
      required:
        - loyalty_program_id
        - points
      type: object
      x-release-status: PUBLIC
    LoyaltyEventFilter:
      description: |-
        The filtering criteria. If the request specifies multiple filters, 
        the endpoint uses a logical AND to evaluate them.
      properties:
        date_time_filter:
          $ref: "#/components/schemas/LoyaltyEventDateTimeFilter"
        location_filter:
          $ref: "#/components/schemas/LoyaltyEventLocationFilter"
        loyalty_account_filter:
          $ref: "#/components/schemas/LoyaltyEventLoyaltyAccountFilter"
        order_filter:
          $ref: "#/components/schemas/LoyaltyEventOrderFilter"
        type_filter:
          $ref: "#/components/schemas/LoyaltyEventTypeFilter"
      type: object
      x-release-status: PUBLIC
    LoyaltyEventLocationFilter:
      description: Filter events by location.
      properties:
        location_ids:
          description: |-
            The [location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) IDs for loyalty events to query.
            If multiple values are specified, the endpoint uses 
            a logical OR to combine them.
          items:
            minLength: 1
            type: string
          type: array
      required:
        - location_ids
      type: object
      x-release-status: PUBLIC
    LoyaltyEventLoyaltyAccountFilter:
      description: Filter events by loyalty account.
      properties:
        loyalty_account_id:
          description: The ID of the [loyalty account](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyAccount) associated with loyalty events.
          minLength: 1
          type: string
      required:
        - loyalty_account_id
      type: object
      x-release-status: PUBLIC
    LoyaltyEventOrderFilter:
      description: Filter events by the order associated with the event.
      properties:
        order_id:
          description: The ID of the [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) associated with the event.
          minLength: 1
          type: string
      required:
        - order_id
      type: object
      x-release-status: PUBLIC
    LoyaltyEventOther:
      description: Provides metadata when the event `type` is `OTHER`.
      properties:
        loyalty_program_id:
          description: The Square-assigned ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram).
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        points:
          description: The number of points added or removed.
          type: integer
      required:
        - loyalty_program_id
        - points
      type: object
      x-release-status: PUBLIC
    LoyaltyEventQuery:
      description: Represents a query used to search for loyalty events.
      properties:
        filter:
          $ref: "#/components/schemas/LoyaltyEventFilter"
      type: object
      x-release-status: PUBLIC
    LoyaltyEventRedeemReward:
      description: Provides metadata when the event `type` is `REDEEM_REWARD`.
      properties:
        loyalty_program_id:
          description: The ID of the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram).
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        order_id:
          description: |-
            The ID of the [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) that redeemed the reward.
            This field is returned only if the Orders API is used to process orders.
          type: string
          x-read-only: true
        reward_id:
          description: |-
            The ID of the redeemed [loyalty reward](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyReward).
            This field is returned only if the event source is `LOYALTY_API`.
          maxLength: 36
          type: string
          x-read-only: true
      required:
        - loyalty_program_id
      type: object
      x-release-status: PUBLIC
    LoyaltyEventSource:
      description: Defines whether the event was generated by the Square Point of Sale.
      enum:
        - SQUARE
        - LOYALTY_API
      type: string
      x-enum-elements:
        - description: The event is generated by the Square Point of Sale (POS).
          name: SQUARE
        - description: The event is generated by something other than the Square Point of Sale that used the Loyalty API.
          name: LOYALTY_API
      x-release-status: PUBLIC
    LoyaltyEventType:
      description: The type of the loyalty event.
      enum:
        - ACCUMULATE_POINTS
        - CREATE_REWARD
        - REDEEM_REWARD
        - DELETE_REWARD
        - ADJUST_POINTS
        - EXPIRE_POINTS
        - OTHER
      type: string
      x-enum-elements:
        - description: Points are added to a loyalty account for a purchase.
          name: ACCUMULATE_POINTS
        - description: |-
            A loyalty reward is created. For more information, see  
            [Loyalty rewards](https://developer.squareup.com/docs/loyalty-api/overview/#loyalty-overview-loyalty-rewards).
          name: CREATE_REWARD
        - description: A loyalty reward is redeemed.
          name: REDEEM_REWARD
        - description: A loyalty reward is deleted.
          name: DELETE_REWARD
        - description: Loyalty points are manually adjusted.
          name: ADJUST_POINTS
        - description: |-
            Loyalty points are expired according to the 
            expiration policy of the loyalty program.
          name: EXPIRE_POINTS
        - description: Some other loyalty event occurred.
          name: OTHER
      x-release-status: PUBLIC
    LoyaltyEventTypeFilter:
      description: Filter events by event type.
      properties:
        types:
          description: |-
            The loyalty event types used to filter the result.
            If multiple values are specified, the endpoint uses a 
            logical OR to combine them.
          items:
            type: string
          type: array
      required:
        - types
      type: object
      x-release-status: PUBLIC
    LoyaltyProgram:
      description: |-
        Represents a Square loyalty program. Loyalty programs define how buyers can earn points and redeem points for rewards. 
        Square sellers can have only one loyalty program, which is created and managed from the Seller Dashboard. 
        For more information, see [Loyalty Program Overview](https://developer.squareup.com/docs/loyalty/overview).
      properties:
        accrual_rules:
          description: Defines how buyers can earn loyalty points.
          items:
            $ref: "#/components/schemas/LoyaltyProgramAccrualRule"
          type: array
          x-read-only: true
        created_at:
          description: The timestamp when the program was created, in RFC 3339 format.
          minLength: 1
          type: string
          x-read-only: true
        expiration_policy:
          $ref: "#/components/schemas/LoyaltyProgramExpirationPolicy"
        id:
          description: |-
            The Square-assigned ID of the loyalty program. Updates to 
            the loyalty program do not modify the identifier.
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        location_ids:
          description: The [locations](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) at which the program is active.
          items:
            minLength: 1
            type: string
          type: array
          x-read-only: true
        reward_tiers:
          description: The list of rewards for buyers, sorted by ascending points.
          items:
            $ref: "#/components/schemas/LoyaltyProgramRewardTier"
          type: array
          x-read-only: true
        status:
          description: Whether the program is currently active.
          type: string
          x-read-only: true
        terminology:
          $ref: "#/components/schemas/LoyaltyProgramTerminology"
        updated_at:
          description: The timestamp when the reward was last updated, in RFC 3339 format.
          minLength: 1
          type: string
          x-read-only: true
      required:
        - id
        - status
        - reward_tiers
        - terminology
        - location_ids
        - created_at
        - updated_at
        - accrual_rules
      type: object
      x-release-status: PUBLIC
    LoyaltyProgramAccrualRule:
      description: Defines an accrual rule, which is how buyers can earn points.
      properties:
        accrual_type:
          description: The type of the accrual rule that defines how buyers can earn points.
          type: string
          x-read-only: true
        catalog_object_id:
          description: |-
            When the accrual rule is item-based or category-based, this field specifies the ID 
            of the [catalog object](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject) that buyers can purchase to earn points. 
            If `accrual_type` is `ITEM_VARIATION`, the object is an item variation. 
            If `accrual_type` is `CATEGORY`, the object is a category.
          type: string
          x-read-only: true
        excluded_category_ids:
          description: |-
            When the accrual rule is spend-based (`accrual_type` is `SPEND`), this field 
            lists the IDs of any `CATEGORY` catalog objects that are excluded from points accrual. 

            You can use the [BatchRetrieveCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/batch-retrieve-catalog-objects) 
            endpoint to retrieve information about the excluded categories.
          items:
            type: string
          type: array
          x-read-only: true
        excluded_item_variation_ids:
          description: |-
            When the accrual rule is spend-based (`accrual_type` is `SPEND`), this field 
            lists the IDs of any `ITEM_VARIATION` catalog objects that are excluded from points accrual. 

            You can use the [BatchRetrieveCatalogObjects](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/batch-retrieve-catalog-objects) 
            endpoint to retrieve information about the excluded item variations.
          items:
            type: string
          type: array
          x-read-only: true
        points:
          description: |-
            The number of points that 
            buyers earn based on the `accrual_type`.
          minimum: 1
          type: integer
          x-read-only: true
        spend_amount_money:
          $ref: "#/components/schemas/Money"
        visit_minimum_amount_money:
          $ref: "#/components/schemas/Money"
      required:
        - accrual_type
      type: object
      x-release-status: PUBLIC
    LoyaltyProgramAccrualRuleType:
      description: The type of the accrual rule that defines how buyers can earn points.
      enum:
        - VISIT
        - SPEND
        - ITEM_VARIATION
        - CATEGORY
      type: string
      x-enum-elements:
        - description: |-
            A visit-based accrual rule. A buyer earns points for each visit. 
            You can specify the minimum purchase required.
          name: VISIT
        - description: |-
            A spend-based accrual rule. A buyer earns points based on the amount 
            spent.
          name: SPEND
        - description: |-
            An accrual rule based on an item variation. For example, accrue 
            points for purchasing a coffee.
          name: ITEM_VARIATION
        - description: |-
            An accrual rule based on an item category. For example, accrue points 
            for purchasing any item in the "hot drink" category: coffee, tea, or hot cocoa.
          name: CATEGORY
      x-release-status: PUBLIC
    LoyaltyProgramExpirationPolicy:
      description: Describes when the loyalty program expires.
      properties:
        expiration_duration:
          description: |-
            The number of months before points expire, in `P[n]M` RFC 3339 duration format. For example, a value of `P12M` represents a duration of 12 months. 
            Points are valid through the last day of the month in which they are scheduled to expire. For example, with a  `P12M` duration, points earned on July 6, 2020 expire on August 1, 2021.
          minLength: 1
          type: string
          x-read-only: true
      required:
        - expiration_duration
      type: object
      x-release-status: PUBLIC
    LoyaltyProgramRewardDefinition:
      description: |-
        Provides details about the reward tier discount. DEPRECATED at version 2020-12-16. Discount details
        are now defined using a catalog pricing rule and other catalog objects. For more information, see
        [Get discount details for the reward](https://developer.squareup.com/docs/loyalty-api/overview#get-discount-details).
      properties:
        catalog_object_ids:
          description: |-
            The list of catalog objects to which this reward can be applied. They are either all item-variation ids or category ids, depending on the `type` field.
            DEPRECATED at version 2020-12-16. You can find this information in the `product_set_data.product_ids_any` field
            of the `PRODUCT_SET` catalog object referenced by the pricing rule.
          items:
            type: string
          type: array
          x-read-only: true
        discount_type:
          description: |-
            The type of discount the reward tier offers. DEPRECATED at version 2020-12-16. You can find this information
            in the `discount_data.discount_type` field of the `DISCOUNT` catalog object referenced by the pricing rule.
          type: string
          x-read-only: true
        fixed_discount_money:
          $ref: "#/components/schemas/Money"
        max_discount_money:
          $ref: "#/components/schemas/Money"
        percentage_discount:
          description: |-
            The fixed percentage of the discount. Present if `discount_type` is `FIXED_PERCENTAGE`.
            For example, a 7.25% off discount will be represented as "7.25". DEPRECATED at version 2020-12-16. You can find this
            information in the `discount_data.percentage` field of the `DISCOUNT` catalog object referenced by the pricing rule.
          type: string
          x-read-only: true
        scope:
          description: |-
            Indicates the scope of the reward tier. DEPRECATED at version 2020-12-16. You can find this information in the
            `discount_target_scope` field of the `PRICING_RULE` catalog object and the `product_set_data` field of the `PRODUCT_SET`
            catalog object referenced by the pricing rule. For `ORDER` scopes, the target scope is `WHOLE_PURCHASE` and `all_products`
            is true. For `ITEM_VARIATION` and `CATEGORY` scopes, the target scope is `LINE_ITEM` and `product_ids_any` is a list of
            catalog object IDs of the given type.
          type: string
          x-read-only: true
      required:
        - scope
        - discount_type
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    LoyaltyProgramRewardDefinitionScope:
      description: |-
        Indicates the scope of the reward tier. DEPRECATED at version 2020-12-16. Discount details
        are now defined using a catalog pricing rule and other catalog objects. For more information, see
        [Get discount details for the reward](https://developer.squareup.com/docs/loyalty-api/overview#get-discount-details).
      enum:
        - ORDER
        - ITEM_VARIATION
        - CATEGORY
      type: string
      x-enum-elements:
        - description: The discount applies to the entire order.
          name: ORDER
        - description: The discount applies only to specific item variations.
          name: ITEM_VARIATION
        - description: The discount applies only to items in the given categories.
          name: CATEGORY
      x-is-deprecated: true
      x-release-status: DEPRECATED
    LoyaltyProgramRewardDefinitionType:
      description: |-
        The type of discount the reward tier offers. DEPRECATED at version 2020-12-16. Discount details
        are now defined using a catalog pricing rule and other catalog objects. For more information, see
        [Get discount details for the reward](https://developer.squareup.com/docs/loyalty-api/overview#get-discount-details).
      enum:
        - FIXED_AMOUNT
        - FIXED_PERCENTAGE
      type: string
      x-enum-elements:
        - description: The fixed amount discounted.
          name: FIXED_AMOUNT
        - description: The fixed percentage discounted.
          name: FIXED_PERCENTAGE
      x-is-deprecated: true
      x-release-status: DEPRECATED
    LoyaltyProgramRewardTier:
      description: Represents a reward tier in a loyalty program. A reward tier defines how buyers can redeem points for a reward, such as the number of points required and the value and scope of the discount. A loyalty program can offer multiple reward tiers.
      properties:
        created_at:
          description: The timestamp when the reward tier was created, in RFC 3339 format.
          type: string
          x-read-only: true
        definition:
          $ref: "#/components/schemas/LoyaltyProgramRewardDefinition"
        id:
          description: The Square-assigned ID of the reward tier.
          maxLength: 36
          minLength: 1
          type: string
          x-read-only: true
        name:
          description: The name of the reward tier.
          minLength: 1
          type: string
          x-read-only: true
        points:
          description: The points exchanged for the reward tier.
          minimum: 1
          type: integer
          x-read-only: true
        pricing_rule_reference:
          $ref: "#/components/schemas/CatalogObjectReference"
      required:
        - id
        - points
        - name
        - definition
        - created_at
      type: object
      x-release-status: PUBLIC
    LoyaltyProgramStatus:
      description: Indicates whether the program is currently active.
      enum:
        - INACTIVE
        - ACTIVE
      type: string
      x-enum-elements:
        - description: |-
            The loyalty program does not have an active subscription. 
            Loyalty API requests fail.
          name: INACTIVE
        - description: The program is fully functional. The program has an active subscription.
          name: ACTIVE
      x-release-status: PUBLIC
    LoyaltyProgramTerminology:
      description: Represents the naming used for loyalty points.
      properties:
        one:
          description: A singular unit for a point (for example, 1 point is called 1 star).
          minLength: 1
          type: string
          x-read-only: true
        other:
          description: A plural unit for point (for example, 10 points is called 10 stars).
          minLength: 1
          type: string
          x-read-only: true
      required:
        - one
        - other
      type: object
      x-release-status: PUBLIC
    LoyaltyReward:
      description: Represents a contract to redeem loyalty points for a [reward tier](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgramRewardTier) discount. Loyalty rewards can be in an ISSUED, REDEEMED, or DELETED state. For more information, see [Redeem loyalty rewards](https://developer.squareup.com/docs/loyalty-api/overview#redeem-loyalty-rewards).
      properties:
        created_at:
          description: The timestamp when the reward was created, in RFC 3339 format.
          type: string
          x-read-only: true
        id:
          description: The Square-assigned ID of the loyalty reward.
          maxLength: 36
          type: string
          x-read-only: true
        loyalty_account_id:
          description: The Square-assigned ID of the [loyalty account](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyAccount) to which the reward belongs.
          maxLength: 36
          minLength: 1
          type: string
        order_id:
          description: The Square-assigned ID of the [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) to which the reward is attached.
          type: string
        points:
          description: The number of loyalty points used for the reward.
          minimum: 1
          type: integer
          x-read-only: true
        redeemed_at:
          description: The timestamp when the reward was redeemed, in RFC 3339 format.
          type: string
          x-read-only: true
        reward_tier_id:
          description: The Square-assigned ID of the [reward tier](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgramRewardTier) used to create the reward.
          maxLength: 36
          minLength: 1
          type: string
        status:
          description: The status of a loyalty reward.
          type: string
          x-read-only: true
        updated_at:
          description: The timestamp when the reward was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
      required:
        - loyalty_account_id
        - reward_tier_id
      type: object
      x-release-status: PUBLIC
    LoyaltyRewardStatus:
      description: The status of the loyalty reward.
      enum:
        - ISSUED
        - REDEEMED
        - DELETED
      type: string
      x-enum-elements:
        - description: The reward is issued.
          name: ISSUED
        - description: The reward is redeemed.
          name: REDEEMED
        - description: The reward is deleted.
          name: DELETED
      x-release-status: PUBLIC
    MeasurementUnit:
      description: |-
        Represents a unit of measurement to use with a quantity, such as ounces
        or inches. Exactly one of the following fields are required: `custom_unit`,
        `area_unit`, `length_unit`, `volume_unit`, and `weight_unit`.
      properties:
        area_unit:
          description: Represents a standard area unit.
          type: string
        custom_unit:
          $ref: "#/components/schemas/MeasurementUnitCustom"
        generic_unit:
          description: Reserved for API integrations that lack the ability to specify a real measurement unit
          type: string
        length_unit:
          description: Represents a standard length unit.
          type: string
        time_unit:
          description: Represents a standard unit of time.
          type: string
        type:
          description: Represents the type of the measurement unit.
          type: string
        volume_unit:
          description: Represents a standard volume unit.
          type: string
        weight_unit:
          description: Represents a standard unit of weight or mass.
          type: string
      type: object
      x-release-status: PUBLIC
    MeasurementUnitArea:
      description: Unit of area used to measure a quantity.
      enum:
        - IMPERIAL_ACRE
        - IMPERIAL_SQUARE_INCH
        - IMPERIAL_SQUARE_FOOT
        - IMPERIAL_SQUARE_YARD
        - IMPERIAL_SQUARE_MILE
        - METRIC_SQUARE_CENTIMETER
        - METRIC_SQUARE_METER
        - METRIC_SQUARE_KILOMETER
      type: string
      x-enum-elements:
        - description: The area is measured in acres.
          name: IMPERIAL_ACRE
        - description: The area is measured in square inches.
          name: IMPERIAL_SQUARE_INCH
        - description: The area is measured in square feet.
          name: IMPERIAL_SQUARE_FOOT
        - description: The area is measured in square yards.
          name: IMPERIAL_SQUARE_YARD
        - description: The area is measured in square miles.
          name: IMPERIAL_SQUARE_MILE
        - description: The area is measured in square centimeters.
          name: METRIC_SQUARE_CENTIMETER
        - description: The area is measured in square meters.
          name: METRIC_SQUARE_METER
        - description: The area is measured in square kilometers.
          name: METRIC_SQUARE_KILOMETER
      x-release-status: PUBLIC
    MeasurementUnitCustom:
      description: The information needed to define a custom unit, provided by the seller.
      properties:
        abbreviation:
          description: |-
            The abbreviation of the custom unit, such as "bsh" (bushel). This appears
            in the cart for the Point of Sale app, and in reports.
          type: string
        name:
          description: The name of the custom unit, for example "bushel".
          type: string
      required:
        - name
        - abbreviation
      type: object
      x-release-status: PUBLIC
    MeasurementUnitGeneric:
      description: ""
      enum:
        - UNIT
      type: string
      x-enum-elements:
        - description: The generic unit.
          name: UNIT
      x-release-status: PUBLIC
    MeasurementUnitLength:
      description: The unit of length used to measure a quantity.
      enum:
        - IMPERIAL_INCH
        - IMPERIAL_FOOT
        - IMPERIAL_YARD
        - IMPERIAL_MILE
        - METRIC_MILLIMETER
        - METRIC_CENTIMETER
        - METRIC_METER
        - METRIC_KILOMETER
      type: string
      x-enum-elements:
        - description: The length is measured in inches.
          name: IMPERIAL_INCH
        - description: The length is measured in feet.
          name: IMPERIAL_FOOT
        - description: The length is measured in yards.
          name: IMPERIAL_YARD
        - description: The length is measured in miles.
          name: IMPERIAL_MILE
        - description: The length is measured in millimeters.
          name: METRIC_MILLIMETER
        - description: The length is measured in centimeters.
          name: METRIC_CENTIMETER
        - description: The length is measured in meters.
          name: METRIC_METER
        - description: The length is measured in kilometers.
          name: METRIC_KILOMETER
      x-release-status: PUBLIC
    MeasurementUnitTime:
      description: Unit of time used to measure a quantity (a duration).
      enum:
        - GENERIC_MILLISECOND
        - GENERIC_SECOND
        - GENERIC_MINUTE
        - GENERIC_HOUR
        - GENERIC_DAY
      type: string
      x-enum-elements:
        - description: The time is measured in milliseconds.
          name: GENERIC_MILLISECOND
        - description: The time is measured in seconds.
          name: GENERIC_SECOND
        - description: The time is measured in minutes.
          name: GENERIC_MINUTE
        - description: The time is measured in hours.
          name: GENERIC_HOUR
        - description: The time is measured in days.
          name: GENERIC_DAY
      x-release-status: PUBLIC
    MeasurementUnitUnitType:
      description: Describes the type of this unit and indicates which field contains the unit information. This is an ‘open’ enum.
      enum:
        - TYPE_CUSTOM
        - TYPE_AREA
        - TYPE_LENGTH
        - TYPE_VOLUME
        - TYPE_WEIGHT
        - TYPE_GENERIC
      type: string
      x-enum-elements:
        - description: The unit details are contained in the custom_unit field.
          name: TYPE_CUSTOM
        - description: The unit details are contained in the area_unit field.
          name: TYPE_AREA
        - description: The unit details are contained in the length_unit field.
          name: TYPE_LENGTH
        - description: The unit details are contained in the volume_unit field.
          name: TYPE_VOLUME
        - description: The unit details are contained in the weight_unit field.
          name: TYPE_WEIGHT
        - description: The unit details are contained in the generic_unit field.
          name: TYPE_GENERIC
      x-release-status: PUBLIC
    MeasurementUnitVolume:
      description: The unit of volume used to measure a quantity.
      enum:
        - GENERIC_FLUID_OUNCE
        - GENERIC_SHOT
        - GENERIC_CUP
        - GENERIC_PINT
        - GENERIC_QUART
        - GENERIC_GALLON
        - IMPERIAL_CUBIC_INCH
        - IMPERIAL_CUBIC_FOOT
        - IMPERIAL_CUBIC_YARD
        - METRIC_MILLILITER
        - METRIC_LITER
      type: string
      x-enum-elements:
        - description: The volume is measured in ounces.
          name: GENERIC_FLUID_OUNCE
        - description: The volume is measured in shots.
          name: GENERIC_SHOT
        - description: The volume is measured in cups.
          name: GENERIC_CUP
        - description: The volume is measured in pints.
          name: GENERIC_PINT
        - description: The volume is measured in quarts.
          name: GENERIC_QUART
        - description: The volume is measured in gallons.
          name: GENERIC_GALLON
        - description: The volume is measured in cubic inches.
          name: IMPERIAL_CUBIC_INCH
        - description: The volume is measured in cubic feet.
          name: IMPERIAL_CUBIC_FOOT
        - description: The volume is measured in cubic yards.
          name: IMPERIAL_CUBIC_YARD
        - description: The volume is measured in metric milliliters.
          name: METRIC_MILLILITER
        - description: The volume is measured in metric liters.
          name: METRIC_LITER
      x-release-status: PUBLIC
    MeasurementUnitWeight:
      description: Unit of weight used to measure a quantity.
      enum:
        - IMPERIAL_WEIGHT_OUNCE
        - IMPERIAL_POUND
        - IMPERIAL_STONE
        - METRIC_MILLIGRAM
        - METRIC_GRAM
        - METRIC_KILOGRAM
      type: string
      x-enum-elements:
        - description: The weight is measured in ounces.
          name: IMPERIAL_WEIGHT_OUNCE
        - description: The weight is measured in pounds.
          name: IMPERIAL_POUND
        - description: The weight is measured in stones.
          name: IMPERIAL_STONE
        - description: The weight is measured in milligrams.
          name: METRIC_MILLIGRAM
        - description: The weight is measured in grams.
          name: METRIC_GRAM
        - description: The weight is measured in kilograms.
          name: METRIC_KILOGRAM
      x-release-status: PUBLIC
    Merchant:
      description: Represents a Square seller.
      properties:
        business_name:
          description: The business name of the merchant.
          type: string
        country:
          description: The country code associated with the merchant account, in ISO 3166 format.
          type: string
        currency:
          description: The currency associated with the merchant account, in ISO 4217 format.
          type: string
        id:
          description: The Square-issued ID of the merchant.
          type: string
        language_code:
          description: The language code associated with the merchant account, in BCP 47 format.
          type: string
        main_location_id:
          description: The ID of the main `Location` for this merchant.
          type: string
        status:
          description: The merchant status, active or inactive.
          type: string
      required:
        - country
      type: object
      x-release-status: PUBLIC
    MerchantStatus:
      description: ""
      enum:
        - ACTIVE
        - INACTIVE
      type: string
      x-enum-elements:
        - description: A fully operational merchant account. The merchant can interact with Square products and APIs.
          name: ACTIVE
        - description: |-
            A functionally limited merchant account. The merchant can only have limited interaction
            via Square APIs. The merchant cannot access the seller dashboard.
          name: INACTIVE
      x-release-status: PUBLIC
    Money:
      description: |-
        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 unsigned and can only hold positive amounts. For signed fields, the
        sign of the value indicates the purpose of the money transfer. See
        [Working with Monetary Amounts](https://developer.squareup.com/docs/build-basics/working-with-monetary-amounts)
        for more information.
      properties:
        amount:
          description: |-
            The amount of money, in the smallest denomination of the currency
            indicated by `currency`. For example, when `currency` is `USD`, `amount` is
            in cents. Monetary amounts can be positive or negative. See the specific
            field description to determine the meaning of the sign in a particular case.
          format: int64
          type: integer
        currency:
          description: |-
            The type of currency, in __ISO 4217 format__. For example, the currency
            code for US dollars is `USD`.

            See [Currency](https://developer.squareup.com/reference/square_2021-08-18/enums/Currency) for possible values.
          type: string
      type: object
      x-release-status: PUBLIC
    ObtainTokenRequest:
      description: ""
      example:
        request_body:
          client_id: APPLICATION_ID
          client_secret: APPLICATION_SECRET
          code: CODE_FROM_AUTHORIZE
          grant_type: authorization_code
      properties:
        client_id:
          description: |-
            The Square-issued ID of your application, available from the
            [developer dashboard](https://developer.squareup.com/apps).
          maxLength: 191
          type: string
        client_secret:
          description: |-
            The Square-issued application secret for your application, available
            from the [developer dashboard](https://developer.squareup.com/apps).
          maxLength: 1024
          minLength: 2
          type: string
        code:
          description: |-
            The authorization code to exchange.
            This is required if `grant_type` is set to `authorization_code`, to indicate that
            the application wants to exchange an authorization code for an OAuth access token.
          maxLength: 191
          minLength: 0
          type: string
        grant_type:
          description: |-
            Specifies the method to request an OAuth access token.
            Valid values are: `authorization_code`, `refresh_token`, and `migration_token`
          maxLength: 20
          minLength: 10
          type: string
        migration_token:
          description: |-
            Legacy OAuth access token obtained using a Connect API version prior
            to 2019-03-13. This parameter is required if `grant_type` is set to
            `migration_token` to indicate that the application wants to get a replacement
            OAuth access token. The response also returns a refresh token.
            For more information, see [Migrate to Using Refresh Tokens](https://developer.squareup.com/docs/oauth-api/migrate-to-refresh-tokens).
          maxLength: 1024
          minLength: 2
          type: string
        redirect_uri:
          description: The redirect URL assigned in the [developer dashboard](https://developer.squareup.com/apps).
          maxLength: 2048
          minLength: 0
          type: string
        refresh_token:
          description: |-
            A valid refresh token for generating a new OAuth access token.
            A valid refresh token is required if `grant_type` is set to `refresh_token` , to indicate the application wants a replacement for an expired OAuth access token.
          maxLength: 1024
          minLength: 2
          type: string
        scopes:
          description: |-
            A JSON list of strings representing the permissions the application is requesting.
            For example: "`["MERCHANT_PROFILE_READ","PAYMENTS_READ","BANK_ACCOUNTS_READ"]`"
            The access token returned in the response is granted the permissions
            that comprise the intersection between the requested list of permissions, and those
            that belong to the provided refresh token.
          items:
            type: string
          type: array
          x-is-beta: true
          x-release-status: BETA
        short_lived:
          description: |-
            A boolean indicating a request for a short-lived access token.
            The short-lived access token returned in the response will expire in 24 hours.
          type: boolean
          x-is-beta: true
          x-release-status: BETA
      required:
        - client_id
        - client_secret
        - grant_type
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ObtainToken/ObtainTokenRequest.csharp
        java: /sdk_samples/ObtainToken/ObtainTokenRequest.java
        javascript: /sdk_samples/ObtainToken/ObtainTokenRequest.javascript
        php: /sdk_samples/ObtainToken/ObtainTokenRequest.php
        python: /sdk_samples/ObtainToken/ObtainTokenRequest.python
        ruby: /sdk_samples/ObtainToken/ObtainTokenRequest.ruby
    ObtainTokenResponse:
      description: ""
      example:
        access_token: ACCESS_TOKEN
        expires_at: 2006-01-02T15:04:05Z
        merchant_id: MERCHANT_ID
        refresh_token: REFRESH_TOKEN
        token_type: bearer
      properties:
        access_token:
          description: |-
            A valid OAuth access token. OAuth access tokens are 64 bytes long.
            Provide the access token in a header with every request to Connect API
            endpoints. See [OAuth API: Walkthrough](https://developer.squareup.com/docs/oauth-api/walkthrough)
            for more information.
          maxLength: 1024
          minLength: 2
          type: string
        expires_at:
          description: The date when access_token expires, in [ISO 8601](http://www.iso.org/iso/home/standards/iso8601.htm) format.
          maxLength: 48
          minLength: 20
          type: string
        id_token:
          description: |-
            Then OpenID token belonging to this this person. Only present if the
            OPENID scope is included in the authorize request.
          type: string
        merchant_id:
          description: The ID of the authorizing merchant's business.
          maxLength: 191
          minLength: 8
          type: string
        plan_id:
          description: |-
            __LEGACY FIELD__. The ID of the subscription plan the merchant signed
            up for. Only present if the merchant signed up for a subscription during
            authorization.
          type: string
        refresh_token:
          description: |-
            A refresh token. OAuth refresh tokens are 64 bytes long.
            For more information, see [OAuth access token management](https://developer.squareup.com/docs/oauth-api/how-it-works#oauth-access-token-management).
          maxLength: 1024
          minLength: 2
          type: string
        short_lived:
          description: |-
            A boolean indicating the access token is a short-lived access token.
            The short-lived access token returned in the response will expire in 24 hours.
          type: boolean
          x-is-beta: true
          x-release-status: BETA
        subscription_id:
          description: |-
            __LEGACY FIELD__. The ID of a subscription plan the merchant signed up
            for. Only present if the merchant signed up for a subscription during authorization.
          type: string
        token_type:
          description: This value is always _bearer_.
          maxLength: 10
          minLength: 2
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ObtainToken/ObtainTokenResponse.csharp
        java: /sdk_samples/ObtainToken/ObtainTokenResponse.java
        javascript: /sdk_samples/ObtainToken/ObtainTokenResponse.javascript
        php: /sdk_samples/ObtainToken/ObtainTokenResponse.php
        python: /sdk_samples/ObtainToken/ObtainTokenResponse.python
        ruby: /sdk_samples/ObtainToken/ObtainTokenResponse.ruby
    OnboardAppointmentsRequest:
      description: ""
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
    Order:
      description: |-
        Contains all information related to a single order to process with Square,
        including line items that specify the products to purchase. `Order` objects also
        include information about any associated tenders, refunds, and returns.

        All Connect V2 Transactions have all been converted to Orders including all associated
        itemization data.
      properties:
        closed_at:
          description: The timestamp for when the order reached a terminal [state](https://developer.squareup.com/reference/square_2021-08-18/enums/OrderState), in RFC 3339 format (for example "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        created_at:
          description: The timestamp for when the order was created, in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        customer_id:
          description: |-
            The ID of the [customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) associated with the order.

            __IMPORTANT:__ You should specify a `customer_id` if you want the corresponding payment transactions
            to be explicitly linked to the customer in the Seller Dashboard. If this field is omitted, the 
            `customer_id` assigned to any underlying `Payment` objects is ignored and might result in the 
            creation of new [instant profiles](https://developer.squareup.com/docs/customers-api/what-it-does#instant-profiles).
          maxLength: 191
          type: string
          x-is-beta: true
          x-release-status: BETA
        discounts:
          description: |-
            The list of all discounts associated with the order.

            Discounts can be scoped to either `ORDER` or `LINE_ITEM`. For discounts scoped to `LINE_ITEM`,
            an `OrderLineItemAppliedDiscount` must be added to each line item that the discount applies to.
            For discounts with `ORDER` scope, the server generates an `OrderLineItemAppliedDiscount`
            for every line item.

            __IMPORTANT__: If `LINE_ITEM` scope is set on any discounts in this field, using the deprecated
            `line_items.discounts` field results in an error. Use `line_items.applied_discounts`
            instead.
          items:
            $ref: "#/components/schemas/OrderLineItemDiscount"
          type: array
        fulfillments:
          description: |-
            Details about order fulfillment.

            Orders can only be created with at most one fulfillment. However, orders returned
            by the API might contain multiple fulfillments.
          items:
            $ref: "#/components/schemas/OrderFulfillment"
          type: array
        id:
          description: The order's unique ID.
          type: string
          x-read-only: true
        line_items:
          description: The line items included in the order.
          items:
            $ref: "#/components/schemas/OrderLineItem"
          type: array
        location_id:
          description: The ID of the seller location that this order is associated with.
          minLength: 1
          type: string
        metadata:
          additionalProperties:
            type: string
          description: |-
            Application-defined data attached to this order. Metadata fields are intended
            to store descriptive references or associations with an entity in another system or store brief
            information about the object. Square does not process this field; it only stores and returns it
            in relevant API calls. Do not use metadata to store any sensitive information (such as personally
            identifiable information or card details).

            Keys written by applications must be 60 characters or less and must be in the character set
            `[a-zA-Z0-9_-]`. Entries can also include metadata generated by Square. These keys are prefixed
            with a namespace, separated from the key with a ':' character.

            Values have a maximum length of 255 characters.

            An application can have up to 10 entries per metadata field.

            Entries written by applications are private and can only be read or modified by the same
            application.

            For more information, see  [Metadata](https://developer.squareup.com/docs/build-basics/metadata).
          type: object
          x-is-beta: true
          x-release-status: BETA
        net_amounts:
          $ref: "#/components/schemas/OrderMoneyAmounts"
        pricing_options:
          $ref: "#/components/schemas/OrderPricingOptions"
        reference_id:
          description: |-
            A client-specified ID to associate an entity in another system
            with this order.
          maxLength: 40
          type: string
        refunds:
          description: The refunds that are part of this order.
          items:
            $ref: "#/components/schemas/Refund"
          type: array
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        return_amounts:
          $ref: "#/components/schemas/OrderMoneyAmounts"
        returns:
          description: |-
            A collection of items from sale orders being returned in this one. Normally part of an
            itemized return or exchange. There is exactly one `Return` object per sale `Order` being
            referenced.
          items:
            $ref: "#/components/schemas/OrderReturn"
          type: array
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        rewards:
          description: A set-like list of Rewards that have been added to the Order.
          items:
            $ref: "#/components/schemas/OrderReward"
          type: array
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        rounding_adjustment:
          $ref: "#/components/schemas/OrderRoundingAdjustment"
        service_charges:
          description: A list of service charges applied to the order.
          items:
            $ref: "#/components/schemas/OrderServiceCharge"
          type: array
        source:
          $ref: "#/components/schemas/OrderSource"
        state:
          description: "The current state of the order: `OPEN`, `COMPLETED`, or `CANCELED`."
          type: string
        taxes:
          description: |-
            The list of all taxes associated with the order.

            Taxes can be scoped to either `ORDER` or `LINE_ITEM`. For taxes with `LINE_ITEM` scope, an
            `OrderLineItemAppliedTax` must be added to each line item that the tax applies to. For taxes
            with `ORDER` scope, the server generates an `OrderLineItemAppliedTax` for every line item.

            On reads, each tax in the list includes the total amount of that tax applied to the order.

            __IMPORTANT__: If `LINE_ITEM` scope is set on any taxes in this field, using the deprecated
            `line_items.taxes` field results in an error. Use `line_items.applied_taxes`
            instead.
          items:
            $ref: "#/components/schemas/OrderLineItemTax"
          type: array
        tenders:
          description: The tenders that were used to pay for the order.
          items:
            $ref: "#/components/schemas/Tender"
          type: array
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        total_discount_money:
          $ref: "#/components/schemas/Money"
        total_money:
          $ref: "#/components/schemas/Money"
        total_service_charge_money:
          $ref: "#/components/schemas/Money"
        total_tax_money:
          $ref: "#/components/schemas/Money"
        total_tip_money:
          $ref: "#/components/schemas/Money"
        updated_at:
          description: The timestamp for when the order was last updated, in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        version:
          description: |-
            The version number, which is incremented each time an update is committed to the order.
            Orders not created through the API do not include a version number and
            therefore cannot be updated.

            [Read more about working with versions](https://developer.squareup.com/docs/orders-api/manage-orders#update-orders).
          type: integer
          x-is-beta: true
          x-release-status: BETA
      required:
        - location_id
      type: object
      x-release-status: PUBLIC
    OrderCreated:
      description: ""
      properties:
        created_at:
          description: The timestamp for when the order was created, in RFC 3339 format.
          type: string
          x-read-only: true
        location_id:
          description: The ID of the seller location that this order is associated with.
          type: string
        order_id:
          description: The order's unique ID.
          type: string
        state:
          description: The state of the order.
          type: string
        version:
          description: |-
            The version number, which is incremented each time an update is committed to the order.
            Orders that were not created through the API do not include a version number and
            therefore cannot be updated.

            [Read more about working with versions.](https://developer.squareup.com/docs/orders-api/manage-orders#update-orders)
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderCreatedObject:
      description: ""
      properties:
        order_created:
          $ref: "#/components/schemas/OrderCreated"
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderEntry:
      description: |-
        A lightweight description of an [order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) that is returned when 
        `returned_entries` is `true` on a [SearchOrdersRequest](https://developer.squareup.com/reference/square_2021-08-18/orders-api/search-orders).
      properties:
        location_id:
          description: The location ID the order belongs to.
          type: string
        order_id:
          description: The ID of the order.
          type: string
        version:
          description: |-
            The version number, which is incremented each time an update is committed to the order.
            Orders that were not created through the API do not include a version number and
            therefore cannot be updated.

            [Read more about working with versions.](https://developer.squareup.com/docs/orders-api/manage-orders#update-orders)
          type: integer
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderFulfillment:
      description: Contains details about how to fulfill this order.
      properties:
        metadata:
          additionalProperties:
            type: string
          description: |-
            Application-defined data attached to this fulfillment. Metadata fields are intended
            to store descriptive references or associations with an entity in another system or store brief
            information about the object. Square does not process this field; it only stores and returns it
            in relevant API calls. Do not use metadata to store any sensitive information (such as personally
            identifiable information or card details).

            Keys written by applications must be 60 characters or less and must be in the character set
            `[a-zA-Z0-9_-]`. Entries can also include metadata generated by Square. These keys are prefixed
            with a namespace, separated from the key with a ':' character.

            Values have a maximum length of 255 characters.

            An application can have up to 10 entries per metadata field.

            Entries written by applications are private and can only be read or modified by the same
            application.

            For more information, see [Metadata](https://developer.squareup.com/docs/build-basics/metadata).
          type: object
          x-is-beta: true
          x-release-status: BETA
        pickup_details:
          $ref: "#/components/schemas/OrderFulfillmentPickupDetails"
        shipment_details:
          $ref: "#/components/schemas/OrderFulfillmentShipmentDetails"
        state:
          description: The state of the fulfillment.
          type: string
        type:
          description: The type of the fulfillment.
          type: string
        uid:
          description: A unique ID that identifies the fulfillment only within this order.
          maxLength: 60
          type: string
          x-is-beta: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderFulfillmentPickupDetails:
      description: Contains details necessary to fulfill a pickup order.
      properties:
        accepted_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            indicating when the fulfillment was accepted. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        auto_complete_duration:
          description: |-
            The duration of time after which an open and accepted pickup fulfillment
            is automatically moved to the `COMPLETED` state. The duration must be in RFC 3339
            format (for example, "P1W3D").

            If not set, this pickup fulfillment remains accepted until it is canceled or completed.
          type: string
        cancel_reason:
          description: "A description of why the pickup was canceled. The maximum length: 100 characters."
          maxLength: 100
          type: string
        canceled_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            indicating when the fulfillment was canceled. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        curbside_pickup_details:
          $ref: "#/components/schemas/OrderFulfillmentPickupDetailsCurbsidePickupDetails"
        expired_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when the fulfillment expired. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        expires_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            indicating when this fulfillment expires if it is not accepted. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z"). The expiration time can only be set up to 7 days in the future.
            If `expires_at` is not set, this pickup fulfillment is automatically accepted when 
            placed.
          type: string
        is_curbside_pickup:
          description: If set to `true`, indicates that this pickup order is for curbside pickup, not in-store pickup.
          type: boolean
          x-is-beta: true
          x-release-status: BETA
        note:
          description: |-
            A note meant to provide additional instructions about the pickup
            fulfillment displayed in the Square Point of Sale application and set by the API.
          maxLength: 500
          type: string
        picked_up_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when the fulfillment was picked up by the recipient. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        pickup_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            that represents the start of the pickup window. Must be in RFC 3339 timestamp format, e.g., 
            "2016-09-04T23:59:33.123Z".

            For fulfillments with the schedule type `ASAP`, this is automatically set
            to the current time plus the expected duration to prepare the fulfillment.
          type: string
        pickup_window_duration:
          description: |-
            The window of time in which the order should be picked up after the `pickup_at` timestamp.
            Must be in RFC 3339 duration format, e.g., "P1W3D". Can be used as an
            informational guideline for merchants.
          type: string
        placed_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            indicating when the fulfillment was placed. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        prep_time_duration:
          description: |-
            The duration of time it takes to prepare this fulfillment.
            The duration must be in RFC 3339 format (for example, "P1W3D").
          type: string
        ready_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            indicating when the fulfillment is marked as ready for pickup. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        recipient:
          $ref: "#/components/schemas/OrderFulfillmentRecipient"
        rejected_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            indicating when the fulfillment was rejected. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        schedule_type:
          description: The schedule type of the pickup fulfillment. Defaults to `SCHEDULED`.
          type: string
      type: object
      x-release-status: PUBLIC
    OrderFulfillmentPickupDetailsCurbsidePickupDetails:
      description: Specific details for curbside pickup.
      properties:
        buyer_arrived_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) 
            indicating when the buyer arrived and is waiting for pickup. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
        curbside_details:
          description: Specific details for curbside pickup, such as parking number and vehicle model.
          maxLength: 250
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderFulfillmentPickupDetailsScheduleType:
      description: The schedule type of the pickup fulfillment.
      enum:
        - SCHEDULED
        - ASAP
      type: string
      x-enum-elements:
        - description: Indicates that the fulfillment will be picked up at a scheduled pickup time.
          name: SCHEDULED
        - description: |-
            Indicates that the fulfillment will be picked up as soon as possible and
            should be prepared immediately.
          name: ASAP
      x-release-status: PUBLIC
    OrderFulfillmentRecipient:
      description: Contains information about the recipient of a fulfillment.
      properties:
        address:
          $ref: "#/components/schemas/Address"
        customer_id:
          description: |-
            The customer ID of the customer associated with the fulfillment.

            If `customer_id` is provided, the fulfillment recipient's `display_name`,
            `email_address`, and `phone_number` are automatically populated from the
            targeted customer profile. If these fields are set in the request, the request
            values overrides the information from the customer profile. If the
            targeted customer profile does not contain the necessary information and
            these fields are left unset, the request results in an error.
          maxLength: 191
          type: string
        display_name:
          description: |-
            The display name of the fulfillment recipient.

            If provided, the display name overrides the value pulled from the customer profile indicated by `customer_id`.
          maxLength: 255
          type: string
        email_address:
          description: |-
            The email address of the fulfillment recipient.

            If provided, the email address overrides the value pulled from the customer profile indicated by `customer_id`.
          maxLength: 255
          type: string
        phone_number:
          description: |-
            The phone number of the fulfillment recipient.

            If provided, the phone number overrides the value pulled from the customer profile indicated by `customer_id`.
          maxLength: 17
          type: string
      type: object
      x-release-status: PUBLIC
    OrderFulfillmentShipmentDetails:
      description: Contains the details necessary to fulfill a shipment order.
      properties:
        cancel_reason:
          description: A description of why the shipment was canceled.
          maxLength: 100
          type: string
        canceled_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating the shipment was canceled.
            The timestamp must be in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z").
          type: string
        carrier:
          description: The shipping carrier being used to ship this fulfillment (such as UPS, FedEx, or USPS).
          maxLength: 50
          type: string
        expected_shipped_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when the shipment is expected to be delivered to the shipping carrier.
            The timestamp must be in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z").
          type: string
        failed_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when the shipment failed to be completed. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        failure_reason:
          description: A description of why the shipment failed to be completed.
          maxLength: 100
          type: string
        in_progress_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when this fulfillment was moved to the `RESERVED` state, which  indicates that preparation
            of this shipment has begun. The timestamp must be in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        packaged_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when this fulfillment was moved to the `PREPARED` state, which indicates that the
            fulfillment is packaged. The timestamp must be in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        placed_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when the shipment was requested. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        recipient:
          $ref: "#/components/schemas/OrderFulfillmentRecipient"
        shipped_at:
          description: |-
            The [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates)
            indicating when this fulfillment was moved to the `COMPLETED` state, which indicates that
            the fulfillment has been given to the shipping carrier. The timestamp must be in RFC 3339 format
            (for example, "2016-09-04T23:59:33.123Z").
          type: string
          x-read-only: true
        shipping_note:
          description: A note with additional information for the shipping carrier.
          maxLength: 500
          type: string
        shipping_type:
          description: |-
            A description of the type of shipping product purchased from the carrier
            (such as First Class, Priority, or Express).
          maxLength: 50
          type: string
        tracking_number:
          description: The reference number provided by the carrier to track the shipment's progress.
          maxLength: 100
          type: string
        tracking_url:
          description: A link to the tracking webpage on the carrier's website.
          maxLength: 2000
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderFulfillmentState:
      description: The current state of this fulfillment.
      enum:
        - PROPOSED
        - RESERVED
        - PREPARED
        - COMPLETED
        - CANCELED
        - FAILED
      type: string
      x-enum-elements:
        - description: Indicates that the fulfillment has been proposed.
          name: PROPOSED
        - description: Indicates that the fulfillment has been reserved.
          name: RESERVED
        - description: Indicates that the fulfillment has been prepared.
          name: PREPARED
        - description: Indicates that the fulfillment was successfully completed.
          name: COMPLETED
        - description: Indicates that the fulfillment was canceled.
          name: CANCELED
        - description: |-
            Indicates that the fulfillment failed to be completed, but was not explicitly
            canceled.
          name: FAILED
      x-release-status: PUBLIC
    OrderFulfillmentType:
      description: The type of fulfillment.
      enum:
        - PICKUP
        - SHIPMENT
      type: string
      x-enum-elements:
        - description: |-
            A fulfillment to be picked up from a physical [location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location)
            by a recipient.
          name: PICKUP
        - description: A fulfillment to be shipped by a shipping carrier.
          name: SHIPMENT
      x-release-status: PUBLIC
    OrderFulfillmentUpdated:
      description: ""
      properties:
        created_at:
          description: The timestamp for when the order was created, in RFC 3339 format.
          type: string
          x-read-only: true
        fulfillment_update:
          description: The fulfillments that were updated with this version change.
          items:
            $ref: "#/components/schemas/OrderFulfillmentUpdatedUpdate"
          type: array
        location_id:
          description: The ID of the seller location that this order is associated with.
          type: string
        order_id:
          description: The order's unique ID.
          type: string
        state:
          description: The state of the order.
          type: string
        updated_at:
          description: The timestamp for when the order was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
        version:
          description: |-
            The version number, which is incremented each time an update is committed to the order.
            Orders that were not created through the API do not include a version number and
            therefore cannot be updated.

            [Read more about working with versions.](https://developer.squareup.com/docs/orders-api/manage-orders#update-orders)
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderFulfillmentUpdatedObject:
      description: ""
      properties:
        order_fulfillment_updated:
          $ref: "#/components/schemas/OrderFulfillmentUpdated"
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderFulfillmentUpdatedUpdate:
      description: Information about fulfillment updates.
      properties:
        fulfillment_uid:
          description: A unique ID that identifies the fulfillment only within this order.
          type: string
        new_state:
          description: |-
            The state of the fulfillment after the change. The state might be equal to `old_state` if a non-state
            field was changed on the fulfillment (such as the tracking number).
          type: string
        old_state:
          description: |-
            The state of the fulfillment before the change.
            The state is not populated if the fulfillment is created with this new `Order` version.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderLineItem:
      description: |-
        Represents a line item in an order. Each line item describes a different
        product to purchase, with its own quantity and price details.
      properties:
        applied_discounts:
          description: |-
            The list of references to discounts applied to this line item. Each
            `OrderLineItemAppliedDiscount` has a `discount_uid` that references the `uid` of a top-level
            `OrderLineItemDiscounts` applied to the line item. On reads, the amount
            applied is populated.

            An `OrderLineItemAppliedDiscount` is automatically created on every line item for all
            `ORDER` scoped discounts that are added to the order. `OrderLineItemAppliedDiscount` records
            for `LINE_ITEM` scoped discounts must be added in requests for the discount to apply to any
            line items.

            To change the amount of a discount, modify the referenced top-level discount.
          items:
            $ref: "#/components/schemas/OrderLineItemAppliedDiscount"
          type: array
          x-is-beta: true
          x-release-status: BETA
        applied_taxes:
          description: |-
            The list of references to taxes applied to this line item. Each
            `OrderLineItemAppliedTax` has a `tax_uid` that references the `uid` of a
            top-level `OrderLineItemTax` applied to the line item. On reads, the
            amount applied is populated.

            An `OrderLineItemAppliedTax` is automatically created on every line
            item for all `ORDER` scoped taxes added to the order. `OrderLineItemAppliedTax`
            records for `LINE_ITEM` scoped taxes must be added in requests for the tax
            to apply to any line items.

            To change the amount of a tax, modify the referenced top-level tax.
          items:
            $ref: "#/components/schemas/OrderLineItemAppliedTax"
          type: array
          x-is-beta: true
          x-release-status: BETA
        base_price_money:
          $ref: "#/components/schemas/Money"
        catalog_object_id:
          description: The [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) ID applied to this line item.
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this line item references.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        gross_sales_money:
          $ref: "#/components/schemas/Money"
        item_type:
          description: |-
            The type of line item: an itemized sale, a non-itemized sale (custom amount), or the
            activation or reloading of a gift card.
          type: string
          x-is-beta: true
          x-release-status: BETA
        metadata:
          additionalProperties:
            type: string
          description: |-
            Application-defined data attached to this line item. Metadata fields are intended
            to store descriptive references or associations with an entity in another system or store brief
            information about the object. Square does not process this field; it only stores and returns it
            in relevant API calls. Do not use metadata to store any sensitive information (such as personally
            identifiable information or card details).

            Keys written by applications must be 60 characters or less and must be in the character set
            `[a-zA-Z0-9_-]`. Entries can also include metadata generated by Square. These keys are prefixed
            with a namespace, separated from the key with a ':' character.

            Values have a maximum length of 255 characters.

            An application can have up to 10 entries per metadata field.

            Entries written by applications are private and can only be read or modified by the same
            application.

            For more information, see [Metadata](https://developer.squareup.com/docs/build-basics/metadata).
          type: object
          x-is-beta: true
          x-release-status: BETA
        modifiers:
          description: The [CatalogModifier](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifier)s applied to this line item.
          items:
            $ref: "#/components/schemas/OrderLineItemModifier"
          type: array
        name:
          description: The name of the line item.
          maxLength: 512
          type: string
        note:
          description: The note of the line item.
          maxLength: 2000
          type: string
        pricing_blocklists:
          $ref: "#/components/schemas/OrderLineItemPricingBlocklists"
        quantity:
          description: |-
            The quantity purchased, formatted as a decimal number.
            For example, `"3"`.

            Line items with a quantity of `"0"` are automatically removed
            when paying for or otherwise completing the order.

            Line items with a `quantity_unit` can have non-integer quantities.
            For example, `"1.70000"`.
          maxLength: 12
          minLength: 1
          type: string
        quantity_unit:
          $ref: "#/components/schemas/OrderQuantityUnit"
        total_discount_money:
          $ref: "#/components/schemas/Money"
        total_money:
          $ref: "#/components/schemas/Money"
        total_tax_money:
          $ref: "#/components/schemas/Money"
        uid:
          description: A unique ID that identifies the line item only within this order.
          maxLength: 60
          type: string
          x-is-beta: true
          x-release-status: BETA
        variation_name:
          description: The name of the variation applied to this line item.
          maxLength: 255
          type: string
        variation_total_price_money:
          $ref: "#/components/schemas/Money"
      required:
        - quantity
      type: object
      x-release-status: PUBLIC
    OrderLineItemAppliedDiscount:
      description: |-
        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.
        Line-item scoped discounts must have applied discounts added manually for any applicable line
        items. The corresponding applied money is automatically computed based on participating
        line items.
      properties:
        applied_money:
          $ref: "#/components/schemas/Money"
        discount_uid:
          description: |-
            The `uid` of the discount that the applied discount represents. It must
            reference a discount present in the `order.discounts` field.

            This field is immutable. To change which discounts apply to a line item,
            you must delete the discount and re-add it as a new `OrderLineItemAppliedDiscount`.
          maxLength: 60
          minLength: 1
          type: string
        uid:
          description: A unique ID that identifies the applied discount only within this order.
          maxLength: 60
          type: string
      required:
        - discount_uid
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderLineItemAppliedTax:
      description: |-
        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 taxes must be referenced from any applicable line items.
        The corresponding applied money is automatically computed, based on the
        set of participating line items.
      properties:
        applied_money:
          $ref: "#/components/schemas/Money"
        tax_uid:
          description: |-
            The `uid` of the tax for which this applied tax represents. It must reference
            a tax present in the `order.taxes` field.

            This field is immutable. To change which taxes apply to a line item, delete and add a new
            `OrderLineItemAppliedTax`.
          maxLength: 60
          minLength: 1
          type: string
        uid:
          description: A unique ID that identifies the applied tax only within this order.
          maxLength: 60
          type: string
      required:
        - tax_uid
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderLineItemDiscount:
      description: |-
        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 totals.
        The amount distributed to each line item is relative to the
        amount contributed by the item to the order subtotal.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        applied_money:
          $ref: "#/components/schemas/Money"
        catalog_object_id:
          description: The catalog object ID referencing [CatalogDiscount](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogDiscount).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this discount references.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        metadata:
          additionalProperties:
            type: string
          description: |-
            Application-defined data attached to this discount. Metadata fields are intended
            to store descriptive references or associations with an entity in another system or store brief
            information about the object. Square does not process this field; it only stores and returns it
            in relevant API calls. Do not use metadata to store any sensitive information (such as personally
            identifiable information or card details).

            Keys written by applications must be 60 characters or less and must be in the character set
            `[a-zA-Z0-9_-]`. Entries can also include metadata generated by Square. These keys are prefixed
            with a namespace, separated from the key with a ':' character.

            Values have a maximum length of 255 characters.

            An application can have up to 10 entries per metadata field.

            Entries written by applications are private and can only be read or modified by the same
            application.

            For more information, see [Metadata](https://developer.squareup.com/docs/build-basics/metadata).
          type: object
          x-is-beta: true
          x-release-status: BETA
        name:
          description: The discount's name.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The percentage of the discount, as a string representation of a decimal number.
            A value of `7.25` corresponds to a percentage of 7.25%.

            `percentage` is not set for amount-based discounts.
          maxLength: 10
          type: string
        pricing_rule_id:
          description: |-
            The object ID of a [pricing rule](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogPricingRule) to be applied 
            automatically to this discount. The specification and application of the discounts, to 
            which a `pricing_rule_id` is assigned, are completely controlled by the corresponding 
            pricing rule.
          type: string
          x-read-only: true
        reward_ids:
          description: |-
            The reward IDs corresponding to this discount. The application and
            specification of discounts that have `reward_ids` are completely controlled by the backing
            criteria corresponding to the reward tiers of the rewards that are added to the order
            through the Loyalty API. To manually unapply discounts that are the result of added rewards,
            the rewards must be removed from the order through the Loyalty API.
          items:
            type: string
          type: array
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        scope:
          description: |-
            Indicates the level at which the discount applies. For `ORDER` scoped discounts,
            Square generates references in `applied_discounts` on all order line items that do
            not have them. For `LINE_ITEM` scoped discounts, the discount only applies to line items
            with a discount reference in their `applied_discounts` field.

            This field is immutable. To change the scope of a discount, you must delete
            the discount and re-add it as a new discount.
          type: string
        type:
          description: |-
            The type of the discount.

            Discounts that do not reference a catalog object ID must have a type of
            `FIXED_PERCENTAGE` or `FIXED_AMOUNT`.
          type: string
        uid:
          description: A unique ID that identifies the discount only within this order.
          maxLength: 60
          type: string
          x-is-beta: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderLineItemDiscountScope:
      description: Indicates whether this is a line-item or order-level discount.
      enum:
        - OTHER_DISCOUNT_SCOPE
        - LINE_ITEM
        - ORDER
      type: string
      x-enum-elements:
        - description: |-
            Used for reporting only.
            The original transaction discount scope is currently not supported by the API.
          name: OTHER_DISCOUNT_SCOPE
        - description: |-
            The discount should be applied to only line items specified by
            `OrderLineItemAppliedDiscount` reference records.
          name: LINE_ITEM
        - description: The discount should be applied to the entire order.
          name: ORDER
      x-release-status: PUBLIC
    OrderLineItemDiscountType:
      description: Indicates how the discount is applied to the associated line item or order.
      enum:
        - UNKNOWN_DISCOUNT
        - FIXED_PERCENTAGE
        - FIXED_AMOUNT
        - VARIABLE_PERCENTAGE
        - VARIABLE_AMOUNT
      type: string
      x-enum-elements:
        - description: |-
            Used for reporting only.
            The original transaction discount type is currently not supported by the API.
          name: UNKNOWN_DISCOUNT
        - description: Apply the discount as a fixed percentage (such as 5%) off the item price.
          name: FIXED_PERCENTAGE
        - description: Apply the discount as a fixed monetary value (such as $1.00) off the item price.
          name: FIXED_AMOUNT
        - description: |-
            Apply the discount as a variable percentage based on the item
            price.

            The specific discount percentage of a `VARIABLE_PERCENTAGE` discount
            is assigned at the time of the purchase.
          name: VARIABLE_PERCENTAGE
        - description: |-
            Apply the discount as a variable amount based on the item price.

            The specific discount amount of a `VARIABLE_AMOUNT` discount
            is assigned at the time of the purchase.
          name: VARIABLE_AMOUNT
      x-release-status: PUBLIC
    OrderLineItemItemType:
      description: Represents the line item type.
      enum:
        - ITEM
        - CUSTOM_AMOUNT
        - GIFT_CARD
      type: string
      x-enum-elements:
        - description: Indicates that the line item is an itemized sale.
          name: ITEM
        - description: Indicates that the line item is a non-itemized sale.
          name: CUSTOM_AMOUNT
        - description: |-
            Indicates that the line item is a gift card sale. Gift cards sold through
            the Orders API are sold in an unactivated state and can be activated through the
            Gift Cards API using the line item `uid`.
          name: GIFT_CARD
      x-is-beta: true
      x-release-status: BETA
    OrderLineItemModifier:
      description: A [CatalogModifier](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifier).
      properties:
        base_price_money:
          $ref: "#/components/schemas/Money"
        catalog_object_id:
          description: The catalog object ID referencing [CatalogModifier](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifier).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this modifier references.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        name:
          description: The name of the item modifier.
          maxLength: 255
          type: string
        total_price_money:
          $ref: "#/components/schemas/Money"
        uid:
          description: A unique ID that identifies the modifier only within this order.
          maxLength: 60
          type: string
          x-is-beta: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderLineItemPricingBlocklists:
      description: |-
        Describes pricing adjustments that are blocked from manual and 
        automatic application to a line item. For more information, see 
        [Apply Taxes and Discounts](https://developer.squareup.com/docs/orders-api/apply-taxes-and-discounts).
      properties:
        blocked_discounts:
          description: |-
            A list of discounts blocked from applying to the line item. 
            Discounts can be blocked by the `discount_uid` (for ad hoc discounts) or 
            the `discount_catalog_object_id` (for catalog discounts).
          items:
            $ref: "#/components/schemas/OrderLineItemPricingBlocklistsBlockedDiscount"
          type: array
        blocked_taxes:
          description: |-
            A list of taxes blocked from applying to the line item. 
            Taxes can be blocked by the `tax_uid` (for ad hoc taxes) or 
            the `tax_catalog_object_id` (for catalog taxes).
          items:
            $ref: "#/components/schemas/OrderLineItemPricingBlocklistsBlockedTax"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderLineItemPricingBlocklistsBlockedDiscount:
      description: |-
        A discount to block from applying to a line item. The discount must be 
        identified by either `discount_uid` or `discount_catalog_object_id`, but not both.
      properties:
        discount_catalog_object_id:
          description: |-
            The `catalog_object_id` of the discount that should be blocked. 
            Use this field to block catalog discounts. For ad hoc discounts, use the 
            `discount_uid` field.
          maxLength: 192
          type: string
        discount_uid:
          description: |-
            The `uid` of the discount that should be blocked. Use this field to block 
            ad hoc discounts. For catalog discounts, use the `discount_catalog_object_id` field.
          maxLength: 60
          type: string
        uid:
          description: A unique ID of the `BlockedDiscount` within the order.
          maxLength: 60
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderLineItemPricingBlocklistsBlockedTax:
      description: |-
        A tax to block from applying to a line item. The tax must be 
        identified by either `tax_uid` or `tax_catalog_object_id`, but not both.
      properties:
        tax_catalog_object_id:
          description: |-
            The `catalog_object_id` of the tax that should be blocked. 
            Use this field to block catalog taxes. For ad hoc taxes, use the 
            `tax_uid` field.
          maxLength: 192
          type: string
        tax_uid:
          description: |-
            The `uid` of the tax that should be blocked. Use this field to block 
            ad hoc taxes. For catalog, taxes use the `tax_catalog_object_id` field.
          maxLength: 60
          type: string
        uid:
          description: A unique ID of the `BlockedTax` within the order.
          maxLength: 60
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderLineItemTax:
      description: |-
        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 amount distributed to each line item is relative to the amount the item
        contributes to the order subtotal.
      properties:
        applied_money:
          $ref: "#/components/schemas/Money"
        auto_applied:
          description: |-
            Determines whether the tax was automatically applied to the order based on
            the catalog configuration. For an example, see 
            [Automatically Apply Taxes to an Order](https://developer.squareup.com/docs/orders-api/apply-taxes-and-discounts/auto-apply-taxes).
          type: boolean
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        catalog_object_id:
          description: The catalog object ID referencing [CatalogTax](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogTax).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this tax references.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        metadata:
          additionalProperties:
            type: string
          description: |-
            Application-defined data attached to this tax. Metadata fields are intended
            to store descriptive references or associations with an entity in another system or store brief
            information about the object. Square does not process this field; it only stores and returns it
            in relevant API calls. Do not use metadata to store any sensitive information (such as personally
            identifiable information or card details).

            Keys written by applications must be 60 characters or less and must be in the character set
            `[a-zA-Z0-9_-]`. Entries can also include metadata generated by Square. These keys are prefixed
            with a namespace, separated from the key with a ':' character.

            Values have a maximum length of 255 characters.

            An application can have up to 10 entries per metadata field.

            Entries written by applications are private and can only be read or modified by the same
            application.

            For more information, see [Metadata](https://developer.squareup.com/docs/build-basics/metadata).
          type: object
          x-is-beta: true
          x-release-status: BETA
        name:
          description: The tax's name.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The percentage of the tax, as a string representation of a decimal
            number. For example, a value of `"7.25"` corresponds to a percentage of
            7.25%.
          maxLength: 10
          type: string
        scope:
          description: |-
            Indicates the level at which the tax applies. For `ORDER` scoped taxes,
            Square generates references in `applied_taxes` on all order line items that do
            not have them. For `LINE_ITEM` scoped taxes, the tax only applies to line items
            with references in their `applied_taxes` field.

            This field is immutable. To change the scope, you must delete the tax and
            re-add it as a new tax.
          type: string
        type:
          description: Indicates the calculation method used to apply the tax.
          type: string
        uid:
          description: A unique ID that identifies the tax only within this order.
          maxLength: 60
          type: string
          x-is-beta: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderLineItemTaxScope:
      description: Indicates whether this is a line-item or order-level tax.
      enum:
        - OTHER_TAX_SCOPE
        - LINE_ITEM
        - ORDER
      type: string
      x-enum-elements:
        - description: |-
            Used for reporting only.
            The original transaction tax scope is currently not supported by the API.
          name: OTHER_TAX_SCOPE
        - description: |-
            The tax should be applied only to line items specified by
            the `OrderLineItemAppliedTax` reference records.
          name: LINE_ITEM
        - description: The tax should be applied to the entire order.
          name: ORDER
      x-release-status: PUBLIC
    OrderLineItemTaxType:
      description: Indicates how the tax is applied to the associated line item or order.
      enum:
        - UNKNOWN_TAX
        - ADDITIVE
        - INCLUSIVE
      type: string
      x-enum-elements:
        - description: |-
            Used for reporting only.
            The original transaction tax type is currently not supported by the API.
          name: UNKNOWN_TAX
        - description: |-
            The tax is an additive tax. The tax amount is added on top of the price.
            For example, an item with a cost of 1.00 USD and a 10% additive tax has a total
            cost to the buyer of 1.10 USD.
          name: ADDITIVE
        - description: |-
            The tax is an inclusive tax. Inclusive taxes are already included
            in the line item price or order total. For example, an item with a cost of
            1.00 USD and a 10% inclusive tax has a pretax cost of 0.91 USD
            (91 cents) and a 0.09 (9 cents) tax for a total cost of 1.00 USD to
            the buyer.
          name: INCLUSIVE
      x-release-status: PUBLIC
    OrderMoneyAmounts:
      description: A collection of various money amounts.
      properties:
        discount_money:
          $ref: "#/components/schemas/Money"
        service_charge_money:
          $ref: "#/components/schemas/Money"
        tax_money:
          $ref: "#/components/schemas/Money"
        tip_money:
          $ref: "#/components/schemas/Money"
        total_money:
          $ref: "#/components/schemas/Money"
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderPricingOptions:
      description: |-
        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 are based on preconfigured
        [pricing rules](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogPricingRule).
      properties:
        auto_apply_discounts:
          description: |-
            The option to determine whether pricing rule-based
            discounts are automatically applied to an order.
          type: boolean
        auto_apply_taxes:
          description: |-
            The option to determine whether rule-based taxes are automatically
            applied to an order when the criteria of the corresponding rules are met.
          type: boolean
          x-is-beta: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderQuantityUnit:
      description: |-
        Contains the measurement unit for a quantity and a precision that
        specifies the number of digits after the decimal point for decimal quantities.
      properties:
        catalog_version:
          description: |-
            The version of the catalog object that this measurement unit references.

            This field is set when this is a catalog-backed measurement unit.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        measurement_unit:
          $ref: "#/components/schemas/MeasurementUnit"
        precision:
          description: |-
            For non-integer quantities, represents the number of digits after the decimal point that are
            recorded for this quantity.

            For example, a precision of 1 allows quantities such as `"1.0"` and `"1.1"`, but not `"1.01"`.

            Min: 0. Max: 5.
          type: integer
      type: object
      x-release-status: PUBLIC
    OrderReturn:
      description: The set of line items, service charges, taxes, discounts, tips, and other items being returned in an order.
      properties:
        return_amounts:
          $ref: "#/components/schemas/OrderMoneyAmounts"
        return_discounts:
          description: |-
            A collection of references to discounts being returned for an order, including the total
            applied discount amount to be returned. The discounts must reference a top-level discount ID
            from the source order.
          items:
            $ref: "#/components/schemas/OrderReturnDiscount"
          type: array
        return_line_items:
          description: A collection of line items that are being returned.
          items:
            $ref: "#/components/schemas/OrderReturnLineItem"
          type: array
        return_service_charges:
          description: A collection of service charges that are being returned.
          items:
            $ref: "#/components/schemas/OrderReturnServiceCharge"
          type: array
          x-read-only: true
        return_taxes:
          description: |-
            A collection of references to taxes being returned for an order, including the total
            applied tax amount to be returned. The taxes must reference a top-level tax ID from the source
            order.
          items:
            $ref: "#/components/schemas/OrderReturnTax"
          type: array
        rounding_adjustment:
          $ref: "#/components/schemas/OrderRoundingAdjustment"
        source_order_id:
          description: |-
            An order that contains the original sale of these return line items. This is unset
            for unlinked returns.
          type: string
        uid:
          description: A unique ID that identifies the return only within this order.
          maxLength: 60
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderReturnDiscount:
      description: |-
        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 non-zero return line item totals.
        The amount distributed to each return line item is relative to that item’s contribution to the
        order subtotal.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        applied_money:
          $ref: "#/components/schemas/Money"
        catalog_object_id:
          description: The catalog object ID referencing [CatalogDiscount](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogDiscount).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this discount references.
          format: int64
          type: integer
        name:
          description: The discount's name.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The percentage of the tax, as a string representation of a decimal number.
            A value of `"7.25"` corresponds to a percentage of 7.25%.

            `percentage` is not set for amount-based discounts.
          maxLength: 10
          type: string
        scope:
          description: |-
            Indicates the level at which the `OrderReturnDiscount` applies. For `ORDER` scoped
            discounts, the server generates references in `applied_discounts` on all
            `OrderReturnLineItem`s. For `LINE_ITEM` scoped discounts, the discount is only applied to
            `OrderReturnLineItem`s with references in their `applied_discounts` field.
          type: string
        source_discount_uid:
          description: The discount `uid` from the order that contains the original application of this discount.
          maxLength: 60
          type: string
        type:
          description: |-
            The type of the discount. If it is created by the API, it is `FIXED_PERCENTAGE` or `FIXED_AMOUNT`.

            Discounts that do not reference a catalog object ID must have a type of
            `FIXED_PERCENTAGE` or `FIXED_AMOUNT`.
          type: string
        uid:
          description: A unique ID that identifies the returned discount only within this order.
          maxLength: 60
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderReturnLineItem:
      description: The line item being returned in an order.
      properties:
        applied_discounts:
          description: |-
            The list of references to `OrderReturnDiscount` entities applied to the return line item. Each
            `OrderLineItemAppliedDiscount` has a `discount_uid` that references the `uid` of a top-level
            `OrderReturnDiscount` applied to the return line item. On reads, the applied amount
            is populated.
          items:
            $ref: "#/components/schemas/OrderLineItemAppliedDiscount"
          type: array
        applied_taxes:
          description: |-
            The list of references to `OrderReturnTax` entities applied to the return line item. Each
            `OrderLineItemAppliedTax` has a `tax_uid` that references the `uid` of a top-level
            `OrderReturnTax` applied to the return line item. On reads, the applied amount
            is populated.
          items:
            $ref: "#/components/schemas/OrderLineItemAppliedTax"
          type: array
        base_price_money:
          $ref: "#/components/schemas/Money"
        catalog_object_id:
          description: The [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) ID applied to this return line item.
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this line item references.
          format: int64
          type: integer
        gross_return_money:
          $ref: "#/components/schemas/Money"
        item_type:
          description: |-
            The type of line item: an itemized return, a non-itemized return (custom amount),
            or the return of an unactivated gift card sale.
          type: string
        name:
          description: The name of the line item.
          maxLength: 512
          type: string
        note:
          description: The note of the return line item.
          maxLength: 2000
          type: string
        quantity:
          description: |-
            The quantity returned, formatted as a decimal number.
            For example, `"3"`.

            Line items with a `quantity_unit` can have non-integer quantities.
            For example, `"1.70000"`.
          maxLength: 12
          minLength: 1
          type: string
        quantity_unit:
          $ref: "#/components/schemas/OrderQuantityUnit"
        return_modifiers:
          description: The [CatalogModifier](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifier)s applied to this line item.
          items:
            $ref: "#/components/schemas/OrderReturnLineItemModifier"
          type: array
        source_line_item_uid:
          description: The `uid` of the line item in the original sale order.
          maxLength: 60
          type: string
        total_discount_money:
          $ref: "#/components/schemas/Money"
        total_money:
          $ref: "#/components/schemas/Money"
        total_tax_money:
          $ref: "#/components/schemas/Money"
        uid:
          description: A unique ID for this return line-item entry.
          maxLength: 60
          type: string
        variation_name:
          description: The name of the variation applied to this return line item.
          maxLength: 255
          type: string
        variation_total_price_money:
          $ref: "#/components/schemas/Money"
      required:
        - quantity
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderReturnLineItemModifier:
      description: A line item modifier being returned.
      properties:
        base_price_money:
          $ref: "#/components/schemas/Money"
        catalog_object_id:
          description: The catalog object ID referencing [CatalogModifier](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogModifier).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this line item modifier references.
          format: int64
          type: integer
        name:
          description: The name of the item modifier.
          maxLength: 255
          type: string
        source_modifier_uid:
          description: |-
            The modifier `uid` from the order's line item that contains the
            original sale of this line item modifier.
          maxLength: 60
          type: string
        total_price_money:
          $ref: "#/components/schemas/Money"
        uid:
          description: A unique ID that identifies the return modifier only within this order.
          maxLength: 60
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderReturnServiceCharge:
      description: Represents the service charge applied to the original order.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        applied_money:
          $ref: "#/components/schemas/Money"
        applied_taxes:
          description: |-
            The list of references to `OrderReturnTax` entities applied to the
            `OrderReturnServiceCharge`. Each `OrderLineItemAppliedTax` has a `tax_uid`
            that references the `uid` of a top-level `OrderReturnTax` that is being
            applied to the `OrderReturnServiceCharge`. On reads, the applied amount is
            populated.
          items:
            $ref: "#/components/schemas/OrderLineItemAppliedTax"
          type: array
          x-is-beta: true
          x-release-status: BETA
        calculation_phase:
          description: The calculation phase after which to apply the service charge.
          type: string
          x-read-only: true
        catalog_object_id:
          description: The catalog object ID of the associated [OrderServiceCharge](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderServiceCharge).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this service charge references.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        name:
          description: The name of the service charge.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The percentage of the service charge, as a string representation of
            a decimal number. For example, a value of `"7.25"` corresponds to a
            percentage of 7.25%.

            Either `percentage` or `amount_money` should be set, but not both.
          maxLength: 10
          type: string
        source_service_charge_uid:
          description: |-
            The service charge `uid` from the order containing the original
            service charge. `source_service_charge_uid` is `null` for
            unlinked returns.
          maxLength: 60
          type: string
        taxable:
          description: |-
            Indicates whether the surcharge can be taxed. Service charges
            calculated in the `TOTAL_PHASE` cannot be marked as taxable.
          type: boolean
        total_money:
          $ref: "#/components/schemas/Money"
        total_tax_money:
          $ref: "#/components/schemas/Money"
        uid:
          description: A unique ID that identifies the return service charge only within this order.
          maxLength: 60
          type: string
          x-is-beta: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderReturnTax:
      description: |-
        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 return line item totals.
        The amount distributed to each return line item is relative to that item’s contribution to the
        order subtotal.
      properties:
        applied_money:
          $ref: "#/components/schemas/Money"
        catalog_object_id:
          description: The catalog object ID referencing [CatalogTax](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogTax).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this tax references.
          format: int64
          type: integer
        name:
          description: The tax's name.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The percentage of the tax, as a string representation of a decimal number.
            For example, a value of `"7.25"` corresponds to a percentage of 7.25%.
          maxLength: 10
          type: string
        scope:
          description: |-
            Indicates the level at which the `OrderReturnTax` applies. For `ORDER` scoped
            taxes, Square generates references in `applied_taxes` on all
            `OrderReturnLineItem`s. For `LINE_ITEM` scoped taxes, the tax is only applied to
            `OrderReturnLineItem`s with references in their `applied_discounts` field.
          type: string
        source_tax_uid:
          description: The tax `uid` from the order that contains the original tax charge.
          maxLength: 60
          type: string
        type:
          description: Indicates the calculation method used to apply the tax.
          type: string
        uid:
          description: A unique ID that identifies the returned tax only within this order.
          maxLength: 60
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderReward:
      description: |-
        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.
      properties:
        id:
          description: The identifier of the reward.
          minLength: 1
          type: string
        reward_tier_id:
          description: The identifier of the reward tier corresponding to this reward.
          minLength: 1
          type: string
      required:
        - id
        - reward_tier_id
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderRoundingAdjustment:
      description: |-
        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 physical denomination of the currency.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        name:
          description: The name of the rounding adjustment from the original sale order.
          type: string
        uid:
          description: A unique ID that identifies the rounding adjustment only within this order.
          maxLength: 60
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderServiceCharge:
      description: Represents a service charge applied to an order.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        applied_money:
          $ref: "#/components/schemas/Money"
        applied_taxes:
          description: |-
            The list of references to the taxes applied to this service charge. Each
            `OrderLineItemAppliedTax` has a `tax_uid` that references the `uid` of a top-level
            `OrderLineItemTax` that is being applied to this service charge. On reads, the amount applied
            is populated.

            An `OrderLineItemAppliedTax` is automatically created on every taxable service charge
            for all `ORDER` scoped taxes that are added to the order. `OrderLineItemAppliedTax` records
            for `LINE_ITEM` scoped taxes must be added in requests for the tax to apply to any taxable
            service charge. Taxable service charges have the `taxable` field set to `true` and calculated
            in the `SUBTOTAL_PHASE`.

            To change the amount of a tax, modify the referenced top-level tax.
          items:
            $ref: "#/components/schemas/OrderLineItemAppliedTax"
          type: array
          x-is-beta: true
          x-release-status: BETA
        calculation_phase:
          description: The calculation phase at which to apply the service charge.
          type: string
        catalog_object_id:
          description: The catalog object ID referencing the service charge [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject).
          maxLength: 192
          type: string
        catalog_version:
          description: The version of the catalog object that this service charge references.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        metadata:
          additionalProperties:
            type: string
          description: |-
            Application-defined data attached to this service charge. Metadata fields are intended
            to store descriptive references or associations with an entity in another system or store brief
            information about the object. Square does not process this field; it only stores and returns it
            in relevant API calls. Do not use metadata to store any sensitive information (such as personally
            identifiable information or card details).

            Keys written by applications must be 60 characters or less and must be in the character set
            `[a-zA-Z0-9_-]`. Entries can also include metadata generated by Square. These keys are prefixed
            with a namespace, separated from the key with a ':' character.

            Values have a maximum length of 255 characters.

            An application can have up to 10 entries per metadata field.

            Entries written by applications are private and can only be read or modified by the same
            application.

            For more information, see [Metadata](https://developer.squareup.com/docs/build-basics/metadata).
          type: object
          x-is-beta: true
          x-release-status: BETA
        name:
          description: The name of the service charge.
          maxLength: 255
          type: string
        percentage:
          description: |-
            The service charge percentage as a string representation of a
            decimal number. For example, `"7.25"` indicates a service charge of 7.25%.

            Exactly 1 of `percentage` or `amount_money` should be set.
          maxLength: 10
          type: string
        taxable:
          description: |-
            Indicates whether the service charge can be taxed. If set to `true`,
            order-level taxes automatically apply to the service charge. Note that
            service charges calculated in the `TOTAL_PHASE` cannot be marked as taxable.
          type: boolean
        total_money:
          $ref: "#/components/schemas/Money"
        total_tax_money:
          $ref: "#/components/schemas/Money"
        type:
          description: The type of the service charge.
          type: string
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        uid:
          description: A unique ID that identifies the service charge only within this order.
          maxLength: 60
          type: string
          x-is-beta: true
          x-release-status: BETA
      type: object
      x-release-status: PUBLIC
    OrderServiceChargeCalculationPhase:
      description: |-
        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 calculated.](https://developer.squareup.com/docs/orders-api/how-it-works#how-totals-are-calculated)
      enum:
        - SUBTOTAL_PHASE
        - TOTAL_PHASE
      type: string
      x-enum-elements:
        - description: |-
            The service charge is applied after discounts, but before
            taxes.
          name: SUBTOTAL_PHASE
        - description: |-
            The service charge is applied after all discounts and taxes
            are applied.
          name: TOTAL_PHASE
      x-release-status: PUBLIC
    OrderServiceChargeType:
      description: ""
      enum:
        - AUTO_GRATUITY
        - CUSTOM
      type: string
      x-enum-elements:
        - description: ""
          name: AUTO_GRATUITY
        - description: ""
          name: CUSTOM
      x-is-beta: true
      x-release-status: BETA
    OrderSource:
      description: Represents the origination details of an order.
      properties:
        name:
          description: |-
            The name used to identify the place (physical or digital) that an order originates.
            If unset, the name defaults to the name of the application that created the order.
          type: string
      type: object
      x-release-status: PUBLIC
    OrderState:
      description: The state of the order.
      enum:
        - OPEN
        - COMPLETED
        - CANCELED
      type: string
      x-enum-elements:
        - description: Indicates that the order is open. Open orders can be updated.
          name: OPEN
        - description: Indicates that the order is completed. Completed orders are fully paid. This is a terminal state.
          name: COMPLETED
        - description: Indicates that the order is canceled. Canceled orders are not paid. This is a terminal state.
          name: CANCELED
      x-release-status: PUBLIC
    OrderUpdated:
      description: ""
      properties:
        created_at:
          description: The timestamp for when the order was created, in RFC 3339 format.
          type: string
          x-read-only: true
        location_id:
          description: The ID of the seller location that this order is associated with.
          type: string
        order_id:
          description: The order's unique ID.
          type: string
        state:
          description: The state of the order.
          type: string
        updated_at:
          description: The timestamp for when the order was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
        version:
          description: |-
            The version number, which is incremented each time an update is committed to the order.
            Orders that were not created through the API do not include a version number and
            therefore cannot be updated.

            [Read more about working with versions.](https://developer.squareup.com/docs/orders-api/manage-orders#update-orders)
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    OrderUpdatedObject:
      description: ""
      properties:
        order_updated:
          $ref: "#/components/schemas/OrderUpdated"
      type: object
      x-is-beta: true
      x-release-status: BETA
    PayOrderRequest:
      description: |-
        Defines the fields that are included in requests to the
        [PayOrder](https://developer.squareup.com/reference/square_2021-08-18/orders-api/pay-order) endpoint.
      example:
        request_body:
          idempotency_key: c043a359-7ad9-4136-82a9-c3f1d66dcbff
          payment_ids:
            - EnZdNAlWCmfh6Mt5FMNST1o7taB
            - 0LRiVlbXVwe8ozu4KbZxd12mvaB
      properties:
        idempotency_key:
          description: |-
            A value you specify that uniquely identifies this request among requests you have sent. If
            you are unsure whether a particular payment request was completed successfully, you can reattempt
            it with the same idempotency key without worrying about duplicate payments.

            For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 192
          minLength: 1
          type: string
        order_version:
          description: The version of the order being paid. If not supplied, the latest version will be paid.
          type: integer
        payment_ids:
          description: |-
            The IDs of the [payments](https://developer.squareup.com/reference/square_2021-08-18/objects/Payment) to collect.
            The payment total must match the order total.
          items:
            type: string
          type: array
      required:
        - idempotency_key
      type: object
      x-is-beta: true
      x-release-status: BETA
    PayOrderResponse:
      description: |-
        Defines the fields that are included in the response body of a request to the
        [PayOrder](https://developer.squareup.com/reference/square_2021-08-18/orders-api/pay-order) endpoint.
      example:
        order:
          closed_at: 2019-08-06T02:47:37.140Z
          created_at: 2019-08-06T02:47:35.693Z
          id: lgwOlEityYPJtcuvKTVKT1pA986YY
          line_items:
            - base_price_money:
                amount: 500
                currency: USD
              gross_sales_money:
                amount: 500
                currency: USD
              name: Item 1
              quantity: "1"
              total_discount_money:
                amount: 0
                currency: USD
              total_money:
                amount: 500
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: QW6kofLHJK7JEKMjlSVP5C
            - base_price_money:
                amount: 750
                currency: USD
              gross_sales_money:
                amount: 1500
                currency: USD
              name: Item 2
              quantity: "2"
              total_discount_money:
                amount: 0
                currency: USD
              total_money:
                amount: 1500
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: zhw8MNfRGdFQMI2WE1UBJD
          location_id: P3CCK6HSNDAS7
          net_amounts:
            discount_money:
              amount: 0
              currency: USD
            service_charge_money:
              amount: 0
              currency: USD
            tax_money:
              amount: 0
              currency: USD
            tip_money:
              amount: 0
              currency: USD
            total_money:
              amount: 2000
              currency: USD
          source:
            name: Source Name
          state: COMPLETED
          tenders:
            - amount_money:
                amount: 1000
                currency: USD
              card_details:
                card:
                  card_brand: VISA
                  exp_month: 2
                  exp_year: 2022
                  fingerprint: sq-1-n_BL15KP87ClDa4-h2nXOI0fp5VnxNH6hfhzqhptTfAgxgLuGFcg6jIPngDz4IkkTQ
                  last_4: "1111"
                entry_method: KEYED
                status: CAPTURED
              created_at: 2019-08-06T02:47:36.293Z
              id: EnZdNAlWCmfh6Mt5FMNST1o7taB
              location_id: P3CCK6HSNDAS7
              payment_id: EnZdNAlWCmfh6Mt5FMNST1o7taB
              transaction_id: lgwOlEityYPJtcuvKTVKT1pA986YY
              type: CARD
            - amount_money:
                amount: 1000
                currency: USD
              card_details:
                card:
                  card_brand: VISA
                  exp_month: 2
                  exp_year: 2022
                  fingerprint: sq-1-n_BL15KP87ClDa4-h2nXOI0fp5VnxNH6hfhzqhptTfAgxgLuGFcg6jIPngDz4IkkTQ
                  last_4: "1111"
                entry_method: KEYED
                status: CAPTURED
              created_at: 2019-08-06T02:47:36.809Z
              id: 0LRiVlbXVwe8ozu4KbZxd12mvaB
              location_id: P3CCK6HSNDAS7
              payment_id: 0LRiVlbXVwe8ozu4KbZxd12mvaB
              transaction_id: lgwOlEityYPJtcuvKTVKT1pA986YY
              type: CARD
          total_discount_money:
            amount: 0
            currency: USD
          total_money:
            amount: 2000
            currency: USD
          total_service_charge_money:
            amount: 0
            currency: USD
          total_tax_money:
            amount: 0
            currency: USD
          updated_at: 2019-08-06T02:47:37.140Z
          version: 4
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        order:
          $ref: "#/components/schemas/Order"
      type: object
      x-is-beta: true
      x-release-status: BETA
    Payment:
      description: Represents a payment processed by the Square API.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        app_fee_money:
          $ref: "#/components/schemas/Money"
        approved_money:
          $ref: "#/components/schemas/Money"
        bank_account_details:
          $ref: "#/components/schemas/BankAccountPaymentDetails"
        billing_address:
          $ref: "#/components/schemas/Address"
        buyer_email_address:
          description: The buyer's email address.
          maxLength: 255
          type: string
          x-read-only: true
        capabilities:
          description: |-
            Actions that can be performed on this payment:
            - `EDIT_AMOUNT_UP` - The payment amount can be edited up.
            - `EDIT_AMOUNT_DOWN` - The payment amount can be edited down.
            - `EDIT_TIP_AMOUNT_UP` - The tip amount can be edited up.
            - `EDIT_TIP_AMOUNT_DOWN` - The tip amount can be edited down.
          items:
            type: string
          type: array
          x-read-only: true
        card_details:
          $ref: "#/components/schemas/CardPaymentDetails"
        cash_details:
          $ref: "#/components/schemas/CashPaymentDetails"
        created_at:
          description: The timestamp of when the payment was created, in RFC 3339 format.
          maxLength: 32
          type: string
          x-read-only: true
        customer_id:
          description: The [Customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) ID of the customer associated with the payment.
          maxLength: 191
          type: string
          x-read-only: true
        delay_action:
          description: |-
            The action to be applied to the payment when the `delay_duration` has elapsed. This field
            is read-only.

            Current values include `CANCEL`.
          type: string
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        delay_duration:
          description: |-
            The duration of time after the payment's creation when Square automatically applies the
            `delay_action` to the payment. This automatic `delay_action` applies only to payments that
            do not reach a terminal state (COMPLETED, CANCELED, or FAILED) before the `delay_duration`
            time period.

            This field is specified as a time duration, in RFC 3339 format.

            Notes:
            This feature is only supported for card payments.

            Default:

            - Card-present payments: "PT36H" (36 hours) from the creation time.
            - Card-not-present payments: "P7D" (7 days) from the creation time.
          type: string
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        delayed_until:
          description: |-
            The read-only timestamp of when the `delay_action` is automatically applied,
            in RFC 3339 format.

            Note that this field is calculated by summing the payment's `delay_duration` and `created_at`
            fields. The `created_at` field is generated by Square and might not exactly match the
            time on your local machine.
          type: string
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        employee_id:
          description: An optional ID of the employee associated with taking the payment.
          maxLength: 192
          type: string
          x-read-only: true
        external_details:
          $ref: "#/components/schemas/ExternalPaymentDetails"
        id:
          description: A unique ID for the payment.
          maxLength: 192
          type: string
          x-read-only: true
        location_id:
          description: The ID of the location associated with the payment.
          maxLength: 50
          type: string
          x-read-only: true
        note:
          description: An optional note to include when creating a payment.
          maxLength: 500
          type: string
          x-read-only: true
        order_id:
          description: The ID of the order associated with the payment.
          maxLength: 192
          type: string
          x-read-only: true
        processing_fee:
          description: The processing fees and fee adjustments assessed by Square for this payment.
          items:
            $ref: "#/components/schemas/ProcessingFee"
          type: array
          x-read-only: true
        receipt_number:
          description: |-
            The payment's receipt number.
            The field is missing if a payment is canceled.
          maxLength: 4
          type: string
          x-read-only: true
        receipt_url:
          description: |-
            The URL for the payment's receipt.
            The field is only populated for COMPLETED payments.
          maxLength: 255
          type: string
          x-read-only: true
        reference_id:
          description: |-
            An optional ID that associates the payment with an entity in
            another system.
          maxLength: 40
          type: string
          x-read-only: true
        refund_ids:
          description: A list of `refund_id`s identifying refunds for the payment.
          items:
            type: string
          type: array
          x-read-only: true
        refunded_money:
          $ref: "#/components/schemas/Money"
        risk_evaluation:
          $ref: "#/components/schemas/RiskEvaluation"
        shipping_address:
          $ref: "#/components/schemas/Address"
        source_type:
          description: |-
            The source type for this payment.

            Current values include `CARD`, `BANK_ACCOUNT`, `WALLET`, `CASH`, or `EXTERNAL`.
          maxLength: 50
          type: string
          x-read-only: true
        statement_description_identifier:
          description: |-
            Additional payment information that gets added to the customer's card statement
            as part of the statement description.

            Note that the `statement_description_identifier` might get truncated on the statement description
            to fit the required information including the Square identifier (SQ *) and the name of the
            seller taking the payment.
          type: string
          x-is-beta: true
          x-read-only: true
          x-release-status: BETA
        status:
          description: Indicates whether the payment is APPROVED, PENDING, COMPLETED, CANCELED, or FAILED.
          maxLength: 50
          type: string
          x-read-only: true
        tip_money:
          $ref: "#/components/schemas/Money"
        total_money:
          $ref: "#/components/schemas/Money"
        updated_at:
          description: The timestamp of when the payment was last updated, in RFC 3339 format.
          maxLength: 32
          type: string
          x-read-only: true
        version_token:
          description: |-
            Used for optimistic concurrency. This opaque token identifies a specific version of the
            `Payment` object.
          type: string
        wallet_details:
          $ref: "#/components/schemas/DigitalWalletDetails"
      type: object
      x-release-status: PUBLIC
    PaymentOptions:
      description: ""
      properties:
        autocomplete:
          description: |-
            Indicates whether the `Payment` objects created from this `TerminalCheckout` are automatically
            `COMPLETED` or left in an `APPROVED` state for later modification.
          type: boolean
      type: object
      x-release-status: PUBLIC
    PaymentRefund:
      description: |-
        Represents a refund of a payment made using Square. Contains information about
        the original payment and the amount of money refunded.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        app_fee_money:
          $ref: "#/components/schemas/Money"
        created_at:
          description: The timestamp of when the refund was created, in RFC 3339 format.
          maxLength: 32
          type: string
          x-read-only: true
        id:
          description: The unique ID for this refund, generated by Square.
          maxLength: 255
          minLength: 1
          type: string
        location_id:
          description: The location ID associated with the payment this refund is attached to.
          maxLength: 50
          type: string
        order_id:
          description: The ID of the order associated with the refund.
          maxLength: 192
          type: string
        payment_id:
          description: The ID of the payment associated with this refund.
          maxLength: 192
          type: string
        processing_fee:
          description: Processing fees and fee adjustments assessed by Square for this refund.
          items:
            $ref: "#/components/schemas/ProcessingFee"
          type: array
        reason:
          description: The reason for the refund.
          maxLength: 192
          type: string
        status:
          description: |-
            The refund's status:
            - `PENDING` - Awaiting approval.
            - `COMPLETED` - Successfully completed.
            - `REJECTED` - The refund was rejected.
            - `FAILED` - An error occurred.
          maxLength: 50
          type: string
        updated_at:
          description: The timestamp of when the refund was last updated, in RFC 3339 format.
          maxLength: 32
          type: string
          x-read-only: true
      required:
        - id
        - amount_money
      type: object
      x-release-status: PUBLIC
    ProcessingFee:
      description: Represents the Square processing fee.
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        effective_at:
          description: The timestamp of when the fee takes effect, in RFC 3339 format.
          type: string
        type:
          description: The type of fee assessed or adjusted. The fee type can be `INITIAL` or `ADJUSTMENT`.
          type: string
      type: object
      x-release-status: PUBLIC
    Product:
      description: Indicates the Square product used to generate an inventory change.
      enum:
        - SQUARE_POS
        - EXTERNAL_API
        - BILLING
        - APPOINTMENTS
        - INVOICES
        - ONLINE_STORE
        - PAYROLL
        - DASHBOARD
        - ITEM_LIBRARY_IMPORT
        - OTHER
      type: string
      x-enum-elements:
        - description: Square Point of Sale application.
          name: SQUARE_POS
        - description: Square Connect APIs (Transactions API, Checkout API).
          name: EXTERNAL_API
        - description: A Square subscription (various products).
          name: BILLING
        - description: Square Appointments.
          name: APPOINTMENTS
        - description: Square Invoices.
          name: INVOICES
        - description: Square Online Store.
          name: ONLINE_STORE
        - description: Square Payroll.
          name: PAYROLL
        - description: Square Dashboard
          name: DASHBOARD
        - description: Item Library Import
          name: ITEM_LIBRARY_IMPORT
        - description: A Square product that does not match any other value.
          name: OTHER
      x-release-status: PUBLIC
    ProductType:
      description: ""
      enum:
        - TERMINAL_API
      type: string
      x-enum-elements:
        - description: ""
          name: TERMINAL_API
      x-release-status: PUBLIC
    PublishInvoiceRequest:
      description: Describes a `PublishInvoice` request.
      example:
        request_body:
          idempotency_key: 32da42d0-1997-41b0-826b-f09464fc2c2e
          version: 1
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies the `PublishInvoice` request. If you do not 
            provide `idempotency_key` (or provide an empty string as the value), the endpoint 
            treats each request as independent.

            For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 128
          type: string
        version:
          description: |-
            The version of the [invoice](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) to publish.
            This must match the current version of the invoice; otherwise, the request is rejected.
          type: integer
      required:
        - version
      type: object
      x-release-status: PUBLIC
    PublishInvoiceResponse:
      description: Describes a `PublishInvoice` response.
      example:
        invoice:
          accepted_payment_methods:
            bank_account: false
            card: true
            square_gift_card: false
          created_at: 2020-06-18T17:45:13Z
          custom_fields:
            - label: Event Reference Number
              placement: ABOVE_LINE_ITEMS
              value: "Ref. #1234"
            - label: Terms of Service
              placement: BELOW_LINE_ITEMS
              value: The terms of service are...
          delivery_method: EMAIL
          description: We appreciate your business!
          id: inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
          invoice_number: inv-100
          location_id: ES0RJRZYEC39A
          order_id: CAISENgvlJ6jLWAzERDzjyHVybY
          payment_requests:
            - automatic_payment_source: NONE
              computed_amount_money:
                amount: 10000
                currency: USD
              due_date: 2030-01-24
              reminders:
                - message: Your invoice is due tomorrow
                  relative_scheduled_days: -1
                  status: PENDING
                  uid: beebd363-e47f-4075-8785-c235aaa7df11
              request_type: BALANCE
              tipping_enabled: true
              total_completed_amount_money:
                amount: 0
                currency: USD
              uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
          primary_recipient:
            customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            email_address: Amelia.Earhart@example.com
            family_name: Earhart
            given_name: Amelia
            phone_number: 1-212-555-4240
          public_url: https://squareup.com/pay-invoice/inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
          scheduled_at: 2030-01-13T10:00:00Z
          status: SCHEDULED
          timezone: America/Los_Angeles
          title: Event Planning Services
          updated_at: 2020-06-18T18:23:11Z
          version: 1
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        invoice:
          $ref: "#/components/schemas/Invoice"
      type: object
      x-release-status: PUBLIC
    QuantityRatio:
      description: A whole number or unreduced fractional ratio.
      properties:
        quantity:
          description: The whole or fractional quantity as the numerator.
          type: integer
        quantity_denominator:
          description: |-
            The whole or fractional quantity as the denominator. 
            In the case of fractional quantity this field is the denominator and quantity is the numerator.
            When unspecified, the value is `1`. For example, when `quantity=3` and `quantity_donominator` is unspecified,
            the quantity ratio is `3` or `3/1`.
          type: integer
      type: object
      x-is-beta: true
      x-release-status: BETA
    Range:
      description: The range of a number value between the specified lower and upper bounds.
      properties:
        max:
          description: The upper bound of the number range.
          type: string
        min:
          description: The lower bound of the number range.
          type: string
      type: object
      x-release-status: PUBLIC
    Reason: {}
    RedeemLoyaltyRewardRequest:
      description: A request to redeem a loyalty reward.
      example:
        request_body:
          idempotency_key: 98adc7f7-6963-473b-b29c-f3c9cdd7d994
          location_id: P034NEENMD09F
        request_params: ?reward_id=9f18ac21-233a-31c3-be77-b45840f5a810
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies this `RedeemLoyaltyReward` request. 
            Keys can be any valid string, but must be unique for every request.
          maxLength: 128
          minLength: 1
          type: string
        location_id:
          description: The ID of the [location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) where the reward is redeemed.
          minLength: 1
          type: string
      required:
        - idempotency_key
        - location_id
      type: object
      x-release-status: PUBLIC
    RedeemLoyaltyRewardResponse:
      description: A response that includes the `LoyaltyEvent` published for redeeming the reward.
      example:
        event:
          created_at: 2020-05-08T21:56:00Z
          id: 67377a6e-dbdc-369d-aa16-2e7ed422e71f
          location_id: P034NEENMD09F
          loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
          redeem_reward:
            loyalty_program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
            reward_id: 9f18ac21-233a-31c3-be77-b45840f5a810
          source: LOYALTY_API
          type: REDEEM_REWARD
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        event:
          $ref: "#/components/schemas/LoyaltyEvent"
      type: object
      x-release-status: PUBLIC
    Refund:
      description: Represents a refund processed for a Square transaction.
      properties:
        additional_recipients:
          description: |-
            Additional recipients (other than the merchant) receiving a portion of this refund.
            For example, fees assessed on a refund of a purchase by a third party integration.
          items:
            $ref: "#/components/schemas/AdditionalRecipient"
          type: array
          x-is-deprecated: true
          x-release-status: DEPRECATED
        amount_money:
          $ref: "#/components/schemas/Money"
        created_at:
          description: The timestamp for when the refund was created, in RFC 3339 format.
          maxLength: 32
          type: string
          x-read-only: true
        id:
          description: The refund's unique ID.
          maxLength: 255
          type: string
        location_id:
          description: The ID of the refund's associated location.
          maxLength: 50
          type: string
        processing_fee_money:
          $ref: "#/components/schemas/Money"
        reason:
          description: The reason for the refund being issued.
          maxLength: 192
          type: string
        status:
          description: |-
            The current status of the refund (`PENDING`, `APPROVED`, `REJECTED`,
            or `FAILED`).
          type: string
        tender_id:
          description: The ID of the refunded tender.
          maxLength: 192
          type: string
        transaction_id:
          description: The ID of the transaction that the refunded tender is part of.
          maxLength: 192
          type: string
      required:
        - id
        - location_id
        - transaction_id
        - tender_id
        - reason
        - amount_money
        - status
      type: object
      x-release-status: PUBLIC
    RefundPaymentRequest:
      description: Describes a request to refund a payment using [RefundPayment](https://developer.squareup.com/reference/square_2021-08-18/refunds-api/refund-payment).
      example:
        request_body:
          amount_money:
            amount: 100
            currency: USD
          idempotency_key: a7e36d40-d24b-11e8-b568-0800200c9a66
          payment_id: UNOE3kv2BZwqHlJ830RCt5YCuaB
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        app_fee_money:
          $ref: "#/components/schemas/Money"
        idempotency_key:
          description: |2-
             A unique string that identifies this `RefundPayment` request. The key can be any valid string
            but must be unique for every `RefundPayment` request.

            For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          minLength: 1
          type: string
        payment_id:
          description: The unique ID of the payment being refunded.
          minLength: 1
          type: string
        reason:
          description: A description of the reason for the refund.
          maxLength: 192
          type: string
      required:
        - idempotency_key
        - amount_money
        - payment_id
      type: object
      x-release-status: PUBLIC
    RefundPaymentResponse:
      description: |-
        Defines the response returned by 
        [RefundPayment](https://developer.squareup.com/reference/square_2021-08-18/refunds-api/refund-payment).

        If there are errors processing the request, the `refund` field might not be
        present, or it might be present with a status of `FAILED`.
      example:
        refund:
          amount_money:
            amount: 100
            currency: USD
          created_at: 2018-10-17T20:41:55.520Z
          id: UNOE3kv2BZwqHlJ830RCt5YCuaB_xVteEWVFkXDvKN1ddidfJWipt8p9whmElKT5mZtJ7wZ
          payment_id: UNOE3kv2BZwqHlJ830RCt5YCuaB
          status: PENDING
          updated_at: 2018-10-17T20:41:55.520Z
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refund:
          $ref: "#/components/schemas/PaymentRefund"
      type: object
      x-release-status: PUBLIC
    RefundStatus:
      description: Indicates a refund's current status.
      enum:
        - PENDING
        - APPROVED
        - REJECTED
        - FAILED
      type: string
      x-enum-elements:
        - description: The refund is pending.
          name: PENDING
        - description: The refund has been approved by Square.
          name: APPROVED
        - description: The refund has been rejected by Square.
          name: REJECTED
        - description: The refund failed.
          name: FAILED
      x-release-status: PUBLIC
    RegisterDomainRequest:
      description: |-
        Defines the parameters that can be included in the body of
        a request to the [RegisterDomain](https://developer.squareup.com/reference/square_2021-08-18/apple-pay-api/register-domain) endpoint.
      example:
        request_body:
          domain_name: example.com
      properties:
        domain_name:
          description: A domain name as described in RFC-1034 that will be registered with ApplePay.
          maxLength: 255
          minLength: 1
          type: string
      required:
        - domain_name
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainRequest.csharp
        java: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainRequest.java
        javascript: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainRequest.javascript
        php: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainRequest.php
        python: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainRequest.python
        ruby: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainRequest.ruby
    RegisterDomainResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [RegisterDomain](https://developer.squareup.com/reference/square_2021-08-18/apple-pay-api/register-domain) endpoint.

        Either `errors` or `status` are present in a given response (never both).
      example:
        status: VERIFIED
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        status:
          description: |-
            The status of the domain registration.

            See [RegisterDomainResponseStatus](https://developer.squareup.com/reference/square_2021-08-18/enums/RegisterDomainResponseStatus) for possible values.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainResponse.csharp
        java: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainResponse.java
        javascript: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainResponse.javascript
        php: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainResponse.php
        python: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainResponse.python
        ruby: /sdk_samples/ApplePay/RegisterDomain/RegisterDomainResponse.ruby
    RegisterDomainResponseStatus:
      description: The status of the domain registration.
      enum:
        - PENDING
        - VERIFIED
      type: string
      x-enum-elements:
        - description: The domain is added, but not verified.
          name: PENDING
        - description: The domain is added and verified. It can be used to accept Apple Pay transactions.
          name: VERIFIED
      x-release-status: PUBLIC
    RemoveGroupFromCustomerRequest:
      description: |-
        Defines the fields that are included in the request body of
        a request to the [RemoveGroupFromCustomer](https://developer.squareup.com/reference/square_2021-08-18/customers-api/remove-group-from-customer) endpoint.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RemoveGroupFromCustomerResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [RemoveGroupFromCustomer](https://developer.squareup.com/reference/square_2021-08-18/customers-api/remove-group-from-customer)
        endpoint.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RenewTokenRequest:
      description: ""
      example:
        request_body:
          access_token: ACCESS_TOKEN
      properties:
        access_token:
          description: The token you want to renew.
          maxLength: 1024
          minLength: 2
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RenewToken/RenewTokenRequest.csharp
        java: /sdk_samples/RenewToken/RenewTokenRequest.java
        javascript: /sdk_samples/RenewToken/RenewTokenRequest.javascript
        php: /sdk_samples/RenewToken/RenewTokenRequest.php
        python: /sdk_samples/RenewToken/RenewTokenRequest.python
        ruby: /sdk_samples/RenewToken/RenewTokenRequest.ruby
    RenewTokenResponse:
      description: ""
      example:
        access_token: ACCESS_TOKEN
        expires_at: 2006-01-02T15:04:05Z
        merchant_id: MERCHANT_ID
        token_type: bearer
      properties:
        access_token:
          description: |-
            The renewed access token.
            This value might be different from the `access_token` you provided in your request.
            You provide this token in a header with every request to Connect API endpoints.
            See [Request and response headers](https://developer.squareup.com/docs/api/connect/v2/#requestandresponseheaders) for the format of this header.
          maxLength: 1024
          minLength: 2
          type: string
        expires_at:
          description: The date when access_token expires, in [ISO 8601](http://www.iso.org/iso/home/standards/iso8601.htm) format.
          maxLength: 48
          minLength: 20
          type: string
        merchant_id:
          description: The ID of the authorizing merchant's business.
          maxLength: 191
          minLength: 8
          type: string
        plan_id:
          description: |-
            __LEGACY FIELD__. The ID of the subscription plan the merchant signed
            up for. Only present if the merchant signed up for a subscription during
            authorization.
          type: string
        subscription_id:
          description: |-
            __LEGACY FIELD__. The ID of the merchant subscription associated with
            the authorization. Only present if the merchant signed up for a subscription
            during authorization..
          type: string
        token_type:
          description: This value is always _bearer_.
          maxLength: 10
          minLength: 2
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RenewToken/RenewTokenResponse.csharp
        java: /sdk_samples/RenewToken/RenewTokenResponse.java
        javascript: /sdk_samples/RenewToken/RenewTokenResponse.javascript
        php: /sdk_samples/RenewToken/RenewTokenResponse.php
        python: /sdk_samples/RenewToken/RenewTokenResponse.python
        ruby: /sdk_samples/RenewToken/RenewTokenResponse.ruby
    ResumeSubscriptionRequest:
      description: |-
        Defines parameters in a
        [ResumeSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/resume-subscription) endpoint
        request.
      properties: {}
      type: object
      x-release-status: PUBLIC
    ResumeSubscriptionResponse:
      description: |-
        Defines parameters in a
        [ResumeSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/resume-subscription) endpoint
        response.
      example:
        subscription:
          created_at: 2020-08-03T21:53:10Z
          customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
          id: 9ba40961-995a-4a3d-8c53-048c40cafc13
          location_id: S8GWD5R9QB376
          plan_id: 6JHXF3B2CW3YKHDV4XEM674H
          price_override_money:
            amount: 2000
            currency: USD
          status: ACTIVE
          timezone: America/Los_Angeles
          version: 1594311617331
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        subscription:
          $ref: "#/components/schemas/Subscription"
      type: object
      x-release-status: PUBLIC
    RetrieveBookingRequest:
      description: ""
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveBookingResponse:
      description: ""
      example:
        booking:
          appointment_segments:
            - duration_minutes: 60
              service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
              service_variation_version: 1599775456731
              team_member_id: TMXUrsBWWcHTt79t
          created_at: 2020-10-28T15:47:41Z
          customer_id: EX2QSVGTZN4K1E5QE1CBFNVQ8M
          customer_note: ""
          id: zkras0xv0xwswx
          location_id: LEQHH0YY8B42M
          seller_note: ""
          start_at: 2020-11-26T13:00:00Z
          status: ACCEPTED
          updated_at: 2020-10-28T15:49:25Z
          version: 1
        errors: []
      properties:
        booking:
          $ref: "#/components/schemas/Booking"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveBusinessBookingProfileRequest:
      description: ""
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveBusinessBookingProfileResponse:
      description: ""
      example:
        business_booking_profile:
          allow_user_cancel: true
          booking_enabled: true
          booking_policy: ACCEPT_ALL
          business_appointment_settings:
            alignment_time: HALF_HOURLY
            any_team_member_booking_enabled: true
            cancellation_fee_money:
              currency: USD
            cancellation_policy: CUSTOM_POLICY
            location_types:
              - BUSINESS_LOCATION
            max_booking_lead_time_seconds: 31536000
            min_booking_lead_time_seconds: 0
            multiple_service_booking_enabled: true
            skip_booking_flow_staff_selection: false
          created_at: 2020-09-10T21:40:38Z
          customer_timezone_choice: CUSTOMER_CHOICE
          seller_id: MLJQYZZRM0D3Y
        errors: []
      properties:
        business_booking_profile:
          $ref: "#/components/schemas/BusinessBookingProfile"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveCardRequest:
      description: |-
        Retrieves details for a specific Card. Accessible via
        HTTP requests at GET https://connect.squareup.com/v2/cards/{card_id}
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveCardResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [RetrieveCard](#endpoint-cards-retrievecard) endpoint.

        Note: if there are errors processing the request, the card field will not be
        present.
      example:
        card:
          billing_address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          bin: "411111"
          card_brand: VISA
          card_type: CREDIT
          cardholder_name: Amelia Earhart
          customer_id: VDKXEEKPJN48QDG3BGGFAK05P8
          enabled: true
          exp_month: 11
          exp_year: 2022
          fingerprint: ex-p-cs80EK9Flz7LsCMv-szbptQ_ssAGrhemzSTsPFgt9nzyE6t7okiLIQc-qw_quqKX4Q
          id: ccof:uIbfJXhXETSP197M3GB
          last_4: "1111"
          prepaid_type: NOT_PREPAID
          reference_id: user-id-1
          version: 1
      properties:
        card:
          $ref: "#/components/schemas/Card"
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RetrieveCashDrawerShiftRequest:
      description: ""
      example:
        request_body: {}
      properties:
        location_id:
          description: The ID of the location to retrieve cash drawer shifts from.
          minLength: 1
          type: string
      required:
        - location_id
      type: object
      x-release-status: PUBLIC
    RetrieveCashDrawerShiftResponse:
      description: ""
      example:
        cash_drawer_shift:
          cash_paid_in_money:
            amount: 10000
            currency: USD
          cash_paid_out_money:
            amount: -10000
            currency: USD
          cash_payment_money:
            amount: 100
            currency: USD
          cash_refunds_money:
            amount: -100
            currency: USD
          closed_at: 2019-11-22T00:44:49.000Z
          closed_cash_money:
            amount: 9970
            currency: USD
          closing_employee_id: ""
          description: Misplaced some change
          device:
            name: My iPad
          ended_at: 2019-11-22T00:44:49.000Z
          ending_employee_id: ""
          expected_cash_money:
            amount: 10000
            currency: USD
          id: DCC99978-09A6-4926-849F-300BE9C5793A
          opened_at: 2019-11-22T00:42:54.000Z
          opened_cash_money:
            amount: 10000
            currency: USD
          opening_employee_id: ""
          state: CLOSED
      properties:
        cash_drawer_shift:
          $ref: "#/components/schemas/CashDrawerShift"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RetrieveCatalogObjectRequest:
      description: ""
      example:
        request_params: ?include_related_objects=true
      properties:
        catalog_version:
          description: |-
            Requests objects as of a specific version of the catalog. This allows you to retrieve historical
            versions of objects. The value to retrieve a specific version of an object can be found
            in the version field of [CatalogObject](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogObject)s.
          format: int64
          type: integer
          x-is-beta: true
          x-release-status: BETA
        include_related_objects:
          description: |-
            If `true`, the response will include additional objects that are related to the
            requested object, as follows:

            If the `object` field of the response contains a `CatalogItem`, its associated
            `CatalogCategory`, `CatalogTax`, `CatalogImage` and `CatalogModifierList` objects will
            be returned in the `related_objects` field of the response. If the `object` field of
            the response contains a `CatalogItemVariation`, its parent `CatalogItem` will be returned
            in the `related_objects` field of the response.

            Default value: `false`
          type: boolean
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectRequest.csharp
        java: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectRequest.java
        javascript: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectRequest.javascript
        php: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectRequest.php
        python: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectRequest.python
        ruby: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectRequest.ruby
    RetrieveCatalogObjectResponse:
      description: ""
      example:
        object:
          id: W62UWFY35CWMYGVWK6TWJDNI
          is_deleted: false
          item_data:
            category_id: BJNQCF2FJ6S6UIDT65ABHLRX
            description: Hot Leaf Juice
            name: Tea
            tax_ids:
              - HURXQOOAIC4IZSI2BEXQRYFY
            variations:
              - id: 2TZFAOHWGG7PAK2QEXWYPZSP
                is_deleted: false
                item_variation_data:
                  item_id: W62UWFY35CWMYGVWK6TWJDNI
                  name: Mug
                  ordinal: 0
                  price_money:
                    amount: 150
                    currency: USD
                  pricing_type: FIXED_PRICING
                present_at_all_locations: true
                type: ITEM_VARIATION
                updated_at: 2016-11-16T22:25:24.878Z
                version: 1479335124878
          present_at_all_locations: true
          type: ITEM
          updated_at: 2016-11-16T22:25:24.878Z
          version: 1479335124878
        related_objects:
          - category_data:
              name: Beverages
            id: BJNQCF2FJ6S6UIDT65ABHLRX
            is_deleted: false
            present_at_all_locations: true
            type: CATEGORY
            updated_at: 2016-11-16T22:25:24.878Z
            version: 1479335124878
          - id: HURXQOOAIC4IZSI2BEXQRYFY
            is_deleted: false
            present_at_all_locations: true
            tax_data:
              calculation_phase: TAX_SUBTOTAL_PHASE
              enabled: true
              inclusion_type: ADDITIVE
              name: Sales Tax
              percentage: "5.0"
            type: TAX
            updated_at: 2016-11-16T22:25:24.878Z
            version: 1479335124878
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        object:
          $ref: "#/components/schemas/CatalogObject"
        related_objects:
          description: A list of `CatalogObject`s referenced by the object in the `object` field.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.csharp
        java: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.java
        javascript: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.javascript
        php: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.php
        python: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.python
        ruby: /sdk_samples/Catalog/RetrieveCatalogObject/RetrieveCatalogObjectResponse.ruby
    RetrieveCustomerGroupRequest:
      description: |-
        Defines the fields that can be included in a request to the
        [RetrieveCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/retrieve-customer-group) endpoint.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveCustomerGroupResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [RetrieveCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/retrieve-customer-group) endpoint.

        Either `errors` or `group` is present in a given response (never both).
      example:
        group:
          created_at: 2020-04-13T21:54:57.863Z
          id: 2TAT3CMH4Q0A9M87XJZED0WMR3
          name: Loyal Customers
          updated_at: 2020-04-13T21:54:58Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        group:
          $ref: "#/components/schemas/CustomerGroup"
      type: object
      x-release-status: PUBLIC
    RetrieveCustomerRequest:
      description: |-
        Defines the fields that are included in requests to the `RetrieveCustomer`
        endpoint.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RetrieveCustomer/RetrieveCustomerRequest.csharp
        java: /sdk_samples/RetrieveCustomer/RetrieveCustomerRequest.java
        javascript: /sdk_samples/RetrieveCustomer/RetrieveCustomerRequest.javascript
        php: /sdk_samples/RetrieveCustomer/RetrieveCustomerRequest.php
        python: /sdk_samples/RetrieveCustomer/RetrieveCustomerRequest.python
        ruby: /sdk_samples/RetrieveCustomer/RetrieveCustomerRequest.ruby
    RetrieveCustomerResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `RetrieveCustomer` endpoint.

        Either `errors` or `customer` is present in a given response (never both).
      example:
        customer:
          address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          created_at: 2016-03-23T20:21:54.859Z
          creation_source: THIRD_PARTY
          email_address: Amelia.Earhart@example.com
          family_name: Earhart
          given_name: Amelia
          group_ids:
            - 545AXB44B4XXWMVQ4W8SBT3HHF
          id: JDKYHBWT1D4F8MFH63DBMEN8Y4
          note: a customer
          phone_number: 1-212-555-4240
          preferences:
            email_unsubscribed: false
          reference_id: YOUR_REFERENCE_ID
          segment_ids:
            - 1KB9JE5EGJXCW.REACHABLE
          updated_at: 2016-03-23T20:21:54.859Z
          version: 1
      properties:
        customer:
          $ref: "#/components/schemas/Customer"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RetrieveCustomer/RetrieveCustomerResponse.csharp
        java: /sdk_samples/RetrieveCustomer/RetrieveCustomerResponse.java
        javascript: /sdk_samples/RetrieveCustomer/RetrieveCustomerResponse.javascript
        php: /sdk_samples/RetrieveCustomer/RetrieveCustomerResponse.php
        python: /sdk_samples/RetrieveCustomer/RetrieveCustomerResponse.python
        ruby: /sdk_samples/RetrieveCustomer/RetrieveCustomerResponse.ruby
    RetrieveCustomerSegmentRequest:
      description: Defines the valid parameters for requests to the `RetrieveCustomerSegmentRequest` endpoint.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveCustomerSegmentResponse:
      description: |-
        Defines the fields that are included in the response body for requests to the `RetrieveCustomerSegment` endpoint.

        Either `errors` or `segment` is present in a given response (never both).
      example:
        segment:
          created_at: 2020-01-09T19:33:24.469Z
          id: GMNXRZVEXNQDF.CHURN_RISK
          name: Lapsed
          updated_at: 2020-04-13T23:01:13Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        segment:
          $ref: "#/components/schemas/CustomerSegment"
      type: object
      x-release-status: PUBLIC
    RetrieveDisputeEvidenceRequest:
      description: Defines the parameters for a `RetrieveDisputeEvidence` request.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveDisputeEvidenceResponse:
      description: Defines the fields in a `RetrieveDisputeEvidence` response.
      example:
        evidence:
          dispute_id: bVTprrwk0gygTLZ96VX1oB
          evidence_file:
            filename: evidence.tiff
            filetype: image/tiff
          evidence_type: GENERIC_EVIDENCE
          id: TOomLInj6iWmP3N8qfCXrB
          uploaded_at: 2018-10-18T16:01:10.000Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        evidence:
          $ref: "#/components/schemas/DisputeEvidence"
      type: object
      x-release-status: PUBLIC
    RetrieveDisputeRequest:
      description: Defines the request parameters for the `RetrieveDispute` endpoint.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveDisputeResponse:
      description: Defines fields in a `RetrieveDispute` response.
      example:
        dispute:
          amount_money:
            amount: 2000
            currency: USD
          brand_dispute_id: "100000282394"
          card_brand: VISA
          created_at: 2018-10-18T15:59:13.613Z
          disputed_payments:
            - payment_id: 6Ee10wvqhfipStz297mtUhBXvaB
          due_at: 2018-11-01T00:00:00.000Z
          id: XDgyFu7yo1E2S5lQGGpYn
          reason: NO_KNOWLEDGE
          state: LOST
          updated_at: 2018-10-18T15:59:13.613Z
      properties:
        dispute:
          $ref: "#/components/schemas/Dispute"
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RetrieveEmployeeRequest:
      description: ""
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    RetrieveEmployeeResponse:
      description: ""
      properties:
        employee:
          $ref: "#/components/schemas/Employee"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    RetrieveGiftCardFromGANRequest:
      description: A request to retrieve gift cards by their GANs.
      example:
        request_body:
          gan: "7783320001001635"
      properties:
        gan:
          description: |-
            The gift card account number (GAN) of the gift card to retrieve.
            The maximum length of a GAN is 255 digits to account for third-party GANs that have been imported.
            Square-issued gift cards have 16-digit GANs.
          maxLength: 255
          minLength: 1
          type: string
      required:
        - gan
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveGiftCardFromGANResponse:
      description: |-
        A response that contains a `GiftCard`. This response might contain a set of `Error` objects
        if the request resulted in errors.
      example:
        gift_card:
          balance_money:
            amount: 5000
            currency: USD
          created_at: 2021-05-20T22:26:54.000Z
          gan: "7783320001001635"
          gan_source: SQUARE
          id: gftc:6944163553804e439d89adb47caf806a
          state: ACTIVE
          type: DIGITAL
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card:
          $ref: "#/components/schemas/GiftCard"
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveGiftCardFromNonceRequest:
      description: A request to retrieve gift cards by using nonces.
      example:
        request_body:
          nonce: cnon:7783322135245171
      properties:
        nonce:
          description: The nonce of the gift card to retrieve.
          minLength: 1
          type: string
      required:
        - nonce
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveGiftCardFromNonceResponse:
      description: |-
        A response that contains a `GiftCard`. The response might contain a set of `Error` objects
        if the request resulted in errors.
      example:
        gift_card:
          balance_money:
            amount: 5000
            currency: USD
          created_at: 2021-05-20T22:26:54.000Z
          gan: "7783320001001635"
          gan_source: SQUARE
          id: gftc:6944163553804e439d89adb47caf806a
          state: ACTIVE
          type: DIGITAL
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card:
          $ref: "#/components/schemas/GiftCard"
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveGiftCardRequest:
      description: A request to retrieve digital gift cards.
      example:
        request_params: ?id=gftc:00113070ba5745f0b2377c1b9570cb03
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveGiftCardResponse:
      description: |-
        A response that contains a `GiftCard`. The response might contain a set of `Error` objects
        if the request resulted in errors.
      example:
        gift_card:
          balance_money:
            amount: 1000
            currency: USD
          created_at: 2021-05-20T22:26:54.000Z
          gan: "7783320001001635"
          gan_source: SQUARE
          id: gftc:00113070ba5745f0b2377c1b9570cb03
          state: ACTIVE
          type: DIGITAL
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card:
          $ref: "#/components/schemas/GiftCard"
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveInventoryAdjustmentRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/RetrieveInventoryAdjustment/RetrieveInventoryAdjustmentRequest.csharp
        java: /sdk_samples/Inventory/RetrieveInventoryAdjustment/RetrieveInventoryAdjustmentRequest.java
        javascript: /sdk_samples/Inventory/RetrieveInventoryAdjustment/RetrieveInventoryAdjustmentRequest.javascript
        php: /sdk_samples/Inventory/RetrieveInventoryAdjustment/RetrieveInventoryAdjustmentRequest.php
        python: /sdk_samples/Inventory/RetrieveInventoryAdjustment/RetrieveInventoryAdjustmentRequest.python
        ruby: /sdk_samples/Inventory/RetrieveInventoryAdjustment/RetrieveInventoryAdjustmentRequest.ruby
    RetrieveInventoryAdjustmentResponse:
      description: ""
      example:
        adjustment:
          catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
          catalog_object_type: ITEM_VARIATION
          created_at: 2016-11-17T13:02:15.142Z
          employee_id: LRK57NSQ5X7PUD05
          from_state: IN_STOCK
          id: UDMOEO78BG6GYWA2XDRYX3KB
          location_id: C6W5YS5QM06F5
          occurred_at: 2016-11-16T25:44:22.837Z
          quantity: "7"
          reference_id: 4a366069-4096-47a2-99a5-0084ac879509
          source:
            application_id: 416ff29c-86c4-4feb-b58c-9705f21f3ea0
            name: Square Point of Sale 4.37
            product: SQUARE_POS
          to_state: SOLD
          total_price_money:
            amount: 4550
            currency: USD
        errors: []
      properties:
        adjustment:
          $ref: "#/components/schemas/InventoryAdjustment"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RetrieveInventoryChangesRequest:
      description: ""
      example:
        request_params: ?location_ids=&cursor=
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        location_ids:
          description: |-
            The [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) IDs to look up as a comma-separated
            list. An empty list queries all locations.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/RetrieveInventoryChanges/RetrieveInventoryChangesRequest.csharp
        java: /sdk_samples/Inventory/RetrieveInventoryChanges/RetrieveInventoryChangesRequest.java
        javascript: /sdk_samples/Inventory/RetrieveInventoryChanges/RetrieveInventoryChangesRequest.javascript
        php: /sdk_samples/Inventory/RetrieveInventoryChanges/RetrieveInventoryChangesRequest.php
        python: /sdk_samples/Inventory/RetrieveInventoryChanges/RetrieveInventoryChangesRequest.python
        ruby: /sdk_samples/Inventory/RetrieveInventoryChanges/RetrieveInventoryChangesRequest.ruby
    RetrieveInventoryChangesResponse:
      description: ""
      example:
        changes:
          - adjustment:
              catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
              catalog_object_type: ITEM_VARIATION
              created_at: 2016-11-16T22:25:24.878Z
              employee_id: AV7YRCGI2H1J5NQ8E1XIZCNA
              from_state: IN_STOCK
              id: OJKJIUANKLMLQANZADNPLKAD
              location_id: C6W5YS5QM06F5
              occurred_at: 2016-11-16T22:25:24.878Z
              quantity: "3"
              reference_id: d8207693-168f-4b44-a2fd-a7ff533ddd26
              source:
                application_id: 416ff29c-86c4-4feb-b58c-9705f21f3ea0
                name: Square Point of Sale 4.37
                product: SQUARE_POS
              to_state: SOLD
              total_price_money:
                amount: 5000
                currency: USD
              transaction_id: 5APV6JYK1SNCZD11AND2RX1Z
            type: ADJUSTMENT
        errors: []
      properties:
        changes:
          description: The set of inventory changes for the requested object and locations.
          items:
            $ref: "#/components/schemas/InventoryChange"
          type: array
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If unset,
            this is the final response.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RetrieveInventoryCountRequest:
      description: ""
      example:
        request_params: ?location_ids=C6W5YS5QM06F5&cursor=
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        location_ids:
          description: |-
            The [Location](https://developer.squareup.com/reference/square_2021-08-18/objects/Location) IDs to look up as a comma-separated
            list. An empty list queries all locations.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/RetrieveInventoryCount/RetrieveInventoryCountRequest.csharp
        java: /sdk_samples/Inventory/RetrieveInventoryCount/RetrieveInventoryCountRequest.java
        javascript: /sdk_samples/Inventory/RetrieveInventoryCount/RetrieveInventoryCountRequest.javascript
        php: /sdk_samples/Inventory/RetrieveInventoryCount/RetrieveInventoryCountRequest.php
        python: /sdk_samples/Inventory/RetrieveInventoryCount/RetrieveInventoryCountRequest.python
        ruby: /sdk_samples/Inventory/RetrieveInventoryCount/RetrieveInventoryCountRequest.ruby
    RetrieveInventoryCountResponse:
      description: ""
      example:
        counts:
          - calculated_at: 2016-11-16T22:28:01.223Z
            catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
            catalog_object_type: ITEM_VARIATION
            location_id: C6W5YS5QM06F5
            quantity: "22"
            state: IN_STOCK
        errors: []
      properties:
        counts:
          description: |-
            The current calculated inventory counts for the requested object and
            locations.
          items:
            $ref: "#/components/schemas/InventoryCount"
          type: array
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If unset,
            this is the final response.

            See the [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination) guide for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RetrieveInventoryPhysicalCountRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/RetrieveInventoryPhysicalCount/RetrieveInventoryPhysicalCountRequest.csharp
        java: /sdk_samples/Inventory/RetrieveInventoryPhysicalCount/RetrieveInventoryPhysicalCountRequest.java
        javascript: /sdk_samples/Inventory/RetrieveInventoryPhysicalCount/RetrieveInventoryPhysicalCountRequest.javascript
        php: /sdk_samples/Inventory/RetrieveInventoryPhysicalCount/RetrieveInventoryPhysicalCountRequest.php
        python: /sdk_samples/Inventory/RetrieveInventoryPhysicalCount/RetrieveInventoryPhysicalCountRequest.python
        ruby: /sdk_samples/Inventory/RetrieveInventoryPhysicalCount/RetrieveInventoryPhysicalCountRequest.ruby
    RetrieveInventoryPhysicalCountResponse:
      description: ""
      example:
        count:
          catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
          catalog_object_type: ITEM_VARIATION
          created_at: 2016-11-16T22:25:24.878Z
          employee_id: LRK57NSQ5X7PUD05
          id: ANZADNPLKADOJKJIUANKLMLQ
          location_id: C6W5YS5QM06F5
          occurred_at: 2016-11-16T22:25:24.878Z
          quantity: "15"
          reference_id: f857ec37-f9a0-4458-8e23-5b5e0bea4e53
          source:
            application_id: 416ff29c-86c4-4feb-b58c-9705f21f3ea0
            name: Square Point of Sale 4.37
            product: SQUARE_POS
          state: IN_STOCK
        errors: []
      properties:
        count:
          $ref: "#/components/schemas/InventoryPhysicalCount"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    RetrieveInventoryTransferRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Inventory/RetrieveInventoryTransfer/RetrieveInventoryTransferRequest.csharp
        java: /sdk_samples/Inventory/RetrieveInventoryTransfer/RetrieveInventoryTransferRequest.java
        javascript: /sdk_samples/Inventory/RetrieveInventoryTransfer/RetrieveInventoryTransferRequest.javascript
        php: /sdk_samples/Inventory/RetrieveInventoryTransfer/RetrieveInventoryTransferRequest.php
        python: /sdk_samples/Inventory/RetrieveInventoryTransfer/RetrieveInventoryTransferRequest.python
        ruby: /sdk_samples/Inventory/RetrieveInventoryTransfer/RetrieveInventoryTransferRequest.ruby
    RetrieveInventoryTransferResponse:
      description: ""
      example:
        errors: []
        transfer:
          catalog_object_id: W62UWFY35CWMYGVWK6TWJDNI
          catalog_object_type: ITEM_VARIATION
          created_at: 2016-11-17T13:02:15.142Z
          employee_id: LRK57NSQ5X7PUD05
          from_location_id: C6W5YS5QM06F5
          id: UDMOEO78BG6GYWA2XDRYX3KB
          occurred_at: 2016-11-16T25:44:22.837Z
          quantity: "7"
          reference_id: 4a366069-4096-47a2-99a5-0084ac879509
          source:
            application_id: 416ff29c-86c4-4feb-b58c-9705f21f3ea0
            name: Square Point of Sale 4.37
            product: SQUARE_POS
          state: IN_STOCK
          to_location_id: 59TNP9SA8VGDA
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        transfer:
          $ref: "#/components/schemas/InventoryTransfer"
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveLocationRequest:
      description: |-
        Defines the fields that are included in the request body for
        the __RetrieveLocation__ endpoint.
      example: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RetrieveLocation/RetrieveLocationRequest.csharp
        java: /sdk_samples/RetrieveLocation/RetrieveLocationRequest.java
        javascript: /sdk_samples/RetrieveLocation/RetrieveLocationRequest.javascript
        php: /sdk_samples/RetrieveLocation/RetrieveLocationRequest.php
        python: /sdk_samples/RetrieveLocation/RetrieveLocationRequest.python
        ruby: /sdk_samples/RetrieveLocation/RetrieveLocationRequest.ruby
    RetrieveLocationResponse:
      description: |-
        Defines the fields that the
        [RetrieveLocation](https://developer.squareup.com/reference/square_2021-08-18/locations-api/retrieve-location) endpoint returns
        in a response.
      example:
        location:
          address:
            address_line_1: 123 Main St
            administrative_district_level_1: CA
            country: US
            locality: San Francisco
            postal_code: "94114"
          business_name: Jet Fuel Coffee
          capabilities:
            - CREDIT_CARD_PROCESSING
          country: US
          created_at: 2016-09-19T17:33:12Z
          currency: USD
          id: 18YC4JDH91E1H
          language_code: en-US
          merchant_id: 3MYCJG5GVYQ8Q
          name: Jet Fuel Coffee - Grant Park
          phone_number: +1 650-354-7217
          status: ACTIVE
          timezone: America/Los_Angeles
      properties:
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        location:
          $ref: "#/components/schemas/Location"
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RetrieveLocation/RetrieveLocationResponse.csharp
        java: /sdk_samples/RetrieveLocation/RetrieveLocationResponse.java
        javascript: /sdk_samples/RetrieveLocation/RetrieveLocationResponse.javascript
        php: /sdk_samples/RetrieveLocation/RetrieveLocationResponse.php
        python: /sdk_samples/RetrieveLocation/RetrieveLocationResponse.python
        ruby: /sdk_samples/RetrieveLocation/RetrieveLocationResponse.ruby
    RetrieveLoyaltyAccountRequest:
      description: A request to retrieve a loyalty account.
      example:
        request_params: ?account_id=79b807d2-d786-46a9-933b-918028d7a8c5
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveLoyaltyAccountResponse:
      description: A response that includes the loyalty account.
      example:
        loyalty_account:
          balance: 10
          created_at: 2020-05-08T21:44:32Z
          customer_id: Q8002FAM9V1EZ0ADB2T5609X6NET1H0
          id: 79b807d2-d786-46a9-933b-918028d7a8c5
          lifetime_points: 20
          mapping:
            created_at: 2020-05-08T21:44:32Z
            id: 66aaab3f-da99-49ed-8b19-b87f851c844f
            phone_number: "+14155551234"
          program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
          updated_at: 2020-05-08T21:44:32Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        loyalty_account:
          $ref: "#/components/schemas/LoyaltyAccount"
      type: object
      x-release-status: PUBLIC
    RetrieveLoyaltyProgramRequest:
      description: A request to retrieve the [loyalty program](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyProgram) that belongs to a seller. A seller can have only one loyalty program.
      example:
        request_params: ?program_id=main
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveLoyaltyProgramResponse:
      description: A response that contains the loyalty program.
      example:
        program:
          accrual_rules:
            - accrual_type: SPEND
              excluded_category_ids:
                - 7ZERJKO5PVYXCVUHV2JCZ2UG
                - FQKAOJE5C4FIMF5A2URMLW6V
              excluded_item_variation_ids:
                - CBZXBUVVTYUBZGQO44RHMR6B
                - EDILT24Z2NISEXDKGY6HP7XV
              points: 1
              spend_amount_money:
                amount: 100
          created_at: 2020-04-20T16:55:11Z
          id: d619f755-2d17-41f3-990d-c04ecedd64dd
          location_ids:
            - P034NEENMD09F
          reward_tiers:
            - created_at: 2020-04-20T16:55:11Z
              definition:
                discount_type: FIXED_PERCENTAGE
                percentage_discount: "10"
                scope: ORDER
              id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
              name: 10% off entire sale
              points: 10
              pricing_rule_reference:
                catalog_version: "1605486402527"
                object_id: 74C4JSHESNLTB2A7ITO5HO6F
          status: ACTIVE
          terminology:
            one: Point
            other: Points
          updated_at: 2020-05-01T02:00:02Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        program:
          $ref: "#/components/schemas/LoyaltyProgram"
      type: object
      x-release-status: PUBLIC
    RetrieveLoyaltyRewardRequest:
      description: A request to retrieve a loyalty reward.
      example:
        request_params: ?reward_id=9f18ac21-233a-31c3-be77-b45840f5a810
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveLoyaltyRewardResponse:
      description: A response that includes the loyalty reward.
      example:
        reward:
          created_at: 2020-05-08T21:55:42Z
          id: 9f18ac21-233a-31c3-be77-b45840f5a810
          loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
          points: 10
          redeemed_at: 2020-05-08T21:56:00Z
          reward_tier_id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
          status: REDEEMED
          updated_at: 2020-05-08T21:56:00Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        reward:
          $ref: "#/components/schemas/LoyaltyReward"
      type: object
      x-release-status: PUBLIC
    RetrieveMerchantRequest:
      description: Request object for the [RetrieveMerchant](https://developer.squareup.com/reference/square_2021-08-18/merchants-api/retrieve-merchant) endpoint.
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveMerchantResponse:
      description: The response object returned by the [RetrieveMerchant](https://developer.squareup.com/reference/square_2021-08-18/merchants-api/retrieve-merchant) endpoint.
      example:
        merchant:
          business_name: Apple A Day
          country: US
          currency: USD
          id: DM7VKY8Q63GNP
          language_code: en-US
          main_location_id: 9A65CGC72ZQG1
          status: ACTIVE
      properties:
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        merchant:
          $ref: "#/components/schemas/Merchant"
      type: object
      x-release-status: PUBLIC
    RetrieveObsMigrationProfileRequest:
      description: ""
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveOrderRequest:
      description: ""
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveOrderResponse:
      description: ""
      example:
        order:
          created_at: 2020-05-18T16:30:49.614Z
          discounts:
            - applied_money:
                amount: 550
                currency: USD
              name: 50% Off
              percentage: "50"
              scope: ORDER
              type: FIXED_PERCENTAGE
              uid: zGsRZP69aqSSR9lq9euSPB
          id: CAISENgvlJ6jLWAzERDzjyHVybY
          line_items:
            - applied_discounts:
                - applied_money:
                    amount: 250
                    currency: USD
                  discount_uid: zGsRZP69aqSSR9lq9euSPB
                  uid: 9zr9S4dxvPAixvn0lpa1VC
              base_price_money:
                amount: 500
                currency: USD
              gross_sales_money:
                amount: 500
                currency: USD
              name: Item 1
              quantity: "1"
              total_discount_money:
                amount: 250
                currency: USD
              total_money:
                amount: 250
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: ULkg0tQTRK2bkU9fNv3IJD
              variation_total_price_money:
                amount: 500
                currency: USD
            - applied_discounts:
                - applied_money:
                    amount: 300
                    currency: USD
                  discount_uid: zGsRZP69aqSSR9lq9euSPB
                  uid: qa8LwwZK82FgSEkQc2HYVC
              base_price_money:
                amount: 300
                currency: USD
              gross_sales_money:
                amount: 600
                currency: USD
              name: Item 2
              quantity: "2"
              total_discount_money:
                amount: 300
                currency: USD
              total_money:
                amount: 300
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: mumY8Nun4BC5aKe2yyx5a
              variation_total_price_money:
                amount: 600
                currency: USD
          location_id: D7AVYMEAPJ3A3
          net_amounts:
            discount_money:
              amount: 550
              currency: USD
            service_charge_money:
              amount: 0
              currency: USD
            tax_money:
              amount: 0
              currency: USD
            tip_money:
              amount: 0
              currency: USD
            total_money:
              amount: 550
              currency: USD
          state: OPEN
          total_discount_money:
            amount: 550
            currency: USD
          total_money:
            amount: 550
            currency: USD
          total_service_charge_money:
            amount: 0
            currency: USD
          total_tax_money:
            amount: 0
            currency: USD
          total_tip_money:
            amount: 0
            currency: USD
          updated_at: 2020-05-18T16:30:49.614Z
          version: 1
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        order:
          $ref: "#/components/schemas/Order"
      type: object
      x-release-status: PUBLIC
    RetrieveSnippetRequest:
      description: Represents a `RetrieveSnippet` request.
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveSnippetResponse:
      description: Represents a `RetrieveSnippet` response. The response can include either `snippet` or `errors`.
      example:
        snippet:
          content: <script>var js = 1;</script>
          created_at: 2021-03-11T25:40:09Z
          id: snippet_5d178150-a6c0-11eb-a9f1-437e6a2881e7
          site_id: site_278075276488921835
          updated_at: 2021-03-11T25:40:09Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        snippet:
          $ref: "#/components/schemas/Snippet"
      type: object
      x-release-status: PUBLIC
    RetrieveSubscriptionRequest:
      description: |-
        Defines parameters in a
        [RetrieveSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/retrieve-subscription) endpoint request.
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveSubscriptionResponse:
      description: |-
        Defines the fields that are included in the response from the
        [RetrieveSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/retrieve-subscription) endpoint.
      example:
        subscription:
          charged_through_date: 2020-06-11
          created_at: 2020-08-03T21:53:10Z
          customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
          id: 8151fc89-da15-4eb9-a685-1a70883cebfc
          invoice_ids:
            - grebK0Q_l8H4fqoMMVvt-Q
            - rcX_i3sNmHTGKhI4W2mceA
          location_id: S8GWD5R9QB376
          paid_until_date: 2020-06-11
          plan_id: 6JHXF3B2CW3YKHDV4XEM674H
          price_override_money:
            amount: 1000
            currency: USD
          start_date: 2020-05-11
          status: ACTIVE
          timezone: America/Los_Angeles
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        subscription:
          $ref: "#/components/schemas/Subscription"
      type: object
      x-release-status: PUBLIC
    RetrieveTeamMemberBookingProfileRequest:
      description: ""
      properties: {}
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveTeamMemberBookingProfileResponse:
      description: ""
      example:
        errors: []
        team_member_booking_profile:
          display_name: Sandbox Staff
          is_bookable: true
          team_member_id: TMaJcbiRqPIGZuS9
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_member_booking_profile:
          $ref: "#/components/schemas/TeamMemberBookingProfile"
      type: object
      x-is-beta: true
      x-release-status: BETA
    RetrieveTeamMemberRequest:
      description: Represents a retrieve request for a `TeamMember` object.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveTeamMemberResponse:
      description: Represents a response from a retrieve request containing a `TeamMember` object or error messages.
      example:
        team_member:
          assigned_locations:
            assignment_type: EXPLICIT_LOCATIONS
            location_ids:
              - GA2Y9HSJ8KRYT
              - YSGH2WBKG94QZ
          created_at: 2020-06-11T22:55:45.867Z
          email_address: joe_doe@gmail.com
          family_name: Doe
          given_name: Joe
          id: 1yJlHapkseYnNPETIU1B
          is_owner: false
          phone_number: "+14159283333"
          reference_id: reference_id_1
          status: ACTIVE
          updated_at: 2020-06-11T22:55:45.867Z
      properties:
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_member:
          $ref: "#/components/schemas/TeamMember"
      type: object
      x-release-status: PUBLIC
    RetrieveTransactionRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RetrieveTransaction/RetrieveTransactionRequest.csharp
        java: /sdk_samples/RetrieveTransaction/RetrieveTransactionRequest.java
        javascript: /sdk_samples/RetrieveTransaction/RetrieveTransactionRequest.javascript
        php: /sdk_samples/RetrieveTransaction/RetrieveTransactionRequest.php
        python: /sdk_samples/RetrieveTransaction/RetrieveTransactionRequest.python
        ruby: /sdk_samples/RetrieveTransaction/RetrieveTransactionRequest.ruby
    RetrieveTransactionResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [RetrieveTransaction](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/retrieve-transaction) endpoint.

        One of `errors` or `transaction` is present in a given response (never both).
      example:
        transaction:
          created_at: 2016-03-10T22:57:56Z
          id: KnL67ZIwXCPtzOrqj0HrkxMF
          location_id: 18YC4JDH91E1H
          product: EXTERNAL_API
          reference_id: some optional reference id
          tenders:
            - additional_recipients:
                - amount_money:
                    amount: 20
                    currency: USD
                  description: Application fees
                  location_id: 057P5VYJ4A5X1
              amount_money:
                amount: 5000
                currency: USD
              card_details:
                card:
                  card_brand: VISA
                  last_4: "1111"
                entry_method: KEYED
                status: CAPTURED
              created_at: 2016-03-10T22:57:56Z
              id: MtZRYYdDrYNQbOvV7nbuBvMF
              location_id: 18YC4JDH91E1H
              note: some optional note
              processing_fee_money:
                amount: 138
                currency: USD
              transaction_id: KnL67ZIwXCPtzOrqj0HrkxMF
              type: CARD
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        transaction:
          $ref: "#/components/schemas/Transaction"
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RetrieveTransaction/RetrieveTransactionResponse.csharp
        java: /sdk_samples/RetrieveTransaction/RetrieveTransactionResponse.java
        javascript: /sdk_samples/RetrieveTransaction/RetrieveTransactionResponse.javascript
        php: /sdk_samples/RetrieveTransaction/RetrieveTransactionResponse.php
        python: /sdk_samples/RetrieveTransaction/RetrieveTransactionResponse.python
        ruby: /sdk_samples/RetrieveTransaction/RetrieveTransactionResponse.ruby
    RetrieveWageSettingRequest:
      description: Represents a retrieve request for the wage setting of a team member.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    RetrieveWageSettingResponse:
      description: Represents a response from a retrieve request containing the specified `WageSetting` object or error messages.
      example:
        wage_setting:
          created_at: 2020-06-11T23:01:21+00:00
          is_overtime_exempt: false
          job_assignments:
            - annual_rate:
                amount: 4500000
                currency: USD
              hourly_rate:
                amount: 2164
                currency: USD
              job_title: Manager
              pay_type: SALARY
              weekly_hours: 40
          team_member_id: 1yJlHapkseYnNPETIU1B
          updated_at: 2020-06-11T23:01:21+00:00
          version: 1
      properties:
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        wage_setting:
          $ref: "#/components/schemas/WageSetting"
      type: object
      x-release-status: PUBLIC
    RevokeTokenRequest:
      description: ""
      example:
        request_body:
          access_token: ACCESS_TOKEN
          client_id: CLIENT_ID
      properties:
        access_token:
          description: |-
            The access token of the merchant whose token you want to revoke.
            Do not provide a value for merchant_id if you provide this parameter.
          maxLength: 1024
          minLength: 2
          type: string
        client_id:
          description: |-
            The Square issued ID for your application, available from the
            [developer dashboard](https://developer.squareup.com/apps).
          maxLength: 191
          type: string
        merchant_id:
          description: |-
            The ID of the merchant whose token you want to revoke.
            Do not provide a value for access_token if you provide this parameter.
          type: string
        revoke_only_access_token:
          description: |-
            If `true`, terminate the given single access token, but do not
            terminate the entire authorization.
            Default: `false`
          type: boolean
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RevokeToken/RevokeTokenRequest.csharp
        java: /sdk_samples/RevokeToken/RevokeTokenRequest.java
        javascript: /sdk_samples/RevokeToken/RevokeTokenRequest.javascript
        php: /sdk_samples/RevokeToken/RevokeTokenRequest.php
        python: /sdk_samples/RevokeToken/RevokeTokenRequest.python
        ruby: /sdk_samples/RevokeToken/RevokeTokenRequest.ruby
    RevokeTokenResponse:
      description: ""
      example:
        success: true
      properties:
        success:
          description: If the request is successful, this is true.
          type: boolean
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/RevokeToken/RevokeTokenResponse.csharp
        java: /sdk_samples/RevokeToken/RevokeTokenResponse.java
        javascript: /sdk_samples/RevokeToken/RevokeTokenResponse.javascript
        php: /sdk_samples/RevokeToken/RevokeTokenResponse.php
        python: /sdk_samples/RevokeToken/RevokeTokenResponse.python
        ruby: /sdk_samples/RevokeToken/RevokeTokenResponse.ruby
    RiskEvaluation:
      description: |-
        Represents fraud risk information for the associated payment.

        When you take a payment through Square's Payments API (using the `CreatePayment`
        endpoint), Square evaluates it and assigns a risk level to the payment. Sellers
        can use this information to determine the course of action (for example,
        provide the goods/services or refund the payment).
      properties:
        created_at:
          description: The timestamp when payment risk was evaluated, in RFC 3339 format.
          type: string
          x-read-only: true
        risk_level:
          description: The risk level associated with the payment
          type: string
      required:
        - status
      type: object
      x-is-beta: true
      x-release-status: BETA
    RiskEvaluationRiskLevel:
      description: ""
      enum:
        - PENDING
        - NORMAL
        - MODERATE
        - HIGH
      type: string
      x-enum-elements:
        - description: Indicates Square is still evaluating the payment.
          name: PENDING
        - description: Indicates payment risk is within the normal range.
          name: NORMAL
        - description: Indicates elevated risk level associated with the payment.
          name: MODERATE
        - description: Indicates significantly elevated risk level with the payment.
          name: HIGH
      x-is-beta: true
      x-release-status: BETA
    SearchAvailabilityFilter:
      description: A query filter to search for availabilities by.
      properties:
        booking_id:
          description: |-
            The query expression to search for availabilities for an existing booking by matching the specified `booking_id` value.
            This is commonly used to reschedule an appointment.
            If this expression is specified, the `location_id` and `segment_filters` expressions are not allowed.
          type: string
        location_id:
          description: |-
            The query expression to search for availabilities matching the specified seller location IDs.
            This query expression is not applicable when `booking_id` is present.
          type: string
        segment_filters:
          description: |-
            The list of segment filters to apply. A query with `n` segment filters returns availabilities with `n` segments per
            availability. It is not applicable when `booking_id` is present.
          items:
            $ref: "#/components/schemas/SegmentFilter"
          type: array
        start_at_range:
          $ref: "#/components/schemas/TimeRange"
      required:
        - start_at_range
      type: object
      x-is-beta: true
      x-release-status: BETA
    SearchAvailabilityQuery:
      description: Query conditions to search for availabilities of bookings.
      properties:
        filter:
          $ref: "#/components/schemas/SearchAvailabilityFilter"
      required:
        - filter
      type: object
      x-is-beta: true
      x-release-status: BETA
    SearchAvailabilityRequest:
      description: ""
      example:
        query:
          filter:
            location_id: LEQHH0YY8B42M
            segment_filters:
              - service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                team_member_id_filter:
                  any:
                    - TMXUrsBWWcHTt79t
                    - TMaJcbiRqPIGZuS9
            start_at_range:
              end_at: 2020-11-27T13:00:00Z
              start_at: 2020-11-26T13:00:00Z
      properties:
        query:
          $ref: "#/components/schemas/SearchAvailabilityQuery"
      required:
        - query
      type: object
      x-is-beta: true
      x-release-status: BETA
    SearchAvailabilityResponse:
      description: ""
      example:
        availabilities:
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-26T13:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-26T13:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-26T14:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-26T14:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-26T15:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-26T15:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-26T16:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T09:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T09:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T10:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T10:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T11:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T11:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T12:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T12:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T13:00:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMXUrsBWWcHTt79t
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T13:30:00Z
          - appointment_segments:
              - duration_minutes: 60
                service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
                service_variation_version: 1599775456731
                team_member_id: TMaJcbiRqPIGZuS9
            location_id: LEQHH0YY8B42M
            start_at: 2020-11-27T14:00:00Z
        errors: []
      properties:
        availabilities:
          description: List of slots available for booking.
          items:
            $ref: "#/components/schemas/Availability"
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    SearchCatalogItemsRequest:
      description: Defines the request body for the [SearchCatalogItems](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-items) endpoint.
      example:
        request_body:
          category_ids:
            - WINE_CATEGORY_ID
          custom_attribute_filters:
            - bool_filter: true
              custom_attribute_definition_id: VEGAN_DEFINITION_ID
            - custom_attribute_definition_id: BRAND_DEFINITION_ID
              string_filter: Dark Horse
            - key: VINTAGE
              number_filter:
                max: 2018
                min: 2017
            - custom_attribute_definition_id: VARIETAL_DEFINITION_ID
              selection_ids_filter: MERLOT_SELECTION_ID
          enabled_location_ids:
            - ATL_LOCATION_ID
          limit: 100
          product_types:
            - REGULAR
          sort_order: ASC
          stock_levels:
            - OUT
            - LOW
          text_filter: red
      properties:
        category_ids:
          description: The category id query expression to return items containing the specified category IDs.
          items:
            type: string
          type: array
        cursor:
          description: The pagination token, returned in the previous response, used to fetch the next batch of pending results.
          type: string
        custom_attribute_filters:
          description: |-
            The customer-attribute filter to return items or item variations matching the specified
            custom attribute expressions. A maximum number of 10 custom attribute expressions are supported in
            a single call to the [SearchCatalogItems](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-items) endpoint.
          items:
            $ref: "#/components/schemas/CustomAttributeFilter"
          type: array
        enabled_location_ids:
          description: The enabled-location query expression to return items and item variations having specified enabled locations.
          items:
            type: string
          type: array
        limit:
          description: The maximum number of results to return per page. The default value is 100.
          maximum: 100
          type: integer
        product_types:
          description: The product types query expression to return items or item variations having the specified product types.
          items:
            type: string
          type: array
        sort_order:
          description: The order to sort the results by item names. The default sort order is ascending (`ASC`).
          type: string
        stock_levels:
          description: The stock-level query expression to return item variations with the specified stock levels.
          items:
            type: string
          type: array
        text_filter:
          description: |-
            The text filter expression to return items or item variations containing specified text in
            the `name`, `description`, or `abbreviation` attribute value of an item, or in
            the `name`, `sku`, or `upc` attribute value of an item variation.
          type: string
      type: object
      x-release-status: PUBLIC
    SearchCatalogItemsRequestStockLevel:
      description: Defines supported stock levels of the item inventory.
      enum:
        - OUT
        - LOW
      type: string
      x-enum-elements:
        - description: The item inventory is empty.
          name: OUT
        - description: The item inventory is low.
          name: LOW
      x-release-status: PUBLIC
    SearchCatalogItemsResponse:
      description: Defines the response body returned from the [SearchCatalogItems](https://developer.squareup.com/reference/square_2021-08-18/catalog-api/search-catalog-items) endpoint.
      example:
        items:
          - custom_attribute_values:
              BRAND:
                custom_attribute_definition_id: BRAND_DEFINITION_ID
                key: BRAND
                name: Brand
                string_value: Dark Horse
                type: STRING
              VARIETAL:
                custom_attribute_definition_id: VARIETAL_DEFINITION_ID
                key: VARIETAL
                name: Varietal
                selection_uid_values:
                  - MERLOT_SELECTION_ID
                  - null
                type: SELECTION
              VINTAGE:
                custom_attribute_definition_id: EI7IJQDUKYSHULREPIPH6HNU
                key: VINTAGE
                name: Vintage
                number_value: 2018
                type: NUMBER
            id: GPOKJPTV2KDLVKCADJ7I77EZ
            is_deleted: false
            item_data:
              description: A nice red wine
              name: Dark Horse Merlot 2018
              product_type: REGULAR
              variations:
                - id: VBJNPHCOKDFECR6VU25WRJUD
                  is_deleted: false
                  item_variation_data:
                    item_id: GPOKJPTV2KDLVKCADJ7I77EZ
                    name: 750 mL
                    ordinal: 0
                    price_money:
                      amount: 1000
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2020-06-18T17:55:56.646Z
                  version: 1592502956646
            present_at_all_locations: true
            type: ITEM
            updated_at: 2020-06-18T17:55:56.646Z
            version: 1592502956646
        matched_variation_ids:
          - VBJNPHCOKDFECR6VU25WRJUD
      properties:
        cursor:
          description: Pagination token used in the next request to return more of the search result.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        items:
          description: Returned items matching the specified query expressions.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
        matched_variation_ids:
          description: Ids of returned item variations matching the specified query expression.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    SearchCatalogObjectsRequest:
      description: ""
      example:
        request_body:
          limit: 100
          object_types:
            - ITEM
          query:
            prefix_query:
              attribute_name: name
              attribute_prefix: tea
      properties:
        begin_time:
          description: |-
            Return objects modified after this [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates), in RFC 3339
            format, e.g., `2016-09-04T23:59:33.123Z`. The timestamp is exclusive - objects with a
            timestamp equal to `begin_time` will not be included in the response.
          type: string
        cursor:
          description: |-
            The pagination cursor returned in the previous response. Leave unset for an initial request.
            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        include_deleted_objects:
          description: |-
            If `true`, deleted objects will be included in the results. Deleted objects will have their
            `is_deleted` field set to `true`.
          type: boolean
        include_related_objects:
          description: |-
            If `true`, the response will include additional objects that are related to the
            requested object, as follows:

            If a CatalogItem is returned in the object field of the response,
            its associated CatalogCategory, CatalogTax objects,
            CatalogImage objects and CatalogModifierList objects
            will be included in the `related_objects` field of the response.

            If a CatalogItemVariation is returned in the object field of the
            response, its parent CatalogItem will be included in the `related_objects` field of
            the response.
          type: boolean
        limit:
          description: |-
            A limit on the number of results to be returned in a single page. The limit is advisory -
            the implementation may return more or fewer results. If the supplied limit is negative, zero, or
            is higher than the maximum limit of 1,000, it will be ignored.
          type: integer
        object_types:
          description: The desired set of object types to appear in the search results.
          items:
            type: string
          type: array
        query:
          $ref: "#/components/schemas/CatalogQuery"
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.csharp
        java: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.java
        javascript: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.javascript
        php: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.php
        python: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.python
        ruby: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsRequest.ruby
    SearchCatalogObjectsResponse:
      description: ""
      example:
        objects:
          - id: X5DZ5NWWAQ44CKBLKIFQGOWK
            is_deleted: false
            item_data:
              category_id: E7CLE5RZZ744BHWVQQEAHI2C
              description: A delicious blend of black tea.
              name: Tea - Black
              product_type: REGULAR
              tax_ids:
                - ZXITPM6RWHZ7GZ7EIP3YKECM
              variations:
                - id: 5GSZPX6EU7MM75S57OONG3V5
                  is_deleted: false
                  item_variation_data:
                    item_id: X5DZ5NWWAQ44CKBLKIFQGOWK
                    name: Regular
                    ordinal: 1
                    price_money:
                      amount: 150
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2017-10-26T15:27:31.626Z
                  version: 1509031651626
                - id: XVLBN7DU6JTWHJTG5F265B43
                  is_deleted: false
                  item_variation_data:
                    item_id: X5DZ5NWWAQ44CKBLKIFQGOWK
                    name: Large
                    ordinal: 2
                    price_money:
                      amount: 225
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2017-10-26T15:27:31.626Z
                  version: 1509031651626
              visibility: PRIVATE
            present_at_all_locations: true
            type: ITEM
            updated_at: 2017-10-26T15:41:32.337Z
            version: 1509032492337
          - id: NNNEM3LA656Q46NXLWCNI7S5
            is_deleted: false
            item_data:
              category_id: E7CLE5RZZ744BHWVQQEAHI2C
              description: Relaxing green herbal tea.
              name: Tea - Green
              product_type: REGULAR
              tax_ids:
                - ZXITPM6RWHZ7GZ7EIP3YKECM
              variations:
                - id: FHYBVIA6NVBCSOVETA62WEA4
                  is_deleted: false
                  item_variation_data:
                    item_id: NNNEM3LA656Q46NXLWCNI7S5
                    name: Regular
                    ordinal: 1
                    price_money:
                      amount: 150
                      currency: USD
                    pricing_type: FIXED_PRICING
                  present_at_all_locations: true
                  type: ITEM_VARIATION
                  updated_at: 2017-10-26T15:29:00.524Z
                  version: 1509031740524
              visibility: PRIVATE
            present_at_all_locations: true
            type: ITEM
            updated_at: 2017-10-26T15:41:23.232Z
            version: 1509032483232
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If unset, this is the final response.
            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        latest_time:
          description: |-
            When the associated product catalog was last updated. Will
            match the value for `end_time` or `cursor` if either field is included in the `SearchCatalog` request.
          type: string
          x-is-beta: true
          x-release-status: BETA
        objects:
          description: The CatalogObjects returned.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
        related_objects:
          description: A list of CatalogObjects referenced by the objects in the `objects` field.
          items:
            $ref: "#/components/schemas/CatalogObject"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.csharp
        java: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.java
        javascript: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.javascript
        php: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.php
        python: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.python
        ruby: /sdk_samples/Catalog/SearchCatalogObjects/SearchCatalogObjectsResponse.ruby
    SearchCustomersRequest:
      description: |-
        Defines the fields that are included in the request body of a request to the
        `SearchCustomers` endpoint.
      example:
        request_body:
          limit: 2
          query:
            filter:
              created_at:
                end_at: 2018-02-01T00:00:00-00:00
                start_at: 2018-01-01T00:00:00-00:00
              creation_source:
                rule: INCLUDE
                values:
                  - THIRD_PARTY
              email_address:
                fuzzy: example.com
              group_ids:
                all:
                  - 545AXB44B4XXWMVQ4W8SBT3HHF
            sort:
              field: CREATED_AT
              order: ASC
      properties:
        cursor:
          description: |-
            Include the pagination cursor in subsequent calls to this endpoint to retrieve
            the next set of results associated with the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The maximum number of results to return in a single page. This limit is advisory. The response might contain more or fewer results. 
            The limit is ignored if it is less than the minimum or greater than the maximum value. The default value is 100.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          format: int64
          maximum: 100
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/CustomerQuery"
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/SearchCustomers/SearchCustomersRequest.csharp
        java: /sdk_samples/SearchCustomers/SearchCustomersRequest.java
        javascript: /sdk_samples/SearchCustomers/SearchCustomersRequest.javascript
        php: /sdk_samples/SearchCustomers/SearchCustomersRequest.php
        python: /sdk_samples/SearchCustomers/SearchCustomersRequest.python
        ruby: /sdk_samples/SearchCustomers/SearchCustomersRequest.ruby
    SearchCustomersResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `SearchCustomers` endpoint.

        Either `errors` or `customers` is present in a given response (never both).
      example:
        cursor: 9dpS093Uy12AzeE
        customers:
          - address:
              address_line_1: 505 Electric Ave
              address_line_2: Suite 600
              administrative_district_level_1: NY
              country: US
              locality: New York
              postal_code: "10003"
            created_at: 2018-01-23T20:21:54.859Z
            creation_source: DIRECTORY
            email_address: james.bond@example.com
            family_name: Bond
            given_name: James
            group_ids:
              - 545AXB44B4XXWMVQ4W8SBT3HHF
            id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            phone_number: 1-212-555-4250
            preferences:
              email_unsubscribed: false
            reference_id: YOUR_REFERENCE_ID_2
            segment_ids:
              - 1KB9JE5EGJXCW.REACHABLE
            updated_at: 2020-04-20T10:02:43.083Z
            version: 7
          - address:
              address_line_1: 500 Electric Ave
              address_line_2: Suite 600
              administrative_district_level_1: NY
              country: US
              locality: New York
              postal_code: "10003"
            created_at: 2018-01-30T14:10:54.859Z
            creation_source: THIRD_PARTY
            email_address: amelia.earhart@example.com
            family_name: Earhart
            given_name: Amelia
            group_ids:
              - 545AXB44B4XXWMVQ4W8SBT3HHF
            id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            note: a customer
            phone_number: 1-212-555-4240
            preferences:
              email_unsubscribed: false
            reference_id: YOUR_REFERENCE_ID_1
            segment_ids:
              - 1KB9JE5EGJXCW.REACHABLE
            updated_at: 2018-03-08T18:25:21.342Z
            version: 1
      properties:
        cursor:
          description: |-
            A pagination cursor that can be used during subsequent calls
            to `SearchCustomers` to retrieve the next set of results associated
            with the original query. Pagination cursors are only present when
            a request succeeds and additional results are available.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        customers:
          description: An array of `Customer` objects that match a query.
          items:
            $ref: "#/components/schemas/Customer"
          type: array
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/SearchCustomers/SearchCustomersResponse.csharp
        java: /sdk_samples/SearchCustomers/SearchCustomersResponse.java
        javascript: /sdk_samples/SearchCustomers/SearchCustomersResponse.javascript
        php: /sdk_samples/SearchCustomers/SearchCustomersResponse.php
        python: /sdk_samples/SearchCustomers/SearchCustomersResponse.python
        ruby: /sdk_samples/SearchCustomers/SearchCustomersResponse.ruby
    SearchInvoicesRequest:
      description: Describes a `SearchInvoices` request.
      example:
        request_body:
          query:
            filter:
              customer_ids:
                - JDKYHBWT1D4F8MFH63DBMEN8Y4
              location_ids:
                - ES0RJRZYEC39A
            limit: 100
            sort:
              field: INVOICE_SORT_DATE
              order: DESC
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint. 
            Provide this cursor to retrieve the next set of results for your original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The maximum number of invoices to return (200 is the maximum `limit`). 
            If not provided, the server uses a default limit of 100 invoices.
          type: integer
        query:
          $ref: "#/components/schemas/InvoiceQuery"
      required:
        - query
      type: object
      x-release-status: PUBLIC
    SearchInvoicesResponse:
      description: Describes a `SearchInvoices` response.
      example:
        cursor: ChoIDhIWVm54ZVRhLXhySFBOejBBM2xJb2daUQoFCI4IGAE
        invoices:
          - accepted_payment_methods:
              bank_account: false
              card: true
              square_gift_card: false
            created_at: 2020-06-18T17:45:13Z
            custom_fields:
              - label: Event Reference Number
                placement: ABOVE_LINE_ITEMS
                value: "Ref. #1234"
              - label: Terms of Service
                placement: BELOW_LINE_ITEMS
                value: The terms of service are...
            delivery_method: EMAIL
            description: We appreciate your business!
            id: inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
            invoice_number: inv-100
            location_id: ES0RJRZYEC39A
            order_id: CAISENgvlJ6jLWAzERDzjyHVybY
            payment_requests:
              - automatic_payment_source: NONE
                computed_amount_money:
                  amount: 10000
                  currency: USD
                due_date: 2030-01-24
                reminders:
                  - message: Your invoice is due tomorrow
                    relative_scheduled_days: -1
                    status: PENDING
                    uid: beebd363-e47f-4075-8785-c235aaa7df11
                request_type: BALANCE
                tipping_enabled: true
                total_completed_amount_money:
                  amount: 0
                  currency: USD
                uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
            primary_recipient:
              customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
              email_address: Amelia.Earhart@example.com
              family_name: Earhart
              given_name: Amelia
              phone_number: 1-212-555-4240
            scheduled_at: 2030-01-13T10:00:00Z
            status: DRAFT
            timezone: America/Los_Angeles
            title: Event Planning Services
            updated_at: 2020-06-18T17:45:13Z
            version: 0
          - accepted_payment_methods:
              bank_account: false
              card: true
              square_gift_card: true
            created_at: 2021-01-23T15:29:12Z
            delivery_method: EMAIL
            id: inv:0-ChC366qAfskpGrBI_1bozs9mEA3
            invoice_number: inv-455
            location_id: ES0RJRZYEC39A
            next_payment_amount_money:
              amount: 3000
              currency: USD
            order_id: a65jnS8NXbfprvGJzY9F4fQTuaB
            payment_requests:
              - automatic_payment_source: CARD_ON_FILE
                card_id: ccof:IkWfpLj4tNHMyFii3GB
                computed_amount_money:
                  amount: 1000
                  currency: USD
                due_date: 2021-01-23
                percentage_requested: "25"
                request_type: DEPOSIT
                tipping_enabled: false
                total_completed_amount_money:
                  amount: 1000
                  currency: USD
                uid: 66c3bdfd-5090-4ff9-a8a0-c1e1a2ffa176
              - automatic_payment_source: CARD_ON_FILE
                card_id: ccof:IkWfpLj4tNHMyFii3GB
                computed_amount_money:
                  amount: 3000
                  currency: USD
                due_date: 2021-06-15
                request_type: BALANCE
                tipping_enabled: false
                total_completed_amount_money:
                  amount: 0
                  currency: USD
                uid: 120c5e18-4f80-4f6b-b159-774cb9bf8f99
            primary_recipient:
              customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
              email_address: Amelia.Earhart@example.com
              family_name: Earhart
              given_name: Amelia
              phone_number: 1-212-555-4240
            public_url: https://squareup.com/pay-invoice/h9sfsfTGTSnYEhISUDBhEQ
            status: PARTIALLY_PAID
            timezone: America/Los_Angeles
            updated_at: 2021-01-23T15:29:56Z
            version: 3
      properties:
        cursor:
          description: |-
            When a response is truncated, it includes a cursor that you can use in a 
            subsequent request to fetch the next set of invoices. If empty, this is the final 
            response. 
            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        invoices:
          description: The list of invoices returned by the search.
          items:
            $ref: "#/components/schemas/Invoice"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyAccountsRequest:
      description: A request to search for loyalty accounts.
      example:
        request_body:
          limit: 10
          query:
            mappings:
              - phone_number: "+14155551234"
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to 
            this endpoint. Provide this to retrieve the next set of 
            results for the original query.

            For more information, 
            see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        limit:
          description: The maximum number of results to include in the response.
          maximum: 30
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/SearchLoyaltyAccountsRequestLoyaltyAccountQuery"
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyAccountsRequestLoyaltyAccountQuery:
      description: The search criteria for the loyalty accounts.
      properties:
        customer_ids:
          description: |-
            The set of customer IDs to use in the loyalty account search.  

            This cannot be combined with `mappings`.  

            Max: 30 customer IDs
          items:
            type: string
          type: array
        mappings:
          description: |-
            The set of mappings to use in the loyalty account search.  

            This cannot be combined with `customer_ids`.  

            Max: 30 mappings
          items:
            $ref: "#/components/schemas/LoyaltyAccountMapping"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyAccountsResponse:
      description: A response that includes loyalty accounts that satisfy the search criteria.
      example:
        loyalty_accounts:
          - balance: 10
            created_at: 2020-05-08T21:44:32Z
            customer_id: Q8002FAM9V1EZ0ADB2T5609X6NET1H0
            id: 79b807d2-d786-46a9-933b-918028d7a8c5
            lifetime_points: 20
            mapping:
              created_at: 2020-05-08T21:44:32Z
              id: 66aaab3f-da99-49ed-8b19-b87f851c844f
              phone_number: "+14155551234"
            program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
            updated_at: 2020-05-08T21:44:32Z
      properties:
        cursor:
          description: |-
            The pagination cursor to use in a subsequent 
            request. If empty, this is the final response.
            For more information, 
            see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        loyalty_accounts:
          description: |-
            The loyalty accounts that met the search criteria,  
            in order of creation date.
          items:
            $ref: "#/components/schemas/LoyaltyAccount"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyEventsRequest:
      description: A request to search for loyalty events.
      example:
        request_body:
          limit: 30
          query:
            filter:
              order_filter:
                order_id: PyATxhYLfsMqpVkcKJITPydgEYfZY
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for your original query.
            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        limit:
          description: |-
            The maximum number of results to include in the response. 
            The last page might contain fewer events. 
            The default is 30 events.
          maximum: 30
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/LoyaltyEventQuery"
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyEventsResponse:
      description: |-
        A response that contains loyalty events that satisfy the search 
        criteria, in order by the `created_at` date.
      example:
        events:
          - accumulate_points:
              loyalty_program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
              order_id: PyATxhYLfsMqpVkcKJITPydgEYfZY
              points: 5
            created_at: 2020-05-08T22:01:30Z
            id: c27c8465-806e-36f2-b4b3-71f5887b5ba8
            location_id: P034NEENMD09F
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            source: LOYALTY_API
            type: ACCUMULATE_POINTS
          - created_at: 2020-05-08T22:01:15Z
            id: e4a5cbc3-a4d0-3779-98e9-e578885d9430
            location_id: P034NEENMD09F
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            redeem_reward:
              loyalty_program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
              order_id: PyATxhYLfsMqpVkcKJITPydgEYfZY
              reward_id: d03f79f4-815f-3500-b851-cc1e68a457f9
            source: LOYALTY_API
            type: REDEEM_REWARD
          - create_reward:
              loyalty_program_id: d619f755-2d17-41f3-990d-c04ecedd64dd
              points: -10
              reward_id: d03f79f4-815f-3500-b851-cc1e68a457f9
            created_at: 2020-05-08T22:00:44Z
            id: 5e127479-0b03-3671-ab1e-15faea8b7188
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            source: LOYALTY_API
            type: CREATE_REWARD
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent 
            request. If empty, this is the final response. 
            For more information, 
            see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        events:
          description: The loyalty events that satisfy the search criteria.
          items:
            $ref: "#/components/schemas/LoyaltyEvent"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyRewardsRequest:
      description: A request to search for loyalty rewards.
      example:
        request_body:
          limit: 10
          query:
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to 
            this endpoint. Provide this to retrieve the next set of 
            results for the original query.
            For more information, 
            see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        limit:
          description: The maximum number of results to return in the response.
          maximum: 30
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/SearchLoyaltyRewardsRequestLoyaltyRewardQuery"
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyRewardsRequestLoyaltyRewardQuery:
      description: The set of search requirements.
      properties:
        loyalty_account_id:
          description: The ID of the [loyalty account](https://developer.squareup.com/reference/square_2021-08-18/objects/LoyaltyAccount) to which the loyalty reward belongs.
          type: string
        status:
          description: The status of the loyalty reward.
          type: string
      required:
        - loyalty_account_id
      type: object
      x-release-status: PUBLIC
    SearchLoyaltyRewardsResponse:
      description: A response that includes the loyalty rewards satisfying the search criteria.
      example:
        rewards:
          - created_at: 2020-05-08T22:00:44Z
            id: d03f79f4-815f-3500-b851-cc1e68a457f9
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            order_id: PyATxhYLfsMqpVkcKJITPydgEYfZY
            points: 10
            redeemed_at: 2020-05-08T22:01:17Z
            reward_tier_id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
            status: REDEEMED
            updated_at: 2020-05-08T22:01:17Z
          - created_at: 2020-05-08T21:55:42Z
            id: 9f18ac21-233a-31c3-be77-b45840f5a810
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            points: 10
            redeemed_at: 2020-05-08T21:56:00Z
            reward_tier_id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
            status: REDEEMED
            updated_at: 2020-05-08T21:56:00Z
          - created_at: 2020-05-01T21:49:54Z
            id: a8f43ebe-2ad6-3001-bdd5-7d7c2da08943
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            order_id: 5NB69ZNh3FbsOs1ox43bh1xrli6YY
            points: 10
            reward_tier_id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
            status: DELETED
            updated_at: 2020-05-08T21:55:10Z
          - created_at: 2020-05-01T20:20:37Z
            id: a051254c-f840-3b45-8cf1-50bcd38ff92a
            loyalty_account_id: 5adcb100-07f1-4ee7-b8c6-6bb9ebc474bd
            order_id: LQQ16znvi2VIUKPVhUfJefzr1eEZY
            points: 10
            reward_tier_id: e1b39225-9da5-43d1-a5db-782cdd8ad94f
            status: ISSUED
            updated_at: 2020-05-01T20:20:40Z
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent 
            request. If empty, this is the final response.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        rewards:
          description: |-
            The loyalty rewards that satisfy the search criteria.
            These are returned in descending order by `updated_at`.
          items:
            $ref: "#/components/schemas/LoyaltyReward"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchOrdersCustomerFilter:
      description: |-
        A filter based on the order `customer_id` and any tender `customer_id`
        associated with the order. It does not filter based on the
        [FulfillmentRecipient](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderFulfillmentRecipient) `customer_id`.
      properties:
        customer_ids:
          description: |-
            A list of customer IDs to filter by.

            Max: 10 customer IDs.
          items:
            type: string
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    SearchOrdersDateTimeFilter:
      description: |-
        Filter for `Order` objects based on whether their `CREATED_AT`,
        `CLOSED_AT`, or `UPDATED_AT` timestamps fall within a specified time range.
        You can specify the time range and which timestamp to filter for. You can filter
        for only one time range at a time.

        For each time range, the start time and end time are inclusive. If the end time
        is absent, it defaults to the time of the first request for the cursor.

        __Important:__ If you use the `DateTimeFilter` in a `SearchOrders` query,
        you must set the `sort_field` in [OrdersSort](https://developer.squareup.com/reference/square_2021-08-18/objects/SearchOrdersSort)
        to the same field you filter for. For example, if you set the `CLOSED_AT` field
        in `DateTimeFilter`, you must set the `sort_field` in `SearchOrdersSort` to
        `CLOSED_AT`. Otherwise, `SearchOrders` throws an error.
        [Learn more about filtering orders by time range.](https://developer.squareup.com/docs/orders-api/manage-orders#important-note-on-filtering-orders-by-time-range)
      properties:
        closed_at:
          $ref: "#/components/schemas/TimeRange"
        created_at:
          $ref: "#/components/schemas/TimeRange"
        updated_at:
          $ref: "#/components/schemas/TimeRange"
      type: object
      x-release-status: PUBLIC
    SearchOrdersFilter:
      description: |-
        Filtering criteria to use for a `SearchOrders` request. Multiple filters
        are ANDed together.
      properties:
        customer_filter:
          $ref: "#/components/schemas/SearchOrdersCustomerFilter"
        date_time_filter:
          $ref: "#/components/schemas/SearchOrdersDateTimeFilter"
        fulfillment_filter:
          $ref: "#/components/schemas/SearchOrdersFulfillmentFilter"
        source_filter:
          $ref: "#/components/schemas/SearchOrdersSourceFilter"
        state_filter:
          $ref: "#/components/schemas/SearchOrdersStateFilter"
      type: object
      x-release-status: PUBLIC
    SearchOrdersFulfillmentFilter:
      description: Filter based on [order fulfillment](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderFulfillment) information.
      properties:
        fulfillment_states:
          description: |-
            A list of [fulfillment states](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderFulfillmentState) to filter
            for. The list returns orders if any of its fulfillments match any of the
            fulfillment states listed in this field.
          items:
            type: string
          type: array
        fulfillment_types:
          description: |-
            A list of [fulfillment types](https://developer.squareup.com/reference/square_2021-08-18/enums/OrderFulfillmentType) to filter
            for. The list returns orders if any of its fulfillments match any of the fulfillment types
            listed in this field.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    SearchOrdersQuery:
      description: Contains query criteria for the search.
      properties:
        filter:
          $ref: "#/components/schemas/SearchOrdersFilter"
        sort:
          $ref: "#/components/schemas/SearchOrdersSort"
      type: object
      x-release-status: PUBLIC
    SearchOrdersRequest:
      description: |-
        The request does not have any required fields. When given no query criteria,
        `SearchOrders` returns all results for all of the seller's locations. When retrieving additional
        pages using a `cursor`, the `query` must be equal to the `query` used to retrieve the first page of
        results.
      example:
        request_body:
          limit: 3
          location_ids:
            - 057P5VYJ4A5X1
            - 18YC4JDH91E1H
          query:
            filter:
              date_time_filter:
                closed_at:
                  end_at: 2019-03-04T21:54:45+00:00
                  start_at: 2018-03-03T20:00:00+00:00
              state_filter:
                states:
                  - COMPLETED
            sort:
              sort_field: CLOSED_AT
              sort_order: DESC
          return_entries: true
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for your original query.
            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        limit:
          description: |-
            The maximum number of results to be returned in a single page. It is
            possible to receive fewer results than the specified limit on a given page.

            Default: `500`
          minimum: 1
          type: integer
        location_ids:
          description: |-
            The location IDs for the orders to query. All locations must belong to
            the same merchant.

            Min: 1 location ID.

            Max: 10 location IDs.
          items:
            type: string
          type: array
        query:
          $ref: "#/components/schemas/SearchOrdersQuery"
        return_entries:
          description: |-
            A Boolean that controls the format of the search results. If `true`,
            `SearchOrders` returns [OrderEntry](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderEntry) objects. If `false`, `SearchOrders`
            returns complete order objects.

            Default: `false`.
          type: boolean
      type: object
      x-release-status: PUBLIC
    SearchOrdersResponse:
      description: |-
        Either the `order_entries` or `orders` field is set, depending on whether
        `return_entries` is set on the [SearchOrdersRequest](https://developer.squareup.com/reference/square_2021-08-18/orders-api/search-orders).
      example:
        cursor: "123"
        order_entries:
          - location_id: 057P5VYJ4A5X1
            order_id: CAISEM82RcpmcFBM0TfOyiHV3es
            version: 1
          - location_id: 18YC4JDH91E1H
            order_id: CAISENgvlJ6jLWAzERDzjyHVybY
          - location_id: 057P5VYJ4A5X1
            order_id: CAISEM52YcpmcWAzERDOyiWS3ty
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If unset,
            this is the final response.
            For more information, see [Pagination](https://developer.squareup.com/docs/basics/api101/pagination).
          type: string
        errors:
          description: "[Errors](https://developer.squareup.com/reference/square_2021-08-18/objects/Error) encountered during the search."
          items:
            $ref: "#/components/schemas/Error"
          type: array
        order_entries:
          description: |-
            A list of [OrderEntries](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderEntry) that fit the query
            conditions. The list is populated only if `return_entries` is set to `true` in the request.
          items:
            $ref: "#/components/schemas/OrderEntry"
          type: array
        orders:
          description: |-
            A list of
            [Order](https://developer.squareup.com/reference/square_2021-08-18/objects/Order) objects that match the query conditions. The list is populated only if
            `return_entries` is set to `false` in the request.
          items:
            $ref: "#/components/schemas/Order"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchOrdersSort:
      description: |-
        Sorting criteria for a `SearchOrders` request. Results can only be sorted
        by a timestamp field.
      properties:
        sort_field:
          description: |-
            The field to sort by.

            __Important:__ When using a [DateTimeFilter](https://developer.squareup.com/reference/square_2021-08-18/objects/SearchOrdersFilter),
            `sort_field` must match the timestamp field that the `DateTimeFilter` uses to
            filter. For example, if you set your `sort_field` to `CLOSED_AT` and you use a
            `DateTimeFilter`, your `DateTimeFilter` must filter for orders by their `CLOSED_AT` date.
            If this field does not match the timestamp field in `DateTimeFilter`,
            `SearchOrders` returns an error.

            Default: `CREATED_AT`.
          type: string
        sort_order:
          description: The chronological order in which results are returned. Defaults to `DESC`.
          type: string
      required:
        - sort_field
      type: object
      x-release-status: PUBLIC
    SearchOrdersSortField:
      description: Specifies which timestamp to use to sort `SearchOrder` results.
      enum:
        - CREATED_AT
        - UPDATED_AT
        - CLOSED_AT
      type: string
      x-enum-elements:
        - description: |-
            The time when the order was created, in RFC-3339 format. If you are also
            filtering for a time range in this query, you must set the `CREATED_AT`
            field in your `DateTimeFilter`.
          name: CREATED_AT
        - description: |-
            The time when the order last updated, in RFC-3339 format. If you are also
            filtering for a time range in this query, you must set the `UPDATED_AT`
            field in your `DateTimeFilter`.
          name: UPDATED_AT
        - description: |-
            The time when the order was closed, in RFC-3339 format. If you use this
            value, you must also set a `StateFilter` with closed states. If you are also
            filtering for a time range in this query, you must set the `CLOSED_AT`
            field in your `DateTimeFilter`.
          name: CLOSED_AT
      x-release-status: PUBLIC
    SearchOrdersSourceFilter:
      description: A filter based on order `source` information.
      properties:
        source_names:
          description: |-
            Filters by the [Source](https://developer.squareup.com/reference/square_2021-08-18/objects/OrderSource) `name`. The filter returns any orders
            with a `source.name` that matches any of the listed source names.

            Max: 10 source names.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    SearchOrdersStateFilter:
      description: Filter by the current order `state`.
      properties:
        states:
          description: States to filter for.
          items:
            type: string
          type: array
      required:
        - states
      type: object
      x-release-status: PUBLIC
    SearchShiftsRequest:
      description: A request for a filtered and sorted set of `Shift` objects.
      example:
        request_body:
          limit: 100
          query:
            filter:
              workday:
                date_range:
                  end_date: 2019-02-03
                  start_date: 2019-01-20
                default_timezone: America/Los_Angeles
                match_shifts_by: START_AT
      properties:
        cursor:
          description: An opaque cursor for fetching the next page.
          type: string
        limit:
          description: The number of resources in a page (200 by default).
          maximum: 200
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/ShiftQuery"
      type: object
      x-release-status: PUBLIC
    SearchShiftsResponse:
      description: |-
        The response to a request for `Shift` objects. The response contains
        the requested `Shift` objects and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        shifts:
          - breaks:
              - break_type_id: REGS1EQR1TPZ5
                end_at: 2019-01-21T06:11:00-05:00
                expected_duration: PT10M
                id: SJW7X6AKEJQ65
                is_paid: true
                name: Tea Break
                start_at: 2019-01-21T06:11:00-05:00
            created_at: 2019-01-24T01:12:03Z
            employee_id: ormj0jJJZ5OZIzxrZYJI
            end_at: 2019-01-21T13:11:00-05:00
            id: X714F3HA6D1PT
            location_id: PAA1RJZZKXBFG
            start_at: 2019-01-21T03:11:00-05:00
            status: CLOSED
            team_member_id: ormj0jJJZ5OZIzxrZYJI
            timezone: America/New_York
            updated_at: 2019-02-07T22:21:08Z
            version: 6
            wage:
              hourly_rate:
                amount: 1100
                currency: USD
              title: Barista
          - breaks:
              - break_type_id: WQX00VR99F53J
                end_at: 2019-01-23T14:40:00-05:00
                expected_duration: PT10M
                id: BKS6VR7WR748A
                is_paid: true
                name: Tea Break
                start_at: 2019-01-23T14:30:00-05:00
              - break_type_id: P6Q468ZFRN1AC
                end_at: 2019-01-22T12:44:00-05:00
                expected_duration: PT15M
                id: BQFEZSHFZSC51
                is_paid: false
                name: Coffee Break
                start_at: 2019-01-22T12:30:00-05:00
            created_at: 2019-01-23T23:32:45Z
            employee_id: 33fJchumvVdJwxV0H6L9
            end_at: 2019-01-22T13:02:00-05:00
            id: GDHYBZYWK0P2V
            location_id: PAA1RJZZKXBFG
            start_at: 2019-01-22T12:02:00-05:00
            status: CLOSED
            team_member_id: 33fJchumvVdJwxV0H6L9
            timezone: America/New_York
            updated_at: 2019-01-24T00:56:25Z
            version: 16
            wage:
              hourly_rate:
                amount: 1600
                currency: USD
              title: Cook
      properties:
        cursor:
          description: An opaque cursor for fetching the next page.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        shifts:
          description: Shifts.
          items:
            $ref: "#/components/schemas/Shift"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchSubscriptionsFilter:
      description: Represents a set of SearchSubscriptionsQuery filters used to limit the set of Subscriptions returned by SearchSubscriptions.
      properties:
        customer_ids:
          description: A filter to select subscriptions based on the customer.
          items:
            type: string
          type: array
        location_ids:
          description: A filter to select subscriptions based the location.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    SearchSubscriptionsQuery:
      description: Represents a query (including filtering criteria) used to search for subscriptions.
      properties:
        filter:
          $ref: "#/components/schemas/SearchSubscriptionsFilter"
      type: object
      x-release-status: PUBLIC
    SearchSubscriptionsRequest:
      description: |-
        Defines parameters in a
        [SearchSubscriptions](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/search-subscriptions) endpoint
        request.
      example:
        request_body:
          query:
            filter:
              customer_ids:
                - CHFGVKYY8RSV93M5KCYTG4PN0G
              location_ids:
                - S8GWD5R9QB376
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this to retrieve the next set of results for the original query.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: |-
            The upper limit on the number of subscriptions to return
            in the response.

            Default: `200`
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/SearchSubscriptionsQuery"
      required:
        - location_ids
      type: object
      x-release-status: PUBLIC
    SearchSubscriptionsResponse:
      description: |-
        Defines the fields that are included in the response from the
        [SearchSubscriptions](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/search-subscriptions) endpoint.
      example:
        subscriptions:
          - canceled_date: 2020-04-14
            card_id: ccof:mueUsvgajChmjEbp4GB
            charged_through_date: 2020-05-14
            created_at: 2020-08-03T21:53:10Z
            customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
            id: de86fc96-8664-474b-af1a-abbe59cacf0e
            location_id: S8GWD5R9QB376
            paid_until_date: 2020-05-14
            plan_id: L3TJVDHVBEQEGQDEZL2JJM7R
            start_date: 2020-04-14
            status: CANCELED
            timezone: UTC
          - created_at: 2020-08-03T21:53:10Z
            customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
            id: 56214fb2-cc85-47a1-93bc-44f3766bb56f
            location_id: S8GWD5R9QB376
            plan_id: 6JHXF3B2CW3YKHDV4XEM674H
            price_override_money:
              amount: 100
              currency: USD
            start_date: 2020-08-01
            status: PENDING
            tax_percentage: "5"
            timezone: America/Los_Angeles
            version: 1594155459464
          - charged_through_date: 2020-06-11
            created_at: 2020-08-03T21:53:10Z
            customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
            id: 8151fc89-da15-4eb9-a685-1a70883cebfc
            invoice_ids:
              - grebK0Q_l8H4fqoMMVvt-Q
              - rcX_i3sNmHTGKhI4W2mceA
            location_id: S8GWD5R9QB376
            paid_until_date: 2020-06-11
            plan_id: 6JHXF3B2CW3YKHDV4XEM674H
            price_override_money:
              amount: 1000
              currency: USD
            start_date: 2020-05-11
            status: ACTIVE
            timezone: America/Los_Angeles
      properties:
        cursor:
          description: |-
            When a response is truncated, it includes a cursor that you can
            use in a subsequent request to fetch the next set of subscriptions.
            If empty, this is the final response.

            For more information, see [Pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        subscriptions:
          description: The search result.
          items:
            $ref: "#/components/schemas/Subscription"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchTeamMembersFilter:
      description: |-
        Represents a filter used in a search for `TeamMember` objects. `AND` logic is applied
        between the individual fields, and `OR` logic is applied within list-based fields.
        For example, setting this filter value:
        ```
        filter = (locations_ids = ["A", "B"], status = ACTIVE)
        ```
        returns only active team members assigned to either location "A" or "B".
      properties:
        location_ids:
          description: |-
            When present, filters by team members assigned to the specified locations.
            When empty, includes team members assigned to any location.
          items:
            type: string
          type: array
        status:
          description: |-
            When present, filters by team members who match the given status.
            When empty, includes team members of all statuses.
          type: string
      type: object
      x-release-status: PUBLIC
    SearchTeamMembersQuery:
      description: Represents the parameters in a search for `TeamMember` objects.
      properties:
        filter:
          $ref: "#/components/schemas/SearchTeamMembersFilter"
      type: object
      x-release-status: PUBLIC
    SearchTeamMembersRequest:
      description: Represents a search request for a filtered list of `TeamMember` objects.
      example:
        request_body:
          limit: 10
          query:
            filter:
              location_ids:
                - 0G5P3VGACMMQZ
              status: ACTIVE
      properties:
        cursor:
          description: |-
            The opaque cursor for fetching the next page. For more information, see
            [pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        limit:
          description: The maximum number of `TeamMember` objects in a page (100 by default).
          maximum: 100
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/SearchTeamMembersQuery"
      type: object
      x-release-status: PUBLIC
    SearchTeamMembersResponse:
      description: Represents a response from a search request containing a filtered list of `TeamMember` objects.
      example:
        cursor: N:9UglUjOXQ13-hMFypCft
        team_members:
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2019-07-10T17:26:48Z
            email_address: johnny_cash@squareup.com
            family_name: Cash
            given_name: Johnny
            id: -3oZQKPKVk6gUXU_V5Qa
            is_owner: false
            reference_id: "12345678"
            status: ACTIVE
            updated_at: 2020-04-28T21:49:28.957Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T18:14:01.127Z
            family_name: Smith
            given_name: Lombard
            id: 1AVJj0DjkzbmbJw5r4KK
            is_owner: false
            phone_number: "+14155552671"
            reference_id: abcded
            status: ACTIVE
            updated_at: 2020-06-09T17:38:05.423Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T01:09:25.010Z
            family_name: Sway
            given_name: Monica
            id: 2JCmiJol_KKFs9z2Evim
            is_owner: false
            status: ACTIVE
            updated_at: 2020-03-24T01:09:25.010Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T01:09:23.464Z
            family_name: Ipsum
            given_name: Elton
            id: 4uXcJQSLtbk3F0UQHFNQ
            is_owner: false
            status: ACTIVE
            updated_at: 2020-03-24T01:09:23.464Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T01:09:23.074Z
            family_name: Lo
            given_name: Steven
            id: 5CoUpyrw1YwGWcRd-eDL
            is_owner: false
            status: ACTIVE
            updated_at: 2020-03-24T01:09:23.074Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T18:14:03.865Z
            email_address: patrick_steward@gmail.com
            family_name: Steward
            given_name: Patrick
            id: 5MRPTTp8MMBLVSmzrGha
            is_owner: false
            phone_number: "+14155552671"
            status: ACTIVE
            updated_at: 2020-03-24T18:14:03.865Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T01:09:25.180Z
            family_name: Manny
            given_name: Ivy
            id: 7F5ZxsfRnkexhu1PTbfh
            is_owner: false
            status: ACTIVE
            updated_at: 2020-03-24T01:09:25.180Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T18:14:02.797Z
            email_address: john_smith@gmail.com
            family_name: Smith
            given_name: John
            id: 808X9HR72yKvVaigQXf4
            is_owner: false
            phone_number: "+14155552671"
            status: ACTIVE
            updated_at: 2020-03-24T18:14:02.797Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T18:14:00.399Z
            email_address: r_wen@gmail.com
            family_name: Wen
            given_name: Robert
            id: 9MVDVoY4hazkWKGo_OuZ
            is_owner: false
            phone_number: "+14155552671"
            status: ACTIVE
            updated_at: 2020-03-24T18:14:00.399Z
          - assigned_locations:
              assignment_type: ALL_CURRENT_AND_FUTURE_LOCATIONS
            created_at: 2020-03-24T18:14:00.445Z
            email_address: asimpson@gmail.com
            family_name: Simpson
            given_name: Ashley
            id: 9UglUjOXQ13-hMFypCft
            is_owner: false
            phone_number: "+14155552671"
            status: ACTIVE
            updated_at: 2020-03-24T18:14:00.445Z
      properties:
        cursor:
          description: |-
            The opaque cursor for fetching the next page. For more information, see
            [pagination](https://developer.squareup.com/docs/working-with-apis/pagination).
          type: string
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_members:
          description: The filtered list of `TeamMember` objects.
          items:
            $ref: "#/components/schemas/TeamMember"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchTerminalCheckoutsRequest:
      description: ""
      example:
        request_body:
          limit: 2
          query:
            filter:
              status: COMPLETED
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        limit:
          description: Limits the number of results returned for a single request.
          maximum: 100
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/TerminalCheckoutQuery"
      type: object
      x-release-status: PUBLIC
    SearchTerminalCheckoutsResponse:
      description: ""
      example:
        checkouts:
          - amount_money:
              amount: 2610
              currency: USD
            app_id: APP_ID
            created_at: 2020-03-31T18:13:15.921Z
            deadline_duration: PT10M
            device_options:
              device_id: dbb5d83a-7838-11ea-bc55-0242ac130003
              skip_receipt_screen: false
              tip_settings:
                allow_tipping: false
            id: tsQPvzwBpMqqO
            note: A brief note
            payment_ids:
              - rXnhZzywrEk4vR6pw76fPZfgvaB
            reference_id: id14467
            status: COMPLETED
            updated_at: 2020-03-31T18:13:52.725Z
          - amount_money:
              amount: 2610
              currency: USD
            app_id: APP_ID
            created_at: 2020-03-31T18:08:31.882Z
            deadline_duration: PT10M
            device_options:
              device_id: dbb5d83a-7838-11ea-bc55-0242ac130003
              skip_receipt_screen: true
              tip_settings:
                allow_tipping: false
            id: XlOPTgcEhrbqO
            note: A brief note
            payment_ids:
              - VYBF861PaoKPP7Pih0TlbZiNvaB
            reference_id: id41623
            status: COMPLETED
            updated_at: 2020-03-31T18:08:41.635Z
        cursor: RiTJqBoTuXlbLmmrPvEkX9iG7XnQ4W4RjGnH
      properties:
        checkouts:
          description: The requested search result of `TerminalCheckout` objects.
          items:
            $ref: "#/components/schemas/TerminalCheckout"
          type: array
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If empty,
            this is the final response.

            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    SearchTerminalRefundsRequest:
      description: ""
      example:
        request_body:
          limit: 1
          query:
            filter:
              status: COMPLETED
      properties:
        cursor:
          description: |-
            A pagination cursor returned by a previous call to this endpoint.
            Provide this cursor to retrieve the next set of results for the original query.
          type: string
        limit:
          description: Limits the number of results returned for a single request.
          maximum: 100
          minimum: 1
          type: integer
        query:
          $ref: "#/components/schemas/TerminalRefundQuery"
      type: object
      x-release-status: PUBLIC
    SearchTerminalRefundsResponse:
      description: ""
      example:
        refunds:
          - amount_money:
              amount: 111
              currency: CAD
            app_id: sandbox-sq0idb-c2OuYt13YaCAeJq_2cd8OQ
            card:
              bin: "411111"
              card_brand: INTERAC
              card_type: CREDIT
              exp_month: 1
              exp_year: 2022
              fingerprint: sq-1-B1fP9MNNmZgVVaPKRND6oDKYbz25S2cTvg9Mzwg3RMTK1zT1PiGRT-AE3nTA8vSmmw
              last_4: "1111"
            created_at: 2020-09-29T15:21:46.771Z
            deadline_duration: PT5M
            device_id: f72dfb8e-4d65-4e56-aade-ec3fb8d33291
            id: 009DP5HD-5O5OvgkcNUhl7JBuINflcjKqUzXZY
            location_id: 76C9W6K8CNNQ5
            order_id: kcuKDKreRaI4gF4TjmEgZjHk8Z7YY
            payment_id: 5O5OvgkcNUhl7JBuINflcjKqUzXZY
            reason: Returning item
            refund_id: 5O5OvgkcNUhl7JBuINflcjKqUzXZY_43Q4iGp7sNeATiWrUruA1EYeMRUXaddXXlDDJ1EQLvb
            status: COMPLETED
            updated_at: 2020-09-29T15:21:48.675Z
      properties:
        cursor:
          description: |-
            The pagination cursor to be used in a subsequent request. If empty,
            this is the final response.

            See [Pagination](https://developer.squareup.com/docs/basics/api101/pagination) for more information.
          type: string
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        refunds:
          description: The requested search result of `TerminalRefund` objects.
          items:
            $ref: "#/components/schemas/TerminalRefund"
          type: array
      type: object
      x-release-status: PUBLIC
    SegmentFilter:
      description: A query filter to search for appointment segments by.
      properties:
        service_variation_id:
          description: The ID of the [CatalogItemVariation](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogItemVariation) representing the service booked in this segment.
          minLength: 1
          type: string
        team_member_id_filter:
          $ref: "#/components/schemas/FilterValue"
      required:
        - service_variation_id
      type: object
      x-is-beta: true
      x-release-status: BETA
    Shift:
      description: |-
        A record of the hourly rate, start, and end times for a single work shift
        for an employee. This might include a record of the start and end times for breaks
        taken during the shift.
      properties:
        breaks:
          description: A list of all the paid or unpaid breaks that were taken during this shift.
          items:
            $ref: "#/components/schemas/Break"
          type: array
        created_at:
          description: A read-only timestamp in RFC 3339 format; presented in UTC.
          type: string
          x-read-only: true
        employee_id:
          description: The ID of the employee this shift belongs to. DEPRECATED at version 2020-08-26. Use `team_member_id` instead.
          type: string
          x-is-deprecated: true
          x-release-status: DEPRECATED
        end_at:
          description: |-
            RFC 3339; shifted to the timezone + offset. Precision up to the minute is
            respected; seconds are truncated.
          type: string
        id:
          description: The UUID for this object.
          maxLength: 255
          type: string
        location_id:
          description: |-
            The ID of the location this shift occurred at. The location should be based on
            where the employee clocked in.
          type: string
        start_at:
          description: |-
            RFC 3339; shifted to the location timezone + offset. Precision up to the
            minute is respected; seconds are truncated.
          minLength: 1
          type: string
        status:
          description: Describes the working state of the current `Shift`.
          type: string
        team_member_id:
          description: The ID of the team member this shift belongs to. Replaced `employee_id` at version "2020-08-26".
          type: string
        timezone:
          description: |-
            The read-only convenience value that is calculated from the location based
            on the `location_id`. Format: the IANA timezone database identifier for the
            location timezone.
          type: string
        updated_at:
          description: A read-only timestamp in RFC 3339 format; presented in UTC.
          type: string
          x-read-only: true
        version:
          description: |-
            Used for resolving concurrency issues. The request fails if the version
            provided does not match the server version at the time of the request. If not provided,
            Square executes a blind write; potentially overwriting data from another
            write.
          type: integer
        wage:
          $ref: "#/components/schemas/ShiftWage"
      required:
        - start_at
      type: object
      x-release-status: PUBLIC
    ShiftFilter:
      description: |-
        Defines a filter used in a search for `Shift` records. `AND` logic is
        used by Square's servers to apply each filter property specified.
      properties:
        employee_ids:
          description: Fetch shifts for the specified employees. DEPRECATED at version 2020-08-26. Use `team_member_ids` instead.
          items:
            type: string
          type: array
          x-is-deprecated: true
          x-release-status: DEPRECATED
        end:
          $ref: "#/components/schemas/TimeRange"
        location_ids:
          description: Fetch shifts for the specified location.
          items:
            minLength: 1
            type: string
          type: array
        start:
          $ref: "#/components/schemas/TimeRange"
        status:
          description: Fetch a `Shift` instance by `Shift.status`.
          type: string
        team_member_ids:
          description: Fetch shifts for the specified team members. Replaced `employee_ids` at version "2020-08-26".
          items:
            minLength: 1
            type: string
          type: array
        workday:
          $ref: "#/components/schemas/ShiftWorkday"
      required:
        - location_ids
        - team_member_ids
      type: object
      x-release-status: PUBLIC
    ShiftFilterStatus:
      description: Specifies the `status` of `Shift` records to be returned.
      enum:
        - OPEN
        - CLOSED
      type: string
      x-enum-elements:
        - description: Shifts that have been started and not ended.
          name: OPEN
        - description: Shifts that have been started and ended.
          name: CLOSED
      x-release-status: PUBLIC
    ShiftQuery:
      description: The parameters of a `Shift` search query, which includes filter and sort options.
      properties:
        filter:
          $ref: "#/components/schemas/ShiftFilter"
        sort:
          $ref: "#/components/schemas/ShiftSort"
      type: object
      x-release-status: PUBLIC
    ShiftSort:
      description: Sets the sort order of search results.
      properties:
        field:
          description: The field to sort on.
          type: string
        order:
          description: The order in which results are returned. Defaults to DESC.
          type: string
      type: object
      x-release-status: PUBLIC
    ShiftSortField:
      description: Enumerates the `Shift` fields to sort on.
      enum:
        - START_AT
        - END_AT
        - CREATED_AT
        - UPDATED_AT
      type: string
      x-enum-elements:
        - description: The start date/time of a `Shift`
          name: START_AT
        - description: The end date/time of a `Shift`
          name: END_AT
        - description: The date/time that a `Shift` is created
          name: CREATED_AT
        - description: The most recent date/time that a `Shift` is updated
          name: UPDATED_AT
      x-release-status: PUBLIC
    ShiftStatus:
      description: Enumerates the possible status of a `Shift`.
      enum:
        - OPEN
        - CLOSED
      type: string
      x-enum-elements:
        - description: Employee started a work shift and the shift is not complete
          name: OPEN
        - description: Employee started and ended a work shift.
          name: CLOSED
      x-release-status: PUBLIC
    ShiftWage:
      description: The hourly wage rate used to compensate an employee for this shift.
      properties:
        hourly_rate:
          $ref: "#/components/schemas/Money"
        title:
          description: |-
            The name of the job performed during this shift. Square
            labor-reporting UIs might group shifts together by title.
          type: string
      type: object
      x-release-status: PUBLIC
    ShiftWorkday:
      description: |-
        A `Shift` search query filter parameter that sets a range of days that
        a `Shift` must start or end in before passing the filter condition.
      properties:
        date_range:
          $ref: "#/components/schemas/DateRange"
        default_timezone:
          description: |-
            Location-specific timezones convert workdays to datetime filters.
            Every location included in the query must have a timezone or this field
            must be provided as a fallback. Format: the IANA timezone database
            identifier for the relevant timezone.
          type: string
        match_shifts_by:
          description: The strategy on which the dates are applied.
          type: string
      type: object
      x-release-status: PUBLIC
    ShiftWorkdayMatcher:
      description: Defines the logic used to apply a workday filter.
      enum:
        - START_AT
        - END_AT
        - INTERSECTION
      type: string
      x-enum-elements:
        - description: All shifts that start on or after the specified workday
          name: START_AT
        - description: All shifts that end on or before the specified workday
          name: END_AT
        - description: All shifts that start between the start and end workdays (inclusive)
          name: INTERSECTION
      x-release-status: PUBLIC
    Site:
      description: Represents a Square Online site, which is an online store for a Square seller.
      properties:
        created_at:
          description: The timestamp of when the site was created, in RFC 3339 format.
          type: string
          x-read-only: true
        domain:
          description: The domain of the site (without the protocol). For example, `mysite1.square.site`.
          type: string
        id:
          description: The Square-assigned ID of the site.
          maxLength: 32
          type: string
          x-read-only: true
        is_published:
          description: Indicates whether the site is published.
          type: boolean
        site_title:
          description: The title of the site.
          type: string
        updated_at:
          description: The timestamp of when the site was last updated, in RFC 3339 format.
          type: string
          x-read-only: true
      type: object
      x-release-status: PUBLIC
    Snippet:
      description: Represents the snippet that is added to a Square Online site. The snippet code is injected into the `head` element of all pages on the site, except for checkout pages.
      properties:
        content:
          description: The snippet code, which can contain valid HTML, JavaScript, or both.
          maxLength: 65535
          minLength: 1
          type: string
        created_at:
          description: The timestamp of when the snippet was initially added to the site, in RFC 3339 format.
          type: string
          x-read-only: true
        id:
          description: The Square-assigned ID for the snippet.
          maxLength: 48
          type: string
          x-read-only: true
        site_id:
          description: The ID of the site that contains the snippet.
          type: string
          x-read-only: true
        updated_at:
          description: The timestamp of when the snippet was last updated on the site, in RFC 3339 format.
          type: string
          x-read-only: true
      required:
        - content
      type: object
      x-release-status: PUBLIC
    SnippetResponse:
      description: ""
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        snippet:
          $ref: "#/components/schemas/Snippet"
      type: object
      x-release-status: PUBLIC
    SortOrder:
      description: The order (e.g., chronological or alphabetical) in which results from a request are returned.
      enum:
        - DESC
        - ASC
      type: string
      x-enum-elements:
        - description: The results are returned in descending (e.g., newest-first or Z-A) order.
          name: DESC
        - description: The results are returned in ascending (e.g., oldest-first or A-Z) order.
          name: ASC
      x-release-status: PUBLIC
    SourceApplication:
      description: Provides information about the application used to generate a change.
      properties:
        application_id:
          description: |-
            Read-only Square ID assigned to the application. Only used for
            [Product](https://developer.squareup.com/reference/square_2021-08-18/enums/Product) type `EXTERNAL_API`.
          type: string
        name:
          description: |-
            Read-only display name assigned to the application
            (e.g. `"Custom Application"`, `"Square POS 4.74 for Android"`).
          type: string
        product:
          description: Read-only [Product](https://developer.squareup.com/reference/square_2021-08-18/enums/Product) type for the application.
          type: string
      type: object
      x-release-status: PUBLIC
    StandardUnitDescription:
      description: Contains the name and abbreviation for standard measurement unit.
      properties:
        abbreviation:
          description: UI display abbreviation for the measurement unit. For example, 'lb'.
          type: string
        name:
          description: UI display name of the measurement unit. For example, 'Pound'.
          type: string
        unit:
          $ref: "#/components/schemas/MeasurementUnit"
      type: object
      x-release-status: PUBLIC
    StandardUnitDescriptionGroup:
      description: Group of standard measurement units.
      properties:
        language_code:
          description: IETF language tag.
          type: string
        standard_unit_descriptions:
          description: List of standard (non-custom) measurement units in this description group.
          items:
            $ref: "#/components/schemas/StandardUnitDescription"
          type: array
      type: object
      x-release-status: PUBLIC
    Status: {}
    SubmitEvidenceRequest:
      description: Defines the parameters for a `SubmitEvidence` request.
      example:
        request_body: {}
      properties: {}
      type: object
      x-release-status: PUBLIC
    SubmitEvidenceResponse:
      description: Defines the fields in a `SubmitEvidence` response.
      example:
        dispute:
          amount_money:
            amount: 2000
            currency: USD
          brand_dispute_id: "100000399240"
          card_brand: VISA
          created_at: 2018-10-18T16:02:15.313Z
          disputed_payments:
            - payment_id: 2yeBUWJzllJTpmnSqtMRAL19taB
          due_at: 2018-11-01T00:00:00.000Z
          id: EAZoK70gX3fyvibecLwIGB
          reason: NO_KNOWLEDGE
          state: PROCESSING
          updated_at: 2018-10-18T16:02:15.313Z
      properties:
        dispute:
          $ref: "#/components/schemas/Dispute"
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    Subscription:
      description: |-
        Represents a customer subscription to a subscription plan.
        For an overview of the `Subscription` type, see
        [Subscription object](https://developer.squareup.com/docs/subscriptions-api/overview#subscription-object-overview).
      properties:
        canceled_date:
          description: |-
            The subscription cancellation date, in YYYY-MM-DD format (for
            example, 2013-01-15). On this date, the subscription status changes
            to `CANCELED` and the subscription billing stops.
            If you don't set this field, the subscription plan dictates if and
            when subscription ends.

            You cannot update this field, you can only clear it.
          type: string
        card_id:
          description: |-
            The ID of the [customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) [card](https://developer.squareup.com/reference/square_2021-08-18/objects/Card)
            that is charged for the subscription.
          type: string
        charged_through_date:
          description: |-
            The date up to which the customer is invoiced for the
            subscription, in YYYY-MM-DD format (for example, 2013-01-15).

            After the invoice is sent for a given billing period,
            this date will be the last day of the billing period.
            For example,
            suppose for the month of May a customer gets an invoice
            (or charged the card) on May 1. For the monthly billing scenario,
            this date is then set to May 31.
          type: string
          x-read-only: true
        created_at:
          description: The timestamp when the subscription was created, in RFC 3339 format.
          type: string
          x-read-only: true
        customer_id:
          description: The ID of the associated [customer](https://developer.squareup.com/reference/square_2021-08-18/objects/Customer) profile.
          type: string
          x-read-only: true
        id:
          description: The Square-assigned ID of the subscription.
          maxLength: 255
          type: string
          x-read-only: true
        invoice_ids:
          description: |-
            The IDs of the [invoices](https://developer.squareup.com/reference/square_2021-08-18/objects/Invoice) created for the
            subscription, listed in order when the invoices were created
            (oldest invoices appear first).
          items:
            type: string
          type: array
          x-read-only: true
        location_id:
          description: The ID of the location associated with the subscription.
          type: string
          x-read-only: true
        plan_id:
          description: The ID of the associated [subscription plan](https://developer.squareup.com/reference/square_2021-08-18/objects/CatalogSubscriptionPlan).
          type: string
          x-read-only: true
        price_override_money:
          $ref: "#/components/schemas/Money"
        start_date:
          description: |-
            The start date of the subscription, in YYYY-MM-DD format (for example,
            2013-01-15).
          type: string
          x-read-only: true
        status:
          description: The current status of the subscription.
          type: string
          x-read-only: true
        tax_percentage:
          description: |-
            The tax amount applied when billing the subscription. The
            percentage is expressed in decimal form, using a `'.'` as the decimal
            separator and without a `'%'` sign. For example, a value of `7.5`
            corresponds to 7.5%.
          type: string
        timezone:
          description: |-
            Timezone that will be used in date calculations for the subscription.
            Defaults to the timezone of the location based on `location_id`.
            Format: the IANA Timezone Database identifier for the location timezone (for example, `America/Los_Angeles`).
          type: string
          x-read-only: true
        version:
          description: |-
            The version of the object. When updating an object, the version
            supplied must match the version in the database, otherwise the write will
            be rejected as conflicting.
          format: int64
          type: integer
      type: object
      x-release-status: PUBLIC
    SubscriptionCadence:
      description: Determines the billing cadence of a [Subscription](https://developer.squareup.com/reference/square_2021-08-18/objects/Subscription)
      enum:
        - DAILY
        - WEEKLY
        - EVERY_TWO_WEEKS
        - THIRTY_DAYS
        - SIXTY_DAYS
        - NINETY_DAYS
        - MONTHLY
        - EVERY_TWO_MONTHS
        - QUARTERLY
        - EVERY_FOUR_MONTHS
        - EVERY_SIX_MONTHS
        - ANNUAL
        - EVERY_TWO_YEARS
      type: string
      x-enum-elements:
        - description: Once per day
          name: DAILY
        - description: Once per week
          name: WEEKLY
        - description: Every two weeks
          name: EVERY_TWO_WEEKS
        - description: Once every 30 days
          name: THIRTY_DAYS
        - description: Once every 60 days
          name: SIXTY_DAYS
        - description: Once every 90 days
          name: NINETY_DAYS
        - description: Once per month
          name: MONTHLY
        - description: Once every two months
          name: EVERY_TWO_MONTHS
        - description: Once every three months
          name: QUARTERLY
        - description: Once every four months
          name: EVERY_FOUR_MONTHS
        - description: Once every six months
          name: EVERY_SIX_MONTHS
        - description: Once per year
          name: ANNUAL
        - description: Once every two years
          name: EVERY_TWO_YEARS
      x-release-status: PUBLIC
    SubscriptionEvent:
      description: Describes changes to subscription and billing states.
      properties:
        effective_date:
          description: |-
            The date, in YYYY-MM-DD format (for
            example, 2013-01-15), when the subscription event went into effect.
          type: string
        id:
          description: The ID of the subscription event.
          type: string
        info:
          $ref: "#/components/schemas/Info"
        plan_id:
          description: The ID of the subscription plan associated with the subscription.
          type: string
        subscription_event_type:
          description: Type of the subscription event.
          type: string
      required:
        - id
        - subscription_event_type
        - effective_date
        - plan_id
      type: object
      x-release-status: PUBLIC
    SubscriptionEventInfo:
      description: Provides information about the subscription event.
      properties:
        code:
          $ref: "#/components/schemas/InfoCode"
        detail:
          description: A human-readable explanation for the event.
          type: string
      type: object
      x-release-status: PUBLIC
    SubscriptionEventInfoCode:
      description: The possible subscription event info codes.
      enum:
        - LOCATION_NOT_ACTIVE
        - LOCATION_CANNOT_ACCEPT_PAYMENT
        - CUSTOMER_DELETED
        - CUSTOMER_NO_EMAIL
        - CUSTOMER_NO_NAME
      type: string
      x-enum-elements:
        - description: The location is not active.
          name: LOCATION_NOT_ACTIVE
        - description: The location cannot accept payments.
          name: LOCATION_CANNOT_ACCEPT_PAYMENT
        - description: The customer has been deleted.
          name: CUSTOMER_DELETED
        - description: The customer doesn't have an email.
          name: CUSTOMER_NO_EMAIL
        - description: The customer doesn't have a name.
          name: CUSTOMER_NO_NAME
      x-release-status: PUBLIC
    SubscriptionEventSubscriptionEventType:
      description: The possible subscription event types.
      enum:
        - START_SUBSCRIPTION
        - PLAN_CHANGE
        - STOP_SUBSCRIPTION
        - DEACTIVATE_SUBSCRIPTION
        - RESUME_SUBSCRIPTION
      type: string
      x-enum-elements:
        - description: The subscription started.
          name: START_SUBSCRIPTION
        - description: The subscription plan changed.
          name: PLAN_CHANGE
        - description: The subscription stopped.
          name: STOP_SUBSCRIPTION
        - description: The subscription deactivated
          name: DEACTIVATE_SUBSCRIPTION
        - description: The subscription resumed.
          name: RESUME_SUBSCRIPTION
      x-release-status: PUBLIC
    SubscriptionPhase:
      description: |-
        Describes a phase in a subscription plan. For more information, see
        [Set Up and Manage a Subscription Plan](https://developer.squareup.com/docs/subscriptions-api/setup-plan).
      properties:
        cadence:
          description: The billing cadence of the phase. For example, weekly or monthly. This field cannot be changed after a `SubscriptionPhase` is created.
          type: string
        ordinal:
          description: The position this phase appears in the sequence of phases defined for the plan, indexed from 0. This field cannot be changed after a `SubscriptionPhase` is created.
          format: int64
          type: integer
        periods:
          description: The number of `cadence`s the phase lasts. If not set, the phase never ends. Only the last phase can be indefinite. This field cannot be changed after a `SubscriptionPhase` is created.
          type: integer
        recurring_price_money:
          $ref: "#/components/schemas/Money"
        uid:
          description: The Square-assigned ID of the subscription phase. This field cannot be changed after a `SubscriptionPhase` is created.
          type: string
      required:
        - cadence
        - recurring_price_money
      type: object
      x-release-status: PUBLIC
    SubscriptionStatus:
      description: Possible subscription status values.
      enum:
        - PENDING
        - ACTIVE
        - CANCELED
        - DEACTIVATED
      type: string
      x-enum-elements:
        - description: The subscription starts in the future.
          name: PENDING
        - description: The subscription is active.
          name: ACTIVE
        - description: The subscription is canceled.
          name: CANCELED
        - description: The subscription is deactivated.
          name: DEACTIVATED
      x-release-status: PUBLIC
    TaxCalculationPhase:
      description: When to calculate the taxes due on a cart.
      enum:
        - TAX_SUBTOTAL_PHASE
        - TAX_TOTAL_PHASE
      type: string
      x-enum-elements:
        - description: The fee is calculated based on the payment's subtotal.
          name: TAX_SUBTOTAL_PHASE
        - description: The fee is calculated based on the payment's total.
          name: TAX_TOTAL_PHASE
      x-release-status: PUBLIC
    TaxIds:
      description: The tax IDs that a Location is operating under.
      properties:
        eu_vat:
          description: |-
            The EU VAT number for this location. For example, "IE3426675K".
            If the EU VAT number is present, it is well-formed and has been
            validated with VIES, the VAT Information Exchange System.
          type: string
        fr_naf:
          description: |-
            The French government uses the NAF (Nomenclature des Activités Françaises) to display and
            track economic statistical data. This is also called the APE (Activite Principale de l’Entreprise) code.
            For example, 6910Z.
          type: string
        fr_siret:
          description: |-
            The SIRET (Système d'Identification du Répertoire des Entreprises et de leurs Etablissements)
            number is a 14 digits code issued by the French INSEE. For example, "39922799000021".
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    TaxInclusionType:
      description: Whether to the tax amount should be additional to or included in the CatalogItem price.
      enum:
        - ADDITIVE
        - INCLUSIVE
      type: string
      x-enum-elements:
        - description: |-
            The tax is an additive tax. The tax amount is added on top of the
            CatalogItemVariation price. For example, a $1.00 item with a 10% additive
            tax would have a total cost to the buyer of $1.10.
          name: ADDITIVE
        - description: |-
            The tax is an inclusive tax. The tax amount is included in the
            CatalogItemVariation price. For example, a $1.00 item with a 10% inclusive
            tax would have a total cost to the buyer of $1.00, with $0.91 (91 cents) of
            that total being the cost of the item and $0.09 (9 cents) being tax.
          name: INCLUSIVE
      x-release-status: PUBLIC
    TeamMember:
      description: A record representing an individual team member for a business.
      properties:
        assigned_locations:
          $ref: "#/components/schemas/TeamMemberAssignedLocations"
        created_at:
          description: |-
            The timestamp, in RFC 3339 format, describing when the team member was created.
            For example, "2018-10-04T04:00:00-07:00" or "2019-02-05T12:00:00Z".
          type: string
          x-read-only: true
        email_address:
          description: The email address associated with the team member.
          type: string
        family_name:
          description: The family name (that is, the last name) associated with the team member.
          type: string
        given_name:
          description: The given name (that is, the first name) associated with the team member.
          type: string
        id:
          description: The unique ID for the team member.
          type: string
          x-read-only: true
        is_owner:
          description: Whether the team member is the owner of the Square account.
          type: boolean
          x-read-only: true
        phone_number:
          description: |-
            The team member's phone number, in E.164 format. For example:
            +14155552671 - the country code is 1 for US
            +551155256325 - the country code is 55 for BR
          type: string
        reference_id:
          description: A second ID used to associate the team member with an entity in another system.
          type: string
        status:
          description: Describes the status of the team member.
          type: string
        updated_at:
          description: |-
            The timestamp, in RFC 3339 format, describing when the team member was last updated.
            For example, "2018-10-04T04:00:00-07:00" or "2019-02-05T12:00:00Z".
          type: string
          x-read-only: true
      type: object
      x-release-status: PUBLIC
    TeamMemberAssignedLocations:
      description: An object that represents a team member's assignment to locations.
      properties:
        assignment_type:
          description: The current assignment type of the team member.
          type: string
        location_ids:
          description: The locations that the team member is assigned to.
          items:
            type: string
          type: array
      type: object
      x-release-status: PUBLIC
    TeamMemberAssignedLocationsAssignmentType:
      description: Enumerates the possible assignment types that the team member can have.
      enum:
        - ALL_CURRENT_AND_FUTURE_LOCATIONS
        - EXPLICIT_LOCATIONS
      type: string
      x-enum-elements:
        - description: |-
            The team member is assigned to all current and future locations. The `location_ids` field
            is empty if the team member has this assignment type.
          name: ALL_CURRENT_AND_FUTURE_LOCATIONS
        - description: |-
            The team member is assigned to an explicit subset of locations. The `location_ids` field
            is the list of locations that the team member is assigned to.
          name: EXPLICIT_LOCATIONS
      x-release-status: PUBLIC
    TeamMemberBookingProfile:
      description: The booking profile of a seller's team member, including the team member's ID, display name, description and whether the team member can be booked as a service provider.
      properties:
        description:
          description: The description of the team member.
          type: string
        display_name:
          description: The display name of the team member.
          type: string
        is_bookable:
          description: Indicates whether the team member can be booked through the Bookings API or the seller's online booking channel or site (`true) or not (`false`).
          type: boolean
        profile_image_url:
          description: The URL of the team member's image for the bookings profile.
          type: string
        team_member_id:
          description: The ID of the [TeamMember](https://developer.squareup.com/reference/square_2021-08-18/objects/TeamMember) object for the team member associated with the booking profile.
          type: string
      type: object
      x-is-beta: true
      x-release-status: BETA
    TeamMemberInvitationStatus:
      description: Enumerates the possible invitation statuses the team member can have within a business.
      enum:
        - UNINVITED
        - PENDING
        - ACCEPTED
      type: string
      x-enum-elements:
        - description: The team member has not received an invitation.
          name: UNINVITED
        - description: The team member has received an invitation, but had not accepted it.
          name: PENDING
        - description: The team member has both received and accepted an invitation.
          name: ACCEPTED
      x-release-status: PUBLIC
    TeamMemberStatus:
      description: Enumerates the possible statuses the team member can have within a business.
      enum:
        - ACTIVE
        - INACTIVE
      type: string
      x-enum-elements:
        - description: The team member can sign in to Point of Sale and the Seller Dashboard.
          name: ACTIVE
        - description: |-
            The team member can no longer sign in to Point of Sale or the Seller Dashboard,
            but the team member's sales reports remain available.
          name: INACTIVE
      x-release-status: PUBLIC
    TeamMemberWage:
      description: |-
        The hourly wage rate that a team member earns on a `Shift` for doing the job
        specified by the `title` property of this object.
      properties:
        hourly_rate:
          $ref: "#/components/schemas/Money"
        id:
          description: The UUID for this object.
          type: string
        team_member_id:
          description: The `TeamMember` that this wage is assigned to.
          type: string
        title:
          description: The job title that this wage relates to.
          type: string
      type: object
      x-release-status: PUBLIC
    Tender:
      description: Represents a tender (i.e., a method of payment) used in a Square transaction.
      properties:
        additional_recipients:
          description: |-
            Additional recipients (other than the merchant) receiving a portion of this tender.
            For example, fees assessed on the purchase by a third party integration.
          items:
            $ref: "#/components/schemas/AdditionalRecipient"
          type: array
          x-is-deprecated: true
          x-release-status: DEPRECATED
        amount_money:
          $ref: "#/components/schemas/Money"
        card_details:
          $ref: "#/components/schemas/TenderCardDetails"
        cash_details:
          $ref: "#/components/schemas/TenderCashDetails"
        created_at:
          description: The timestamp for when the tender was created, in RFC 3339 format.
          maxLength: 32
          type: string
          x-read-only: true
        customer_id:
          description: |-
            If the tender is associated with a customer or represents a customer's card on file,
            this is the ID of the associated customer.
          maxLength: 191
          type: string
        id:
          description: The tender's unique ID.
          maxLength: 192
          type: string
        location_id:
          description: The ID of the transaction's associated location.
          maxLength: 50
          type: string
        note:
          description: An optional note associated with the tender at the time of payment.
          maxLength: 500
          type: string
        payment_id:
          description: |-
            The ID of the [Payment](https://developer.squareup.com/reference/square_2021-08-18/objects/Payment) that corresponds to this tender.
            This value is only present for payments created with the v2 Payments API.
          maxLength: 192
          type: string
        processing_fee_money:
          $ref: "#/components/schemas/Money"
        tip_money:
          $ref: "#/components/schemas/Money"
        transaction_id:
          description: The ID of the tender's associated transaction.
          maxLength: 192
          type: string
        type:
          description: The type of tender, such as `CARD` or `CASH`.
          type: string
      required:
        - type
      type: object
      x-release-status: PUBLIC
    TenderCardDetails:
      description: Represents additional details of a tender with `type` `CARD` or `SQUARE_GIFT_CARD`
      properties:
        card:
          $ref: "#/components/schemas/Card"
        entry_method:
          description: The method used to enter the card's details for the transaction.
          type: string
        status:
          description: |-
            The credit card payment's current state (such as `AUTHORIZED` or
            `CAPTURED`). See [TenderCardDetailsStatus](https://developer.squareup.com/reference/square_2021-08-18/objects/TenderCardDetailsStatus)
            for possible values.
          type: string
      type: object
      x-release-status: PUBLIC
    TenderCardDetailsEntryMethod:
      description: Indicates the method used to enter the card's details.
      enum:
        - SWIPED
        - KEYED
        - EMV
        - ON_FILE
        - CONTACTLESS
      type: string
      x-enum-elements:
        - description: The card was swiped through a Square reader or Square stand.
          name: SWIPED
        - description: |-
            The card information was keyed manually into Square Point of Sale or a
            Square-hosted web form.
          name: KEYED
        - description: The card was processed via EMV with a Square reader.
          name: EMV
        - description: The buyer's card details were already on file with Square.
          name: ON_FILE
        - description: |-
            The card was processed via a contactless (i.e., NFC) transaction
            with a Square reader.
          name: CONTACTLESS
      x-release-status: PUBLIC
    TenderCardDetailsStatus:
      description: Indicates the card transaction's current status.
      enum:
        - AUTHORIZED
        - CAPTURED
        - VOIDED
        - FAILED
      type: string
      x-enum-elements:
        - description: The card transaction has been authorized but not yet captured.
          name: AUTHORIZED
        - description: The card transaction was authorized and subsequently captured (i.e., completed).
          name: CAPTURED
        - description: The card transaction was authorized and subsequently voided (i.e., canceled).
          name: VOIDED
        - description: The card transaction failed.
          name: FAILED
      x-release-status: PUBLIC
    TenderCashDetails:
      description: Represents the details of a tender with `type` `CASH`.
      properties:
        buyer_tendered_money:
          $ref: "#/components/schemas/Money"
        change_back_money:
          $ref: "#/components/schemas/Money"
      type: object
      x-release-status: PUBLIC
    TenderType:
      description: Indicates a tender's type.
      enum:
        - CARD
        - CASH
        - THIRD_PARTY_CARD
        - SQUARE_GIFT_CARD
        - NO_SALE
        - WALLET
        - OTHER
      type: string
      x-enum-elements:
        - description: A credit card.
          name: CARD
        - description: Cash.
          name: CASH
        - description: |-
            A credit card processed with a card processor other than Square.

            This value applies only to merchants in countries where Square does not
            yet provide card processing.
          name: THIRD_PARTY_CARD
        - description: A Square gift card.
          name: SQUARE_GIFT_CARD
        - description: This tender represents the register being opened for a "no sale" event.
          name: NO_SALE
        - description: |-
            A payment from a digital wallet, e.g. Cash App.

            Note: Some "digital wallets", including Google Pay and Apple Pay, facilitate
            card payments.  Those payments have the `CARD` type.
          name: WALLET
        - description: A form of tender that does not match any other value.
          name: OTHER
      x-release-status: PUBLIC
    TerminalCheckout:
      description: ""
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        app_id:
          description: The ID of the application that created the checkout.
          type: string
          x-read-only: true
        cancel_reason:
          description: Present if the status is `CANCELED`.
          type: string
          x-read-only: true
        created_at:
          description: The time when the `TerminalCheckout` was created, as an RFC 3339 timestamp.
          type: string
          x-read-only: true
        deadline_duration:
          description: |-
            An RFC 3339 duration, after which the checkout is automatically canceled.
            A `TerminalCheckout` that is `PENDING` is automatically `CANCELED` and has a cancellation reason
            of `TIMED_OUT`.

            Default: 5 minutes from creation

            Maximum: 5 minutes
          type: string
        device_options:
          $ref: "#/components/schemas/DeviceCheckoutOptions"
        id:
          description: A unique ID for this `TerminalCheckout`.
          maxLength: 255
          minLength: 10
          type: string
          x-read-only: true
        location_id:
          description: The location of the device where the `TerminalCheckout` was directed.
          type: string
          x-read-only: true
        note:
          description: An optional note to associate with the checkout, as well as with any payments used to complete the checkout.
          maxLength: 250
          type: string
        payment_ids:
          description: A list of IDs for payments created by this `TerminalCheckout`.
          items:
            type: string
          type: array
          x-read-only: true
        payment_type:
          description: The type of payment the terminal should attempt to capture from. Defaults to `CARD_PRESENT`.
          type: string
        reference_id:
          description: |-
            An optional user-defined reference ID that can be used to associate
            this `TerminalCheckout` to another entity in an external system. For example, an order
            ID generated by a third-party shopping cart. The ID is also associated with any payments
            used to complete the checkout.
          maxLength: 40
          type: string
        status:
          description: |-
            The status of the `TerminalCheckout`.
            Options: `PENDING`, `IN_PROGRESS`, `CANCEL_REQUESTED`, `CANCELED`, `COMPLETED`
          type: string
          x-read-only: true
        updated_at:
          description: The time when the `TerminalCheckout` was last updated, as an RFC 3339 timestamp.
          type: string
          x-read-only: true
      required:
        - amount_money
        - device_options
      type: object
      x-release-status: PUBLIC
    TerminalCheckoutQuery:
      description: ""
      properties:
        filter:
          $ref: "#/components/schemas/TerminalCheckoutQueryFilter"
        sort:
          $ref: "#/components/schemas/TerminalCheckoutQuerySort"
      type: object
      x-release-status: PUBLIC
    TerminalCheckoutQueryFilter:
      description: ""
      properties:
        created_at:
          $ref: "#/components/schemas/TimeRange"
        device_id:
          description: |-
            The `TerminalCheckout` objects associated with a specific device. If no device is specified, then all
            `TerminalCheckout` objects for the merchant are displayed.
          type: string
        status:
          description: |-
            Filtered results with the desired status of the `TerminalCheckout`.
            Options: PENDING, IN_PROGRESS, CANCELED, COMPLETED
          type: string
      type: object
      x-release-status: PUBLIC
    TerminalCheckoutQuerySort:
      description: ""
      properties:
        sort_order:
          description: |-
            The order in which results are listed.
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          type: string
      type: object
      x-release-status: PUBLIC
    TerminalRefund:
      description: ""
      properties:
        amount_money:
          $ref: "#/components/schemas/Money"
        app_id:
          description: The ID of the application that created the refund.
          type: string
          x-read-only: true
        cancel_reason:
          description: Present if the status is `CANCELED`.
          type: string
          x-read-only: true
        created_at:
          description: The time when the `TerminalRefund` was created, as an RFC 3339 timestamp.
          type: string
          x-read-only: true
        deadline_duration:
          description: |-
            The RFC 3339 duration, after which the refund is automatically canceled.
            A `TerminalRefund` that is `PENDING` is automatically `CANCELED` and has a cancellation reason
            of `TIMED_OUT`.

            Default: 5 minutes from creation.

            Maximum: 5 minutes
          type: string
        device_id:
          description: |-
            The unique ID of the device intended for this `TerminalRefund`.
            The Id can be retrieved from /v2/devices api.
          type: string
        id:
          description: A unique ID for this `TerminalRefund`.
          maxLength: 255
          minLength: 10
          type: string
          x-read-only: true
        location_id:
          description: The location of the device where the `TerminalRefund` was directed.
          type: string
          x-read-only: true
        order_id:
          description: The reference to the Square order ID for the payment identified by the `payment_id`.
          type: string
          x-read-only: true
        payment_id:
          description: The unique ID of the payment being refunded.
          minLength: 1
          type: string
        reason:
          description: |-
            A description of the reason for the refund.
            Note: maximum 192 characters
          maxLength: 192
          type: string
        refund_id:
          description: The reference to the payment refund created by completing this `TerminalRefund`.
          type: string
          x-read-only: true
        status:
          description: |-
            The status of the `TerminalRefund`.
            Options: `PENDING`, `IN_PROGRESS`, `CANCELED`, or `COMPLETED`.
          type: string
          x-read-only: true
        updated_at:
          description: The time when the `TerminalRefund` was last updated, as an RFC 3339 timestamp.
          type: string
          x-read-only: true
      required:
        - payment_id
        - amount_money
      type: object
      x-release-status: PUBLIC
    TerminalRefundQuery:
      description: ""
      properties:
        filter:
          $ref: "#/components/schemas/TerminalRefundQueryFilter"
        sort:
          $ref: "#/components/schemas/TerminalRefundQuerySort"
      type: object
      x-release-status: PUBLIC
    TerminalRefundQueryFilter:
      description: ""
      properties:
        created_at:
          $ref: "#/components/schemas/TimeRange"
        device_id:
          description: |-
            `TerminalRefund` objects associated with a specific device. If no device is specified, then all
            `TerminalRefund` objects for the signed-in account are displayed.
          type: string
        status:
          description: |-
            Filtered results with the desired status of the `TerminalRefund`.
            Options: `PENDING`, `IN_PROGRESS`, `CANCEL_REQUESTED`, `CANCELED`, or `COMPLETED`.
          type: string
      type: object
      x-release-status: PUBLIC
    TerminalRefundQuerySort:
      description: ""
      properties:
        sort_order:
          description: |-
            The order in which results are listed.
            - `ASC` - Oldest to newest.
            - `DESC` - Newest to oldest (default).
          type: string
      type: object
      x-release-status: PUBLIC
    TimeRange:
      description: |-
        Represents a generic time range. The start and end values are
        represented in RFC 3339 format. Time ranges are customized to be
        inclusive or exclusive based on the needs of a particular endpoint.
        Refer to the relevant endpoint-specific documentation to determine
        how time ranges are handled.
      properties:
        end_at:
          description: |-
            A datetime value in RFC 3339 format indicating when the time range
            ends.
          type: string
        start_at:
          description: |-
            A datetime value in RFC 3339 format indicating when the time range
            starts.
          type: string
      type: object
      x-release-status: PUBLIC
    TipSettings:
      description: ""
      properties:
        allow_tipping:
          description: Indicates whether tipping is enabled for this checkout. Defaults to false.
          type: boolean
        custom_tip_field:
          description: Indicates whether custom tip amounts are allowed during the checkout flow. Defaults to false.
          type: boolean
        separate_tip_screen:
          description: |-
            Indicates whether tip options should be presented on the screen before presenting
            the signature screen during card payment. Defaults to false.
          type: boolean
        smart_tipping:
          description: |-
            Enables the "Smart Tip Amounts" behavior.
            Exact tipping options depend on the region in which the Square seller is active.

            For payments under 10.00, in the Australia, Canada, Ireland, United Kingdom, and United States, tipping options are presented as no tip, .50, 1.00 or 2.00.

            For payment amounts of 10.00 or greater, tipping options are presented as the following percentages: 0%, 5%, 10%, 15%.

            If set to true, the `tip_percentages` settings is ignored.
            Defaults to false.

            To learn more about smart tipping, see [Accept Tips with the Square App](https://squareup.com/help/us/en/article/5069-accept-tips-with-the-square-app).
          type: boolean
        tip_percentages:
          description: |-
            A list of tip percentages that should be presented during the checkout flow, specified as
            up to 3 non-negative integers from 0 to 100 (inclusive). Defaults to 15, 20, and 25.
          items:
            type: integer
          type: array
      type: object
      x-release-status: PUBLIC
    Transaction:
      description: |-
        Represents a transaction processed with Square, either with the
        Connect API or with Square Point of Sale.

        The `tenders` field of this object lists all methods of payment used to pay in
        the transaction.
      properties:
        client_id:
          description: |-
            If the transaction was created in the Square Point of Sale app, this value
            is the ID generated for the transaction by Square Point of Sale.

            This ID has no relationship to the transaction's canonical `id`, which is
            generated by Square's backend servers. This value is generated for bookkeeping
            purposes, in case the transaction cannot immediately be completed (for example,
            if the transaction is processed in offline mode).

            It is not currently possible with the Connect API to perform a transaction
            lookup by this value.
          maxLength: 192
          type: string
        created_at:
          description: The timestamp for when the transaction was created, in RFC 3339 format.
          maxLength: 32
          type: string
        id:
          description: The transaction's unique ID, issued by Square payments servers.
          maxLength: 192
          type: string
        location_id:
          description: The ID of the transaction's associated location.
          maxLength: 50
          type: string
        order_id:
          description: The order_id is an identifier for the order associated with this transaction, if any.
          maxLength: 192
          type: string
        product:
          description: The Square product that processed the transaction.
          type: string
        reference_id:
          description: |-
            If the transaction was created with the [Charge](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/charge)
            endpoint, this value is the same as the value provided for the `reference_id`
            parameter in the request to that endpoint. Otherwise, it is not set.
          maxLength: 40
          type: string
        refunds:
          description: Refunds that have been applied to any tender in the transaction.
          items:
            $ref: "#/components/schemas/Refund"
          type: array
        shipping_address:
          $ref: "#/components/schemas/Address"
        tenders:
          description: The tenders used to pay in the transaction.
          items:
            $ref: "#/components/schemas/Tender"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    TransactionProduct:
      description: Indicates the Square product used to process a transaction.
      enum:
        - REGISTER
        - EXTERNAL_API
        - BILLING
        - APPOINTMENTS
        - INVOICES
        - ONLINE_STORE
        - PAYROLL
        - OTHER
      type: string
      x-enum-elements:
        - description: Square Point of Sale.
          name: REGISTER
        - description: The Square Connect API.
          name: EXTERNAL_API
        - description: A Square subscription for one of multiple products.
          name: BILLING
        - description: Square Appointments.
          name: APPOINTMENTS
        - description: Square Invoices.
          name: INVOICES
        - description: Square Online Store.
          name: ONLINE_STORE
        - description: Square Payroll.
          name: PAYROLL
        - description: A Square product that does not match any other value.
          name: OTHER
      x-is-deprecated: true
      x-release-status: DEPRECATED
    TransactionType:
      description: The transaction type used in the disputed payment.
      enum:
        - DEBIT
        - CREDIT
      type: string
      x-enum-elements:
        - description: ""
          name: DEBIT
        - description: ""
          name: CREDIT
      x-release-status: PUBLIC
    Type: {}
    UnlinkCustomerFromGiftCardRequest:
      description: A request to unlink a customer to a gift card
      example:
        request_body:
          customer_id: GKY0FZ3V717AH8Q2D821PNT2ZW
        request_params: ?gift_card_id=gftc:71ea002277a34f8a945e284b04822edb
      properties:
        customer_id:
          description: ""
          maxLength: 191
          minLength: 1
          type: string
      required:
        - customer_id
      type: object
      x-is-beta: true
      x-release-status: BETA
    UnlinkCustomerFromGiftCardResponse:
      description: |-
        A response that contains one `GiftCard` that was unlinked. The response might contain a set of `Error`
        objects if the request resulted in errors.
      example:
        gift_card:
          balance_money:
            amount: 2500
            currency: USD
          created_at: 2021-03-25T05:13:01Z
          gan: "7783320005440920"
          gan_source: SQUARE
          id: gftc:71ea002277a34f8a945e284b04822edb
          state: ACTIVE
          type: DIGITAL
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        gift_card:
          $ref: "#/components/schemas/GiftCard"
      type: object
      x-is-beta: true
      x-release-status: BETA
    UpdateBookingRequest:
      description: ""
      example:
        booking:
          customer_note: I would like to sit near the window please
          version: 1
      properties:
        booking:
          $ref: "#/components/schemas/Booking"
        idempotency_key:
          description: A unique key to make this request an idempotent operation.
          maxLength: 255
          type: string
      required:
        - booking
      type: object
      x-is-beta: true
      x-release-status: BETA
    UpdateBookingResponse:
      description: ""
      example:
        booking:
          appointment_segments:
            - duration_minutes: 60
              service_variation_id: RU3PBTZTK7DXZDQFCJHOK2MC
              service_variation_version: 1599775456731
              team_member_id: TMXUrsBWWcHTt79t
          created_at: 2020-10-28T15:47:41Z
          customer_id: EX2QSVGTZN4K1E5QE1CBFNVQ8M
          customer_note: I would like to sit near the window please
          id: zkras0xv0xwswx
          location_id: LEQHH0YY8B42M
          seller_note: ""
          start_at: 2020-11-26T13:00:00Z
          status: ACCEPTED
          updated_at: 2020-10-28T15:49:25Z
          version: 2
        errors: []
      properties:
        booking:
          $ref: "#/components/schemas/Booking"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-beta: true
      x-release-status: BETA
    UpdateBreakTypeRequest:
      description: A request to update a `BreakType`.
      example:
        request_body:
          break_type:
            break_name: Lunch
            expected_duration: PT50M
            is_paid: true
            location_id: 26M7H24AZ9N6R
            version: 1
      properties:
        break_type:
          $ref: "#/components/schemas/BreakType"
      required:
        - break_type
      type: object
      x-release-status: PUBLIC
    UpdateBreakTypeResponse:
      description: |-
        A response to a request to update a `BreakType`. The response contains
        the requested `BreakType` objects and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        break_type:
          break_name: Lunch
          created_at: 2018-06-12T20:19:12Z
          expected_duration: PT50M
          id: Q6JSJS6D4DBCH
          is_paid: true
          location_id: 26M7H24AZ9N6R
          updated_at: 2019-02-26T23:12:59Z
          version: 2
      properties:
        break_type:
          $ref: "#/components/schemas/BreakType"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
    UpdateCustomerGroupRequest:
      description: |-
        Defines the body parameters that can be included in a request to the
        [UpdateCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/update-customer-group) endpoint.
      example:
        request_body:
          group:
            name: Loyal Customers
      properties:
        group:
          $ref: "#/components/schemas/CustomerGroup"
      required:
        - group
      type: object
      x-release-status: PUBLIC
    UpdateCustomerGroupResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [UpdateCustomerGroup](https://developer.squareup.com/reference/square_2021-08-18/customer-groups-api/update-customer-group) endpoint.

        Either `errors` or `group` is present in a given response (never both).
      example:
        group:
          created_at: 2020-04-13T21:54:57.863Z
          id: 2TAT3CMH4Q0A9M87XJZED0WMR3
          name: Loyal Customers
          updated_at: 2020-04-13T21:54:58Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        group:
          $ref: "#/components/schemas/CustomerGroup"
      type: object
      x-release-status: PUBLIC
    UpdateCustomerRequest:
      description: |-
        Defines the body parameters that can be included in a request to the
        `UpdateCustomer` endpoint.
      example:
        request_body:
          email_address: New.Amelia.Earhart@example.com
          note: updated customer note
          phone_number: ""
          version: 2
      properties:
        address:
          $ref: "#/components/schemas/Address"
        birthday:
          description: |-
            The birthday associated with the customer profile, in RFC 3339 format. The year is optional. The timezone and time are not allowed.
            For example, `0000-09-21T00:00:00-00:00` represents a birthday on September 21 and `1998-09-21T00:00:00-00:00` represents a birthday on September 21, 1998.
            You can also specify this value in `YYYY-MM-DD` format.
          type: string
        company_name:
          description: A business name associated with the customer profile.
          type: string
        email_address:
          description: The email address associated with the customer profile.
          type: string
        family_name:
          description: The family name (that is, the last name) associated with the customer profile.
          type: string
        given_name:
          description: The given name (that is, the first name) associated with the customer profile.
          type: string
        nickname:
          description: A nickname for the customer profile.
          type: string
        note:
          description: A custom note associated with the customer profile.
          type: string
        phone_number:
          description: The 11-digit phone number associated with the customer profile.
          type: string
        reference_id:
          description: |-
            An optional second ID used to associate the customer profile with an
            entity in another system.
          type: string
        version:
          description: |-
            The current version of the customer profile.

            As a best practice, you should include this field to enable [optimistic concurrency](https://developer.squareup.com/docs/working-with-apis/optimistic-concurrency) control. For more information, see [Update a customer profile](https://developer.squareup.com/docs/customers-api/use-the-api/keep-records#update-a-customer-profile).
          format: int64
          type: integer
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/UpdateCustomer/UpdateCustomerRequest.csharp
        java: /sdk_samples/UpdateCustomer/UpdateCustomerRequest.java
        javascript: /sdk_samples/UpdateCustomer/UpdateCustomerRequest.javascript
        php: /sdk_samples/UpdateCustomer/UpdateCustomerRequest.php
        python: /sdk_samples/UpdateCustomer/UpdateCustomerRequest.python
        ruby: /sdk_samples/UpdateCustomer/UpdateCustomerRequest.ruby
    UpdateCustomerResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the `UpdateCustomer` endpoint.

        Either `errors` or `customer` is present in a given response (never both).
      example:
        customer:
          address:
            address_line_1: 500 Electric Ave
            address_line_2: Suite 600
            administrative_district_level_1: NY
            country: US
            locality: New York
            postal_code: "10003"
          created_at: 2016-03-23T20:21:54.859Z
          creation_source: THIRD_PARTY
          email_address: New.Amelia.Earhart@example.com
          family_name: Earhart
          given_name: Amelia
          id: JDKYHBWT1D4F8MFH63DBMEN8Y4
          note: updated customer note
          preferences:
            email_unsubscribed: false
          reference_id: YOUR_REFERENCE_ID
          updated_at: 2016-05-15T20:21:55Z
          version: 3
      properties:
        customer:
          $ref: "#/components/schemas/Customer"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/UpdateCustomer/UpdateCustomerResponse.csharp
        java: /sdk_samples/UpdateCustomer/UpdateCustomerResponse.java
        javascript: /sdk_samples/UpdateCustomer/UpdateCustomerResponse.javascript
        php: /sdk_samples/UpdateCustomer/UpdateCustomerResponse.php
        python: /sdk_samples/UpdateCustomer/UpdateCustomerResponse.python
        ruby: /sdk_samples/UpdateCustomer/UpdateCustomerResponse.ruby
    UpdateInvoiceRequest:
      description: Describes a `UpdateInvoice` request.
      example:
        request_body:
          fields_to_clear:
            - payments_requests[2da7964f-f3d2-4f43-81e8-5aa220bf3355].reminders
          idempotency_key: 4ee82288-0910-499e-ab4c-5d0071dad1be
          invoice:
            payment_requests:
              - tipping_enabled: false
                uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
      properties:
        fields_to_clear:
          description: |-
            The list of fields to clear.
            For examples, see [Update an invoice](https://developer.squareup.com/docs/invoices-api/overview#update-an-invoice).
          items:
            type: string
          type: array
        idempotency_key:
          description: |-
            A unique string that identifies the `UpdateInvoice` request. If you do not
            provide `idempotency_key` (or provide an empty string as the value), the endpoint
            treats each request as independent.

            For more information, see [Idempotency](https://developer.squareup.com/docs/working-with-apis/idempotency).
          maxLength: 128
          type: string
        invoice:
          $ref: "#/components/schemas/Invoice"
      required:
        - invoice
      type: object
      x-release-status: PUBLIC
    UpdateInvoiceResponse:
      description: Describes a `UpdateInvoice` response.
      example:
        invoice:
          accepted_payment_methods:
            bank_account: false
            card: true
            square_gift_card: false
          created_at: 2020-06-18T17:45:13Z
          custom_fields:
            - label: Event Reference Number
              placement: ABOVE_LINE_ITEMS
              value: "Ref. #1234"
            - label: Terms of Service
              placement: BELOW_LINE_ITEMS
              value: The terms of service are...
          delivery_method: EMAIL
          description: We appreciate your business!
          id: inv:0-ChCHu2mZEabLeeHahQnXDjZQECY
          invoice_number: inv-100
          location_id: ES0RJRZYEC39A
          next_payment_amount_money:
            amount: 10000
            currency: USD
          order_id: CAISENgvlJ6jLWAzERDzjyHVybY
          payment_requests:
            - automatic_payment_source: NONE
              computed_amount_money:
                amount: 10000
                currency: USD
              due_date: 2030-01-24
              request_type: BALANCE
              tipping_enabled: false
              total_completed_amount_money:
                amount: 0
                currency: USD
              uid: 2da7964f-f3d2-4f43-81e8-5aa220bf3355
          primary_recipient:
            customer_id: JDKYHBWT1D4F8MFH63DBMEN8Y4
            email_address: Amelia.Earhart@example.com
            family_name: Earhart
            given_name: Amelia
            phone_number: 1-212-555-4240
          scheduled_at: 2030-01-13T10:00:00Z
          status: UNPAID
          timezone: America/Los_Angeles
          title: Event Planning Services
          updated_at: 2020-06-18T18:23:11Z
          version: 2
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        invoice:
          $ref: "#/components/schemas/Invoice"
      type: object
      x-release-status: PUBLIC
    UpdateItemModifierListsRequest:
      description: ""
      example:
        request_body:
          item_ids:
            - H42BRLUJ5KTZTTMPVSLFAACQ
            - 2JXOBJIHCWBQ4NZ3RIXQGJA6
          modifier_lists_to_disable:
            - 7WRC16CJZDVLSNDQ35PP6YAD
          modifier_lists_to_enable:
            - H42BRLUJ5KTZTTMPVSLFAACQ
            - 2JXOBJIHCWBQ4NZ3RIXQGJA6
      properties:
        item_ids:
          description: The IDs of the catalog items associated with the CatalogModifierList objects being updated.
          items:
            type: string
          type: array
        modifier_lists_to_disable:
          description: The IDs of the CatalogModifierList objects to disable for the CatalogItem.
          items:
            type: string
          type: array
        modifier_lists_to_enable:
          description: The IDs of the CatalogModifierList objects to enable for the CatalogItem.
          items:
            type: string
          type: array
      required:
        - item_ids
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.csharp
        java: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.java
        javascript: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.javascript
        php: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.php
        python: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.python
        ruby: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsRequest.ruby
    UpdateItemModifierListsResponse:
      description: ""
      example:
        updated_at: 2016-11-16T22:25:24.878Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        updated_at:
          description: The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-date) of this update in RFC 3339 format, e.g., `2016-09-04T23:59:33.123Z`.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.csharp
        java: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.java
        javascript: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.javascript
        php: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.php
        python: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.python
        ruby: /sdk_samples/Catalog/UpdateItemModifierLists/UpdateItemModifierListsResponse.ruby
    UpdateItemTaxesRequest:
      description: ""
      example:
        request_body:
          item_ids:
            - H42BRLUJ5KTZTTMPVSLFAACQ
            - 2JXOBJIHCWBQ4NZ3RIXQGJA6
          taxes_to_disable:
            - AQCEGCEBBQONINDOHRGZISEX
          taxes_to_enable:
            - 4WRCNHCJZDVLSNDQ35PP6YAD
      properties:
        item_ids:
          description: IDs for the CatalogItems associated with the CatalogTax objects being updated.
          items:
            type: string
          type: array
        taxes_to_disable:
          description: IDs of the CatalogTax objects to disable.
          items:
            type: string
          type: array
        taxes_to_enable:
          description: IDs of the CatalogTax objects to enable.
          items:
            type: string
          type: array
      required:
        - item_ids
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.csharp
        java: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.java
        javascript: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.javascript
        php: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.php
        python: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.python
        ruby: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesRequest.ruby
    UpdateItemTaxesResponse:
      description: ""
      example:
        updated_at: 2016-11-16T22:25:24.878Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        updated_at:
          description: The database [timestamp](https://developer.squareup.com/docs/build-basics/working-with-dates) of this update in RFC 3339 format, e.g., `2016-09-04T23:59:33.123Z`.
          type: string
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.csharp
        java: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.java
        javascript: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.javascript
        php: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.php
        python: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.python
        ruby: /sdk_samples/Catalog/UpdateItemTaxes/UpdateItemTaxesResponse.ruby
    UpdateLocationRequest:
      description: Request object for the [UpdateLocation](https://developer.squareup.com/reference/square_2021-08-18/locations-api/update-location) endpoint.
      example:
        request_body:
          location:
            address:
              address_line_1: 1234 Peachtree St. NE
              administrative_district_level_1: GA
              locality: Atlanta
              postal_code: "30309"
            business_hours:
              periods:
                - day_of_week: MON
                  end_local_time: 17:00
                  start_local_time: 09:00
            description: Updated description
            facebook_url: null
            instagram_username: instagram
            name: Updated nickname
            twitter_username: twitter
      properties:
        location:
          $ref: "#/components/schemas/Location"
      type: object
      x-is-beta: true
      x-release-status: BETA
    UpdateLocationResponse:
      description: Response object returned by the [UpdateLocation](https://developer.squareup.com/reference/square_2021-08-18/locations-api/update-location) endpoint.
      example:
        location:
          address:
            address_line_1: 1234 Peachtree St. NE
            administrative_district_level_1: GA
            locality: Atlanta
            postal_code: "30309"
          business_email: example@squareup.com
          business_hours:
            periods:
              - day_of_week: MON
                end_local_time: 17:00
                start_local_time: 09:00
          business_name: Business Name
          capabilities:
            - CREDIT_CARD_PROCESSING
          coordinates:
            latitude: 33.788567
            longitude: -84.466947
          country: US
          created_at: 2019-07-19T17:58:25Z
          currency: USD
          description: Updated description
          id: LOCATION_ID
          instagram_username: instagram
          language_code: en-US
          mcc: "1234"
          merchant_id: MERCHANT_ID
          name: Updated nickname
          phone_number: "5559211234"
          status: ACTIVE
          timezone: America/New_York
          twitter_username: twitter
          type: MOBILE
          website_url: examplewebsite.com
      properties:
        errors:
          description: Information on errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        location:
          $ref: "#/components/schemas/Location"
      type: object
      x-is-beta: true
      x-release-status: BETA
    UpdateOrderRequest:
      description: |-
        Defines the fields that are included in requests to the
        [UpdateOrder](https://developer.squareup.com/reference/square_2021-08-18/orders-api/update-order) endpoint.
      example:
        request_body:
          fields_to_clear:
            - discounts
          idempotency_key: UNIQUE_STRING
          order:
            line_items:
              - base_price_money:
                  amount: 200
                  currency: USD
                name: COOKIE
                quantity: "2"
                uid: cookie_uid
            version: 1
      properties:
        fields_to_clear:
          description: |-
            The [dot notation paths](https://developer.squareup.com/docs/orders-api/manage-orders#on-dot-notation)
            fields to clear. For example, `line_items[uid].note`.
            For more information, see [Deleting fields](https://developer.squareup.com/docs/orders-api/manage-orders#delete-fields).
          items:
            type: string
          type: array
        idempotency_key:
          description: |-
            A value you specify that uniquely identifies this update request.

            If you are unsure whether a particular update was applied to an order successfully,
            you can reattempt it with the same idempotency key without
            worrying about creating duplicate updates to the order.
            The latest order version is returned.

            For more information, see [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency).
          maxLength: 192
          type: string
        order:
          $ref: "#/components/schemas/Order"
      type: object
      x-is-beta: true
      x-release-status: BETA
    UpdateOrderResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [UpdateOrder](https://developer.squareup.com/reference/square_2021-08-18/orders-api/update-order) endpoint.
      example:
        order:
          created_at: 2019-08-23T18:26:18.243Z
          id: DREk7wJcyXNHqULq8JJ2iPAsluJZY
          line_items:
            - base_price_money:
                amount: 500
                currency: USD
              gross_sales_money:
                amount: 500
                currency: USD
              name: Small Coffee
              quantity: "1"
              total_discount_money:
                amount: 0
                currency: USD
              total_money:
                amount: 500
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: EuYkakhmu3ksHIds5Hiot
              variation_total_price_money:
                amount: 500
                currency: USD
            - base_price_money:
                amount: 200
                currency: USD
              gross_sales_money:
                amount: 400
                currency: USD
              name: COOKIE
              quantity: "2"
              total_discount_money:
                amount: 0
                currency: USD
              total_money:
                amount: 400
                currency: USD
              total_tax_money:
                amount: 0
                currency: USD
              uid: cookie_uid
              variation_total_price_money:
                amount: 400
                currency: USD
          location_id: MXVQSVNDGN3C8
          net_amounts:
            discount_money:
              amount: 0
              currency: USD
            service_charge_money:
              amount: 0
              currency: USD
            tax_money:
              amount: 0
              currency: USD
            total_money:
              amount: 900
              currency: USD
          source:
            name: Cookies
          state: OPEN
          total_discount_money:
            amount: 0
            currency: USD
          total_money:
            amount: 900
            currency: USD
          total_service_charge_money:
            amount: 0
            currency: USD
          total_tax_money:
            amount: 0
            currency: USD
          updated_at: 2019-08-23T18:33:47.523Z
          version: 2
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        order:
          $ref: "#/components/schemas/Order"
      type: object
      x-is-beta: true
      x-release-status: BETA
    UpdatePaymentRequest:
      description: |-
        Describes a request to update a payment using 
        [UpdatePayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/update-payment).
      example:
        request_body:
          idempotency_key: 3d3c3b22-9572-4fc6-1111-e4d2f41b4122
          payment:
            amount_money:
              amount: 1000
              currency: USD
            tip_money:
              amount: 300
              currency: USD
            version_token: Z3okDzm2VRv5m5nE3WGx381ItTNhvjkB4VapByyz54h6o
      properties:
        idempotency_key:
          description: |-
            A unique string that identifies this `UpdatePayment` request. Keys can be any valid string
            but must be unique for every `UpdatePayment` request.

            The maximum is 45 characters.

            For more information, see [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency).
          maxLength: 45
          minLength: 1
          type: string
        payment:
          $ref: "#/components/schemas/Payment"
      required:
        - idempotency_key
      type: object
      x-release-status: PUBLIC
    UpdatePaymentResponse:
      description: |-
        Defines the response returned by 
        [UpdatePayment](https://developer.squareup.com/reference/square_2021-08-18/payments-api/update-payment).
      example:
        payment:
          amount_money:
            amount: 1000
            currency: USD
          approved_money:
            amount: 1000
            currency: USD
          capabilities:
            - EDIT_AMOUNT_UP
            - EDIT_AMOUNT_DOWN
            - EDIT_TIP_AMOUNT_UP
            - EDIT_TIP_AMOUNT_DOWN
          card_details:
            auth_result_code: ajM2ZF
            avs_status: AVS_ACCEPTED
            card:
              bin: "411111"
              card_brand: VISA
              card_type: CREDIT
              exp_month: 2
              exp_year: 2022
              fingerprint: sq-1-n_BL15KP87ClDa4-h2nXOI0fp5VnxNH6hfhzqhptTfAgxgLuGFcg6jIPngDz4IkkTQ
              last_4: "1111"
            card_payment_timeline:
              authorized_at: 2021-02-24T03:33:43.681Z
            cvv_status: CVV_ACCEPTED
            entry_method: KEYED
            statement_description: SQ *MY BUSINESS GOSQ.COM
            status: AUTHORIZED
          created_at: 2021-03-02T19:53:31.055Z
          delay_action: CANCEL
          delay_duration: PT168H
          delayed_until: 2021-03-09T19:53:31.055Z
          id: XllelosAAfmkf9mOa0YB4PqSZACZY
          location_id: XTI0H92143A39
          order_id: B6qiKWus1d3TBoN2Qn5kfDiWZlfZY
          receipt_number: Xlle
          source_type: CARD
          status: APPROVED
          tip_money:
            amount: 300
            currency: USD
          total_money:
            amount: 1300
            currency: USD
          updated_at: 2021-03-02T19:53:31.164Z
          version_token: 9TKsTawsWZvdZZD5uhAZFWfd3chxFXB49cgFpD2Kujf6o
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        payment:
          $ref: "#/components/schemas/Payment"
      type: object
      x-release-status: PUBLIC
    UpdateShiftRequest:
      description: A request to update a `Shift` object.
      example:
        request_body:
          shift:
            breaks:
              - break_type_id: REGS1EQR1TPZ5
                end_at: 2019-01-25T06:16:00-05:00
                expected_duration: PT5M
                id: X7GAQYVVRRG6P
                is_paid: true
                name: Tea Break
                start_at: 2019-01-25T06:11:00-05:00
            end_at: 2019-01-25T13:11:00-05:00
            location_id: PAA1RJZZKXBFG
            start_at: 2019-01-25T03:11:00-05:00
            team_member_id: ormj0jJJZ5OZIzxrZYJI
            version: 1
            wage:
              hourly_rate:
                amount: 1500
                currency: USD
              title: Bartender
      properties:
        shift:
          $ref: "#/components/schemas/Shift"
      required:
        - shift
      type: object
      x-release-status: PUBLIC
    UpdateShiftResponse:
      description: |-
        The response to a request to update a `Shift`. The response contains
        the updated `Shift` object and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        shift:
          breaks:
            - break_type_id: REGS1EQR1TPZ5
              end_at: 2019-01-25T06:16:00-05:00
              expected_duration: PT5M
              id: X7GAQYVVRRG6P
              is_paid: true
              name: Tea Break
              start_at: 2019-01-25T06:11:00-05:00
          created_at: 2019-02-28T00:39:02Z
          employee_id: ormj0jJJZ5OZIzxrZYJI
          end_at: 2019-01-25T13:11:00-05:00
          id: K0YH4CV5462JB
          location_id: PAA1RJZZKXBFG
          start_at: 2019-01-25T03:11:00-05:00
          status: CLOSED
          team_member_id: ormj0jJJZ5OZIzxrZYJI
          timezone: America/New_York
          updated_at: 2019-02-28T00:42:41Z
          version: 2
          wage:
            hourly_rate:
              amount: 1500
              currency: USD
            title: Bartender
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        shift:
          $ref: "#/components/schemas/Shift"
      type: object
      x-release-status: PUBLIC
    UpdateSubscriptionRequest:
      description: |-
        Defines parameters in a
        [UpdateSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/update-subscription) endpoint
        request.
      example:
        request_body:
          subscription:
            price_override_money:
              amount: 2000
              currency: USD
            tax_percentage: null
            version: 1594155459464
      properties:
        subscription:
          $ref: "#/components/schemas/Subscription"
      type: object
      x-release-status: PUBLIC
    UpdateSubscriptionResponse:
      description: |-
        Defines the fields that are included in the response from the
        [UpdateSubscription](https://developer.squareup.com/reference/square_2021-08-18/subscriptions-api/update-subscription) endpoint.
      example:
        subscription:
          created_at: 2020-08-03T21:53:10Z
          customer_id: CHFGVKYY8RSV93M5KCYTG4PN0G
          id: 9ba40961-995a-4a3d-8c53-048c40cafc13
          location_id: S8GWD5R9QB376
          plan_id: 6JHXF3B2CW3YKHDV4XEM674H
          price_override_money:
            amount: 2000
            currency: USD
          status: ACTIVE
          timezone: America/Los_Angeles
          version: 1594311617331
      properties:
        errors:
          description: Information about errors encountered during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        subscription:
          $ref: "#/components/schemas/Subscription"
      type: object
      x-release-status: PUBLIC
    UpdateTeamMemberRequest:
      description: Represents an update request for a `TeamMember` object.
      example:
        request_body:
          team_member:
            assigned_locations:
              assignment_type: EXPLICIT_LOCATIONS
              location_ids:
                - YSGH2WBKG94QZ
                - GA2Y9HSJ8KRYT
            email_address: joe_doe@gmail.com
            family_name: Doe
            given_name: Joe
            phone_number: "+14159283333"
            reference_id: reference_id_1
            status: ACTIVE
      properties:
        team_member:
          $ref: "#/components/schemas/TeamMember"
      type: object
      x-release-status: PUBLIC
    UpdateTeamMemberResponse:
      description: Represents a response from an update request containing the updated `TeamMember` object or error messages.
      example:
        team_member:
          assigned_locations:
            assignment_type: EXPLICIT_LOCATIONS
            location_ids:
              - GA2Y9HSJ8KRYT
              - YSGH2WBKG94QZ
          created_at: 2020-06-11T22:55:45.867Z
          email_address: joe_doe@gmail.com
          family_name: Doe
          given_name: Joe
          id: 1yJlHapkseYnNPETIU1B
          is_owner: false
          phone_number: "+14159283333"
          reference_id: reference_id_1
          status: ACTIVE
      properties:
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        team_member:
          $ref: "#/components/schemas/TeamMember"
      type: object
      x-release-status: PUBLIC
    UpdateWageSettingRequest:
      description: Represents an update request for the `WageSetting` object describing a `TeamMember`.
      example:
        request_body:
          wage_setting:
            is_overtime_exempt: true
            job_assignments:
              - annual_rate:
                  amount: 3000000
                  currency: USD
                job_title: Manager
                pay_type: SALARY
                weekly_hours: 40
              - hourly_rate:
                  amount: 1200
                  currency: USD
                job_title: Cashier
                pay_type: HOURLY
      properties:
        wage_setting:
          $ref: "#/components/schemas/WageSetting"
      required:
        - wage_setting
      type: object
      x-release-status: PUBLIC
    UpdateWageSettingResponse:
      description: |-
        Represents a response from an update request containing the updated `WageSetting` object
        or error messages.
      example:
        wage_setting:
          created_at: 2019-07-10T17:26:48+00:00
          is_overtime_exempt: true
          job_assignments:
            - annual_rate:
                amount: 3000000
                currency: USD
              hourly_rate:
                amount: 1443
                currency: USD
              job_title: Manager
              pay_type: SALARY
              weekly_hours: 40
            - hourly_rate:
                amount: 1200
                currency: USD
              job_title: Cashier
              pay_type: HOURLY
          team_member_id: -3oZQKPKVk6gUXU_V5Qa
          updated_at: 2020-06-11T23:12:04+00:00
          version: 1
      properties:
        errors:
          description: The errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        wage_setting:
          $ref: "#/components/schemas/WageSetting"
      type: object
      x-release-status: PUBLIC
    UpdateWorkweekConfigRequest:
      description: A request to update a `WorkweekConfig` object.
      example:
        request_body:
          workweek_config:
            start_of_day_local_time: 10:00
            start_of_week: MON
            version: 10
      properties:
        workweek_config:
          $ref: "#/components/schemas/WorkweekConfig"
      required:
        - workweek_config
      type: object
      x-release-status: PUBLIC
    UpdateWorkweekConfigResponse:
      description: |-
        The response to a request to update a `WorkweekConfig` object. The response contains
        the updated `WorkweekConfig` object and might contain a set of `Error` objects if
        the request resulted in errors.
      example:
        workweek_config:
          created_at: 2016-02-04T00:58:24Z
          id: FY4VCAQN700GM
          start_of_day_local_time: 10:00
          start_of_week: MON
          updated_at: 2019-02-28T01:04:35Z
          version: 11
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        workweek_config:
          $ref: "#/components/schemas/WorkweekConfig"
      type: object
      x-release-status: PUBLIC
    UpsertCatalogObjectRequest:
      description: ""
      example:
        request_body:
          idempotency_key: af3d1afc-7212-4300-b463-0bfc5314a5ae
          object:
            id: "#Cocoa"
            item_data:
              abbreviation: Ch
              description: Hot Chocolate
              name: Cocoa
              variations:
                - id: "#Small"
                  item_variation_data:
                    item_id: "#Cocoa"
                    name: Small
                    pricing_type: VARIABLE_PRICING
                  type: ITEM_VARIATION
                - id: "#Large"
                  item_variation_data:
                    item_id: "#Cocoa"
                    name: Large
                    price_money:
                      amount: 400
                      currency: USD
                    pricing_type: FIXED_PRICING
                  type: ITEM_VARIATION
            type: ITEM
      properties:
        idempotency_key:
          description: |-
            A value you specify that uniquely identifies this
            request among all your requests. A common way to create
            a valid idempotency key is to use a Universally unique
            identifier (UUID).

            If you're unsure whether a particular request was successful,
            you can reattempt it with the same idempotency key without
            worrying about creating duplicate objects.

            See [Idempotency](https://developer.squareup.com/docs/basics/api101/idempotency) for more information.
          minLength: 1
          type: string
        object:
          $ref: "#/components/schemas/CatalogObject"
      required:
        - idempotency_key
        - object
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.csharp
        java: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.java
        javascript: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.javascript
        php: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.php
        python: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.python
        ruby: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectRequest.ruby
    UpsertCatalogObjectResponse:
      description: ""
      example:
        catalog_object:
          id: R2TA2FOBUGCJZNIWJSOSNAI4
          is_deleted: false
          item_data:
            abbreviation: Ch
            description: Hot Chocolate
            name: Cocoa
            product_type: REGULAR
            variations:
              - id: QRT53UP4LITLWGOGBZCUWP63
                is_deleted: false
                item_variation_data:
                  item_id: R2TA2FOBUGCJZNIWJSOSNAI4
                  name: Small
                  ordinal: 0
                  pricing_type: VARIABLE_PRICING
                  stockable: true
                present_at_all_locations: true
                type: ITEM_VARIATION
                updated_at: 2021-06-14T15:51:39.021Z
                version: 1623685899021
              - id: NS77DKEIQ3AEQTCP727DSA7U
                is_deleted: false
                item_variation_data:
                  item_id: R2TA2FOBUGCJZNIWJSOSNAI4
                  name: Large
                  ordinal: 1
                  price_money:
                    amount: 400
                    currency: USD
                  pricing_type: FIXED_PRICING
                  stockable: true
                present_at_all_locations: true
                type: ITEM_VARIATION
                updated_at: 2021-06-14T15:51:39.021Z
                version: 1623685899021
          present_at_all_locations: true
          type: ITEM
          updated_at: 2021-06-14T15:51:39.021Z
          version: 1623685899021
        id_mappings:
          - client_object_id: "#Cocoa"
            object_id: R2TA2FOBUGCJZNIWJSOSNAI4
          - client_object_id: "#Small"
            object_id: QRT53UP4LITLWGOGBZCUWP63
          - client_object_id: "#Large"
            object_id: NS77DKEIQ3AEQTCP727DSA7U
      properties:
        catalog_object:
          $ref: "#/components/schemas/CatalogObject"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        id_mappings:
          description: The mapping between client and server IDs for this upsert.
          items:
            $ref: "#/components/schemas/CatalogIdMapping"
          type: array
      type: object
      x-release-status: PUBLIC
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.csharp
        java: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.java
        javascript: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.javascript
        php: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.php
        python: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.python
        ruby: /sdk_samples/Catalog/UpsertCatalogObject/UpsertCatalogObjectResponse.ruby
    UpsertSnippetRequest:
      description: Represents an `UpsertSnippet` request.
      example:
        request_body:
          snippet:
            content: <script>var js = 1;</script>
      properties:
        snippet:
          $ref: "#/components/schemas/Snippet"
      required:
        - snippet
      type: object
      x-release-status: PUBLIC
    UpsertSnippetResponse:
      description: Represents an `UpsertSnippet` response. The response can include either `snippet` or `errors`.
      example:
        snippet:
          content: <script>var js = 1;</script>
          created_at: 2021-03-11T25:40:09Z
          id: snippet_5d178150-a6c0-11eb-a9f1-437e6a2881e7
          site_id: site_278075276488921835
          updated_at: 2021-03-11T25:40:09Z
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        snippet:
          $ref: "#/components/schemas/Snippet"
      type: object
      x-release-status: PUBLIC
    V1CreateEmployeeRoleRequest:
      description: ""
      properties:
        employee_role:
          $ref: "#/components/schemas/V1EmployeeRole"
      type: object
      x-release-status: PUBLIC
    V1CreateRefundRequest:
      description: V1CreateRefundRequest
      properties:
        payment_id:
          description: |-
            The ID of the payment to refund. If you are creating a `PARTIAL`
            refund for a split tender payment, instead provide the id of the
            particular tender you want to refund.
          type: string
        reason:
          description: The reason for the refund.
          type: string
        refunded_money:
          $ref: "#/components/schemas/V1Money"
        request_idempotence_key:
          description: An optional key to ensure idempotence if you issue the same PARTIAL refund request more than once.
          type: string
        type:
          description: The type of refund (FULL or PARTIAL).
          type: string
      required:
        - payment_id
        - type
        - reason
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1CreateRefundRequestType:
      description: ""
      enum:
        - FULL
        - PARTIAL
      type: string
      x-enum-elements:
        - description: ""
          name: FULL
        - description: ""
          name: PARTIAL
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1Employee:
      description: Represents one of a business's employees.
      properties:
        authorized_location_ids:
          description: The IDs of the locations the employee is allowed to clock in at.
          items:
            type: string
          type: array
        created_at:
          description: The time when the employee entity was created, in ISO 8601 format.
          type: string
        email:
          description: The employee's email address.
          type: string
        external_id:
          description: An ID the merchant can set to associate the employee with an entity in another system.
          type: string
        first_name:
          description: The employee's first name.
          type: string
        id:
          description: The employee's unique ID.
          type: string
        last_name:
          description: The employee's last name.
          type: string
        role_ids:
          description: The ids of the employee's associated roles. Currently, you can specify only one or zero roles per employee.
          items:
            type: string
          type: array
        status:
          description: Whether the employee is ACTIVE or INACTIVE. Inactive employees cannot sign in to Square Register.Merchants update this field from the Square Dashboard.
          type: string
        updated_at:
          description: The time when the employee entity was most recently updated, in ISO 8601 format.
          type: string
      required:
        - first_name
        - last_name
      type: object
      x-release-status: PUBLIC
    V1EmployeeRole:
      description: V1EmployeeRole
      properties:
        created_at:
          description: The time when the employee entity was created, in ISO 8601 format. Is set by Square when the Role is created.
          type: string
        id:
          description: The role's unique ID, Can only be set by Square.
          type: string
        is_owner:
          description: If true, employees with this role have all permissions, regardless of the values indicated in permissions.
          type: boolean
        name:
          description: The role's merchant-defined name.
          type: string
        permissions:
          description: The role's permissions.
          items:
            type: string
          type: array
        updated_at:
          description: The time when the employee entity was most recently updated, in ISO 8601 format. Is set by Square when the Role updated.
          type: string
      required:
        - name
        - permissions
      type: object
      x-release-status: PUBLIC
    V1EmployeeRolePermissions:
      description: ""
      enum:
        - REGISTER_ACCESS_SALES_HISTORY
        - REGISTER_APPLY_RESTRICTED_DISCOUNTS
        - REGISTER_CHANGE_SETTINGS
        - REGISTER_EDIT_ITEM
        - REGISTER_ISSUE_REFUNDS
        - REGISTER_OPEN_CASH_DRAWER_OUTSIDE_SALE
        - REGISTER_VIEW_SUMMARY_REPORTS
      type: string
      x-enum-elements:
        - description: ""
          name: REGISTER_ACCESS_SALES_HISTORY
        - description: ""
          name: REGISTER_APPLY_RESTRICTED_DISCOUNTS
        - description: ""
          name: REGISTER_CHANGE_SETTINGS
        - description: ""
          name: REGISTER_EDIT_ITEM
        - description: ""
          name: REGISTER_ISSUE_REFUNDS
        - description: ""
          name: REGISTER_OPEN_CASH_DRAWER_OUTSIDE_SALE
        - description: ""
          name: REGISTER_VIEW_SUMMARY_REPORTS
      x-release-status: PUBLIC
    V1EmployeeStatus:
      description: ""
      enum:
        - ACTIVE
        - INACTIVE
      type: string
      x-enum-elements:
        - description: ""
          name: ACTIVE
        - description: ""
          name: INACTIVE
      x-release-status: PUBLIC
    V1ListEmployeeRolesRequest:
      description: ""
      properties:
        batch_token:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          type: string
        limit:
          description: The maximum integer number of employee entities to return in a single response. Default 100, maximum 200.
          type: integer
        order:
          description: "The order in which employees are listed in the response, based on their created_at field.Default value: ASC"
          type: string
      type: object
      x-release-status: PUBLIC
    V1ListEmployeeRolesResponse:
      description: ""
      properties:
        items:
          description: ""
          items:
            $ref: "#/components/schemas/V1EmployeeRole"
          type: array
      type: object
      x-release-status: PUBLIC
    V1ListEmployeesRequest:
      description: ""
      properties:
        batch_token:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          type: string
        begin_created_at:
          description: If filtering results by their created_at field, the beginning of the requested reporting period, in ISO 8601 format.
          type: string
        begin_updated_at:
          description: If filtering results by their updated_at field, the beginning of the requested reporting period, in ISO 8601 format
          type: string
        end_created_at:
          description: If filtering results by their created_at field, the end of the requested reporting period, in ISO 8601 format.
          type: string
        end_updated_at:
          description: If filtering results by there updated_at field, the end of the requested reporting period, in ISO 8601 format.
          type: string
        external_id:
          description: If provided, the endpoint returns only employee entities with the specified external_id.
          type: string
        limit:
          description: The maximum integer number of employee entities to return in a single response. Default 100, maximum 200.
          type: integer
        order:
          description: "The order in which employees are listed in the response, based on their created_at field.      Default value: ASC"
          type: string
        status:
          description: If provided, the endpoint returns only employee entities with the specified status (ACTIVE or INACTIVE).
          type: string
      type: object
      x-release-status: PUBLIC
    V1ListEmployeesRequestStatus:
      description: ""
      enum:
        - ACTIVE
        - INACTIVE
      type: string
      x-enum-elements:
        - description: ""
          name: ACTIVE
        - description: ""
          name: INACTIVE
      x-release-status: PUBLIC
    V1ListEmployeesResponse:
      description: ""
      properties:
        items:
          description: ""
          items:
            $ref: "#/components/schemas/V1Employee"
          type: array
      type: object
      x-release-status: PUBLIC
    V1ListOrdersRequest:
      description: ""
      properties:
        batch_token:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          type: string
        limit:
          description: The maximum number of payments to return in a single response. This value cannot exceed 200.
          type: integer
        order:
          description: The order in which payments are listed in the response.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1ListOrdersResponse:
      description: ""
      properties:
        items:
          description: ""
          items:
            $ref: "#/components/schemas/V1Order"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1ListPaymentsRequest:
      description: ""
      properties:
        batch_token:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          type: string
        begin_time:
          description: "The beginning of the requested reporting period, in ISO 8601 format. If this value is before January 1, 2013 (2013-01-01T00:00:00Z), this endpoint returns an error. Default value: The current time minus one year."
          type: string
        end_time:
          description: "The end of the requested reporting period, in ISO 8601 format. If this value is more than one year greater than begin_time, this endpoint returns an error. Default value: The current time."
          type: string
        include_partial:
          description: Indicates whether or not to include partial payments in the response. Partial payments will have the tenders collected so far, but the itemizations will be empty until the payment is completed.
          type: boolean
        limit:
          description: The maximum number of payments to return in a single response. This value cannot exceed 200.
          type: integer
        order:
          description: The order in which payments are listed in the response.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1ListPaymentsResponse:
      description: ""
      properties:
        items:
          description: ""
          items:
            $ref: "#/components/schemas/V1Payment"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1ListRefundsRequest:
      description: ""
      properties:
        batch_token:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          type: string
        begin_time:
          description: "The beginning of the requested reporting period, in ISO 8601 format. If this value is before January 1, 2013 (2013-01-01T00:00:00Z), this endpoint returns an error. Default value: The current time minus one year."
          type: string
        end_time:
          description: "The end of the requested reporting period, in ISO 8601 format. If this value is more than one year greater than begin_time, this endpoint returns an error. Default value: The current time."
          type: string
        limit:
          description: "The approximate number of refunds to return in a single response. Default: 100. Max: 200. Response may contain more results than the prescribed limit when refunds are made simultaneously to multiple tenders in a payment or when refunds are generated in an exchange to account for the value of returned goods."
          type: integer
        order:
          description: The order in which payments are listed in the response.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1ListRefundsResponse:
      description: ""
      properties:
        items:
          description: ""
          items:
            $ref: "#/components/schemas/V1Refund"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1ListSettlementsRequest:
      description: ""
      properties:
        batch_token:
          description: |-
            A pagination cursor to retrieve the next set of results for your
            original query to the endpoint.
          type: string
        begin_time:
          description: "The beginning of the requested reporting period, in ISO 8601 format. If this value is before January 1, 2013 (2013-01-01T00:00:00Z), this endpoint returns an error. Default value: The current time minus one year."
          type: string
        end_time:
          description: "The end of the requested reporting period, in ISO 8601 format. If this value is more than one year greater than begin_time, this endpoint returns an error. Default value: The current time."
          type: string
        limit:
          description: The maximum number of settlements to return in a single response. This value cannot exceed 200.
          type: integer
        order:
          description: The order in which settlements are listed in the response.
          type: string
        status:
          description: Provide this parameter to retrieve only settlements with a particular status (SENT or FAILED).
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1ListSettlementsRequestStatus:
      description: ""
      enum:
        - SENT
        - FAILED
      type: string
      x-enum-elements:
        - description: ""
          name: SENT
        - description: ""
          name: FAILED
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1ListSettlementsResponse:
      description: ""
      properties:
        items:
          description: ""
          items:
            $ref: "#/components/schemas/V1Settlement"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1Money:
      description: ""
      properties:
        amount:
          description: |-
            Amount in the lowest denominated value of this Currency. E.g. in USD
            these are cents, in JPY they are Yen (which do not have a 'cent' concept).
          type: integer
        currency_code:
          description: ""
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1Order:
      description: V1Order
      properties:
        btc_price_satoshi:
          description: For Bitcoin transactions, the price of the buyer's order in satoshi (100 million satoshi equals 1 BTC).
          type: number
        btc_receive_address:
          description: For Bitcoin transactions, the address that the buyer sent Bitcoin to.
          type: string
        buyer_email:
          description: The email address of the order's buyer.
          type: string
        buyer_note:
          description: A note provided by the buyer when the order was created, if any.
          type: string
        canceled_note:
          description: A note provided by the merchant when the order's state was set to CANCELED, if any.
          type: string
        completed_note:
          description: A note provided by the merchant when the order's state was set to COMPLETED, if any
          type: string
        created_at:
          description: The time when the order was created, in ISO 8601 format.
          type: string
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        expires_at:
          description: The time when the order expires if no action is taken, in ISO 8601 format.
          type: string
        id:
          description: The order's unique identifier.
          type: string
        order_history:
          description: The history of actions associated with the order.
          items:
            $ref: "#/components/schemas/V1OrderHistoryEntry"
          type: array
        payment_id:
          description: The unique identifier of the payment associated with the order.
          type: string
        promo_code:
          description: The promo code provided by the buyer, if any.
          type: string
        recipient_name:
          description: The name of the order's buyer.
          type: string
        recipient_phone_number:
          description: The phone number to use for the order's delivery.
          type: string
        refunded_note:
          description: A note provided by the merchant when the order's state was set to REFUNDED, if any.
          type: string
        shipping_address:
          $ref: "#/components/schemas/Address"
        state:
          description: Whether the tax is an ADDITIVE tax or an INCLUSIVE tax.
          type: string
        subtotal_money:
          $ref: "#/components/schemas/V1Money"
        tender:
          $ref: "#/components/schemas/V1Tender"
        total_discount_money:
          $ref: "#/components/schemas/V1Money"
        total_price_money:
          $ref: "#/components/schemas/V1Money"
        total_shipping_money:
          $ref: "#/components/schemas/V1Money"
        total_tax_money:
          $ref: "#/components/schemas/V1Money"
        updated_at:
          description: The time when the order was last modified, in ISO 8601 format.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1OrderHistoryEntry:
      description: V1OrderHistoryEntry
      properties:
        action:
          description: The type of action performed on the order.
          type: string
        created_at:
          description: The time when the action was performed, in ISO 8601 format.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1OrderHistoryEntryAction:
      description: ""
      enum:
        - ORDER_PLACED
        - DECLINED
        - PAYMENT_RECEIVED
        - CANCELED
        - COMPLETED
        - REFUNDED
        - EXPIRED
      type: string
      x-enum-elements:
        - description: ""
          name: ORDER_PLACED
        - description: ""
          name: DECLINED
        - description: ""
          name: PAYMENT_RECEIVED
        - description: ""
          name: CANCELED
        - description: ""
          name: COMPLETED
        - description: ""
          name: REFUNDED
        - description: ""
          name: EXPIRED
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1OrderState:
      description: ""
      enum:
        - PENDING
        - OPEN
        - COMPLETED
        - CANCELED
        - REFUNDED
        - REJECTED
      type: string
      x-enum-elements:
        - description: ""
          name: PENDING
        - description: ""
          name: OPEN
        - description: ""
          name: COMPLETED
        - description: ""
          name: CANCELED
        - description: ""
          name: REFUNDED
        - description: ""
          name: REJECTED
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1Payment:
      description: |-
        A payment represents a paid transaction between a Square merchant and a
        customer. Payment details are usually available from Connect API endpoints
        within a few minutes after the transaction completes.

        Each Payment object includes several fields that end in `_money`. These fields
        describe the various amounts of money that contribute to the payment total:

        <ul>
        <li>
        Monetary values are <b>positive</b> if they represent an
        <em>increase</em> in the amount of money the merchant receives (e.g.,
        <code>tax_money</code>, <code>tip_money</code>).
        </li>
        <li>
        Monetary values are <b>negative</b> if they represent an
        <em>decrease</em> in the amount of money the merchant receives (e.g.,
        <code>discount_money</code>, <code>refunded_money</code>).
        </li>
        </ul>
      properties:
        additive_tax:
          description: All of the additive taxes associated with the payment.
          items:
            $ref: "#/components/schemas/V1PaymentTax"
          type: array
        additive_tax_money:
          $ref: "#/components/schemas/V1Money"
        created_at:
          description: The time when the payment was created, in ISO 8601 format. Reflects the time of the first payment if the object represents an incomplete partial payment, and the time of the last or complete payment otherwise.
          type: string
        creator_id:
          description: The unique identifier of the Square account that took the payment.
          type: string
        device:
          $ref: "#/components/schemas/Device"
        discount_money:
          $ref: "#/components/schemas/V1Money"
        gross_sales_money:
          $ref: "#/components/schemas/V1Money"
        id:
          description: The payment's unique identifier.
          type: string
        inclusive_tax:
          description: All of the inclusive taxes associated with the payment.
          items:
            $ref: "#/components/schemas/V1PaymentTax"
          type: array
        inclusive_tax_money:
          $ref: "#/components/schemas/V1Money"
        is_partial:
          description: |-
            Indicates whether or not the payment is only partially paid for.
            If true, this payment will have the tenders collected so far, but the
            itemizations will be empty until the payment is completed.
          type: boolean
        itemizations:
          description: The items purchased in the payment.
          items:
            $ref: "#/components/schemas/V1PaymentItemization"
          type: array
        merchant_id:
          description: The unique identifier of the merchant that took the payment.
          type: string
        net_sales_money:
          $ref: "#/components/schemas/V1Money"
        net_total_money:
          $ref: "#/components/schemas/V1Money"
        payment_url:
          description: The URL of the payment's detail page in the merchant dashboard. The merchant must be signed in to the merchant dashboard to view this page.
          type: string
        processing_fee_money:
          $ref: "#/components/schemas/V1Money"
        receipt_url:
          description: |-
            The URL of the receipt for the payment. Note that for split tender
            payments, this URL corresponds to the receipt for the first tender
            listed in the payment's tender field. Each Tender object has its own
            receipt_url field you can use to get the other receipts associated with
            a split tender payment.
          type: string
        refunded_money:
          $ref: "#/components/schemas/V1Money"
        refunds:
          description: All of the refunds applied to the payment. Note that the value of all refunds on a payment can exceed the value of all tenders if a merchant chooses to refund money to a tender after previously accepting returned goods as part of an exchange.
          items:
            $ref: "#/components/schemas/V1Refund"
          type: array
        surcharge_money:
          $ref: "#/components/schemas/V1Money"
        surcharges:
          description: A list of all surcharges associated with the payment.
          items:
            $ref: "#/components/schemas/V1PaymentSurcharge"
          type: array
        swedish_rounding_money:
          $ref: "#/components/schemas/V1Money"
        tax_money:
          $ref: "#/components/schemas/V1Money"
        tender:
          description: All of the tenders associated with the payment.
          items:
            $ref: "#/components/schemas/V1Tender"
          type: array
        tip_money:
          $ref: "#/components/schemas/V1Money"
        total_collected_money:
          $ref: "#/components/schemas/V1Money"
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentDiscount:
      description: V1PaymentDiscount
      properties:
        applied_money:
          $ref: "#/components/schemas/V1Money"
        discount_id:
          description: The ID of the applied discount, if available. Discounts applied in older versions of Square Register might not have an ID.
          type: string
        name:
          description: The discount's name.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentItemDetail:
      description: V1PaymentItemDetail
      properties:
        category_name:
          description: The name of the item's merchant-defined category, if any.
          type: string
        item_id:
          description: The unique ID of the item purchased, if any.
          type: string
        item_variation_id:
          description: The unique ID of the item variation purchased, if any.
          type: string
        sku:
          description: " The item's merchant-defined SKU, if any."
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentItemization:
      description: |-
        Payment include an` itemizations` field that lists the items purchased,
        along with associated fees, modifiers, and discounts. Each itemization has an
        `itemization_type` field that indicates which of the following the itemization
        represents:

        <ul>
        <li>An item variation from the merchant's item library</li>
        <li>A custom monetary amount</li>
        <li>
        An action performed on a Square gift card, such as activating or
        reloading it.
        </li>
        </ul>

        *Note**: itemization information included in a `Payment` object reflects
        details collected **at the time of the payment**. Details such as the name or
        price of items might have changed since the payment was processed.
      properties:
        discount_money:
          $ref: "#/components/schemas/V1Money"
        discounts:
          description: All discounts applied to this itemization.
          items:
            $ref: "#/components/schemas/V1PaymentDiscount"
          type: array
        gross_sales_money:
          $ref: "#/components/schemas/V1Money"
        item_detail:
          $ref: "#/components/schemas/V1PaymentItemDetail"
        item_variation_name:
          description: The name of the item variation purchased, if any.
          type: string
        itemization_type:
          description: The type of purchase that the itemization represents, such as an ITEM or CUSTOM_AMOUNT
          type: string
        modifiers:
          description: All modifier options applied to this itemization.
          items:
            $ref: "#/components/schemas/V1PaymentModifier"
          type: array
        name:
          description: The item's name.
          type: string
        net_sales_money:
          $ref: "#/components/schemas/V1Money"
        notes:
          description: Notes entered by the merchant about the item at the time of payment, if any.
          type: string
        quantity:
          description: The quantity of the item purchased. This can be a decimal value.
          type: number
        single_quantity_money:
          $ref: "#/components/schemas/V1Money"
        taxes:
          description: All taxes applied to this itemization.
          items:
            $ref: "#/components/schemas/V1PaymentTax"
          type: array
        total_money:
          $ref: "#/components/schemas/V1Money"
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentItemizationItemizationType:
      description: ""
      enum:
        - ITEM
        - CUSTOM_AMOUNT
        - GIFT_CARD_ACTIVATION
        - GIFT_CARD_RELOAD
        - GIFT_CARD_UNKNOWN
        - OTHER
      type: string
      x-enum-elements:
        - description: ""
          name: ITEM
        - description: ""
          name: CUSTOM_AMOUNT
        - description: ""
          name: GIFT_CARD_ACTIVATION
        - description: ""
          name: GIFT_CARD_RELOAD
        - description: ""
          name: GIFT_CARD_UNKNOWN
        - description: ""
          name: OTHER
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentModifier:
      description: V1PaymentModifier
      properties:
        applied_money:
          $ref: "#/components/schemas/V1Money"
        modifier_option_id:
          description: The ID of the applied modifier option, if available. Modifier options applied in older versions of Square Register might not have an ID.
          type: string
        name:
          description: The modifier option's name.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentSurcharge:
      description: V1PaymentSurcharge
      properties:
        amount_money:
          $ref: "#/components/schemas/V1Money"
        applied_money:
          $ref: "#/components/schemas/V1Money"
        name:
          description: The name of the surcharge.
          type: string
        rate:
          description: The amount of the surcharge as a percentage. The percentage is provided as a string representing the decimal equivalent of the percentage. For example, "0.7" corresponds to a 7% surcharge. Exactly one of rate or amount_money should be set.
          type: string
        surcharge_id:
          description: A Square-issued unique identifier associated with the surcharge.
          type: string
        taxable:
          description: Indicates whether the surcharge is taxable.
          type: boolean
        taxes:
          description: The list of taxes that should be applied to the surcharge.
          items:
            $ref: "#/components/schemas/V1PaymentTax"
          type: array
        type:
          description: Indicates the source of the surcharge. For example, if it was applied as an automatic gratuity for a large group.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentSurchargeType:
      description: ""
      enum:
        - UNKNOWN
        - AUTO_GRATUITY
        - CUSTOM
      type: string
      x-enum-elements:
        - description: ""
          name: UNKNOWN
        - description: ""
          name: AUTO_GRATUITY
        - description: ""
          name: CUSTOM
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentTax:
      description: V1PaymentTax
      properties:
        applied_money:
          $ref: "#/components/schemas/V1Money"
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
        fee_id:
          description: The ID of the tax, if available. Taxes applied in older versions of Square Register might not have an ID.
          type: string
        inclusion_type:
          description: Whether the tax is an ADDITIVE tax or an INCLUSIVE tax.
          type: string
        name:
          description: The merchant-defined name of the tax.
          type: string
        rate:
          description: The rate of the tax, as a string representation of a decimal number. A value of 0.07 corresponds to a rate of 7%.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PaymentTaxInclusionType:
      description: ""
      enum:
        - ADDITIVE
        - INCLUSIVE
      type: string
      x-enum-elements:
        - description: ""
          name: ADDITIVE
        - description: ""
          name: INCLUSIVE
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1PhoneNumber:
      description: Represents a phone number.
      properties:
        calling_code:
          description: The phone number's international calling code. For US phone numbers, this value is +1.
          type: string
        number:
          description: The phone number.
          type: string
      required:
        - calling_code
        - number
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1Refund:
      description: V1Refund
      properties:
        created_at:
          description: The time when the merchant initiated the refund for Square to process, in ISO 8601 format.
          type: string
        is_exchange:
          description: Indicates whether or not the refund is associated with an exchange. If is_exchange is true, the refund reflects the value of goods returned in the exchange not the total money refunded.
          type: boolean
        merchant_id:
          description: ""
          type: string
        payment_id:
          description: A Square-issued ID associated with the refund. For single-tender refunds, payment_id is the ID of the original payment ID. For split-tender refunds, payment_id is the ID of the original tender. For exchange-based refunds (is_exchange == true), payment_id is the ID of the original payment ID even if the payment includes other tenders.
          type: string
        processed_at:
          description: The time when Square processed the refund on behalf of the merchant, in ISO 8601 format.
          type: string
        reason:
          description: The merchant-specified reason for the refund.
          type: string
        refunded_additive_tax:
          description: All of the additive taxes associated with the refund.
          items:
            $ref: "#/components/schemas/V1PaymentTax"
          type: array
        refunded_additive_tax_money:
          $ref: "#/components/schemas/V1Money"
        refunded_discount_money:
          $ref: "#/components/schemas/V1Money"
        refunded_inclusive_tax:
          description: All of the inclusive taxes associated with the refund.
          items:
            $ref: "#/components/schemas/V1PaymentTax"
          type: array
        refunded_inclusive_tax_money:
          $ref: "#/components/schemas/V1Money"
        refunded_money:
          $ref: "#/components/schemas/V1Money"
        refunded_processing_fee_money:
          $ref: "#/components/schemas/V1Money"
        refunded_surcharge_money:
          $ref: "#/components/schemas/V1Money"
        refunded_surcharges:
          description: A list of all surcharges associated with the refund.
          items:
            $ref: "#/components/schemas/V1PaymentSurcharge"
          type: array
        refunded_tax_money:
          $ref: "#/components/schemas/V1Money"
        refunded_tip_money:
          $ref: "#/components/schemas/V1Money"
        type:
          description: The type of refund
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1RefundType:
      description: ""
      enum:
        - FULL
        - PARTIAL
      type: string
      x-enum-elements:
        - description: ""
          name: FULL
        - description: ""
          name: PARTIAL
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1RetrieveEmployeeRequest:
      description: ""
      properties: {}
      type: object
      x-release-status: PUBLIC
    V1RetrieveEmployeeRoleRequest:
      description: ""
      properties: {}
      type: object
      x-release-status: PUBLIC
    V1RetrieveOrderRequest:
      description: ""
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1RetrievePaymentRequest:
      description: ""
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1RetrieveSettlementRequest:
      description: ""
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1Settlement:
      description: V1Settlement
      properties:
        bank_account_id:
          description: The Square-issued unique identifier for the bank account associated with the settlement.
          type: string
        entries:
          description: The entries included in this settlement.
          items:
            $ref: "#/components/schemas/V1SettlementEntry"
          type: array
        id:
          description: The settlement's unique identifier.
          type: string
        initiated_at:
          description: The time when the settlement was submitted for deposit or withdrawal, in ISO 8601 format.
          type: string
        status:
          description: The settlement's current status.
          type: string
        total_money:
          $ref: "#/components/schemas/V1Money"
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1SettlementEntry:
      description: V1SettlementEntry
      properties:
        amount_money:
          $ref: "#/components/schemas/V1Money"
        fee_money:
          $ref: "#/components/schemas/V1Money"
        payment_id:
          description: The settlement's unique identifier.
          type: string
        type:
          description: The settlement's current status.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1SettlementEntryType:
      description: ""
      enum:
        - ADJUSTMENT
        - BALANCE_CHARGE
        - CHARGE
        - FREE_PROCESSING
        - HOLD_ADJUSTMENT
        - PAID_SERVICE_FEE
        - PAID_SERVICE_FEE_REFUND
        - REDEMPTION_CODE
        - REFUND
        - RETURNED_PAYOUT
        - SQUARE_CAPITAL_ADVANCE
        - SQUARE_CAPITAL_PAYMENT
        - SQUARE_CAPITAL_REVERSED_PAYMENT
        - SUBSCRIPTION_FEE
        - SUBSCRIPTION_FEE_REFUND
        - OTHER
        - INCENTED_PAYMENT
        - RETURNED_ACH_ENTRY
        - RETURNED_SQUARE_275
        - SQUARE_275
        - SQUARE_CARD
      type: string
      x-enum-elements:
        - description: A manual adjustment applied to the merchant's account by Square
          name: ADJUSTMENT
        - description: A payment from an existing Square balance, such as a gift card
          name: BALANCE_CHARGE
        - description: A credit card payment CAPTURE
          name: CHARGE
        - description: Square offers Free Payments Processing for a variety of business scenarios including seller referral or when we want to apologize for a bug, customer service, repricing complication, etc. This entry represents a credit to the merchant for the purposes of Free Processing.
          name: FREE_PROCESSING
        - description: An adjustment made by Square related to holding/releasing a payment
          name: HOLD_ADJUSTMENT
        - description: a fee paid to a 3rd party merchant
          name: PAID_SERVICE_FEE
        - description: a refund for a 3rd party merchant fee
          name: PAID_SERVICE_FEE_REFUND
        - description: Repayment for a redemption code
          name: REDEMPTION_CODE
        - description: A refund for an existing card payment
          name: REFUND
        - description: An entry created when we receive a response for the ACH file we sent indicating that the settlement of the original entry failed.
          name: RETURNED_PAYOUT
        - description: Initial deposit to a merchant for a Capital merchant cash advance (MCA).
          name: SQUARE_CAPITAL_ADVANCE
        - description: Capital merchant cash advance (MCA) assessment. These are, generally, proportional to the merchant's sales but may be issued for other reasons related to the MCA.
          name: SQUARE_CAPITAL_PAYMENT
        - description: Capital merchant cash advance (MCA) assessment refund. These are, generally, proportional to the merchant's refunds but may be issued for other reasons related to the MCA.
          name: SQUARE_CAPITAL_REVERSED_PAYMENT
        - description: Fee charged for subscription to a Square product
          name: SUBSCRIPTION_FEE
        - description: Refund of a previously charged Square product subscription fee.
          name: SUBSCRIPTION_FEE_REFUND
        - description: ""
          name: OTHER
        - description: A payment in which Square covers part of the funds for a purchase
          name: INCENTED_PAYMENT
        - description: A settlement failed to be processed and the settlement amount has been returned to the account
          name: RETURNED_ACH_ENTRY
        - description: Refund for cancelling a Square Plus subscription
          name: RETURNED_SQUARE_275
        - description: Fee charged for a Square Plus subscription ($275)
          name: SQUARE_275
        - description: Settlements to or withdrawals from the Square Card (an asset)
          name: SQUARE_CARD
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1SettlementStatus:
      description: ""
      enum:
        - FAILED
        - SENT
      type: string
      x-enum-elements:
        - description: ""
          name: FAILED
        - description: ""
          name: SENT
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1Tender:
      description: |-
        A tender represents a discrete monetary exchange. Square represents this
        exchange as a money object with a specific currency and amount, where the
        amount is given in the smallest denomination of the given currency.

        Square POS can accept more than one form of tender for a single payment (such
        as by splitting a bill between a credit card and a gift card). The `tender`
        field of the Payment object lists all forms of tender used for the payment.

        Split tender payments behave slightly differently from single tender payments:

        The receipt_url for a split tender corresponds only to the first tender listed
        in the tender field. To get the receipt URLs for the remaining tenders, use
        the receipt_url fields of the corresponding Tender objects.

        *A note on gift cards**: when a customer purchases a Square gift card from a
        merchant, the merchant receives the full amount of the gift card in the
        associated payment.

        When that gift card is used as a tender, the balance of the gift card is
        reduced and the merchant receives no funds. A `Tender` object with a type of
        `SQUARE_GIFT_CARD` indicates a gift card was used for some or all of the
        associated payment.
      properties:
        card_brand:
          description: The brand of credit card provided.
          type: string
        change_back_money:
          $ref: "#/components/schemas/V1Money"
        employee_id:
          description: The ID of the employee that processed the tender.
          type: string
        entry_method:
          description: The tender's unique ID.
          type: string
        id:
          description: The tender's unique ID.
          type: string
        is_exchange:
          description: Indicates whether or not the tender is associated with an exchange. If is_exchange is true, the tender represents the value of goods returned in an exchange not the actual money paid. The exchange value reduces the tender amounts needed to pay for items purchased in the exchange.
          type: boolean
        name:
          description: A human-readable description of the tender.
          type: string
        pan_suffix:
          description: The last four digits of the provided credit card's account number.
          type: string
        payment_note:
          description: "Notes entered by the merchant about the tender at the time of payment, if any. Typically only present for tender with the type: OTHER."
          type: string
        receipt_url:
          description: The URL of the receipt for the tender.
          type: string
        refunded_money:
          $ref: "#/components/schemas/V1Money"
        settled_at:
          description: The time when the tender was settled, in ISO 8601 format.
          type: string
        tendered_at:
          description: The time when the tender was created, in ISO 8601 format.
          type: string
        tendered_money:
          $ref: "#/components/schemas/V1Money"
        total_money:
          $ref: "#/components/schemas/V1Money"
        type:
          description: The type of tender.
          type: string
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1TenderCardBrand:
      description: The brand of a credit card.
      enum:
        - OTHER_BRAND
        - VISA
        - MASTER_CARD
        - AMERICAN_EXPRESS
        - DISCOVER
        - DISCOVER_DINERS
        - JCB
        - CHINA_UNIONPAY
        - SQUARE_GIFT_CARD
      type: string
      x-enum-elements:
        - description: ""
          name: OTHER_BRAND
        - description: ""
          name: VISA
        - description: ""
          name: MASTER_CARD
        - description: ""
          name: AMERICAN_EXPRESS
        - description: ""
          name: DISCOVER
        - description: ""
          name: DISCOVER_DINERS
        - description: ""
          name: JCB
        - description: ""
          name: CHINA_UNIONPAY
        - description: ""
          name: SQUARE_GIFT_CARD
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1TenderEntryMethod:
      description: ""
      enum:
        - MANUAL
        - SCANNED
        - SQUARE_CASH
        - SQUARE_WALLET
        - SWIPED
        - WEB_FORM
        - OTHER
      type: string
      x-enum-elements:
        - description: ""
          name: MANUAL
        - description: ""
          name: SCANNED
        - description: ""
          name: SQUARE_CASH
        - description: ""
          name: SQUARE_WALLET
        - description: ""
          name: SWIPED
        - description: ""
          name: WEB_FORM
        - description: ""
          name: OTHER
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1TenderType:
      description: ""
      enum:
        - CREDIT_CARD
        - CASH
        - THIRD_PARTY_CARD
        - NO_SALE
        - SQUARE_WALLET
        - SQUARE_GIFT_CARD
        - UNKNOWN
        - OTHER
      type: string
      x-enum-elements:
        - description: ""
          name: CREDIT_CARD
        - description: ""
          name: CASH
        - description: ""
          name: THIRD_PARTY_CARD
        - description: ""
          name: NO_SALE
        - description: ""
          name: SQUARE_WALLET
        - description: ""
          name: SQUARE_GIFT_CARD
        - description: ""
          name: UNKNOWN
        - description: ""
          name: OTHER
      x-is-deprecated: true
      x-release-status: DEPRECATED
    V1UpdateEmployeeRequest:
      description: ""
      properties:
        body:
          $ref: "#/components/schemas/V1Employee"
      required:
        - body
      type: object
      x-release-status: PUBLIC
    V1UpdateEmployeeRoleRequest:
      description: ""
      properties:
        body:
          $ref: "#/components/schemas/V1EmployeeRole"
      required:
        - body
      type: object
      x-release-status: PUBLIC
    V1UpdateOrderRequest:
      description: V1UpdateOrderRequest
      properties:
        action:
          description: The action to perform on the order (COMPLETE, CANCEL, or REFUND).
          type: string
        canceled_note:
          description: A merchant-specified note about the canceling of the order. Only valid if action is CANCEL.
          type: string
        completed_note:
          description: A merchant-specified note about the completion of the order. Only valid if action is COMPLETE.
          type: string
        refunded_note:
          description: A merchant-specified note about the refunding of the order. Only valid if action is REFUND.
          type: string
        shipped_tracking_number:
          description: The tracking number of the shipment associated with the order. Only valid if action is COMPLETE.
          type: string
      required:
        - action
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    V1UpdateOrderRequestAction:
      description: ""
      enum:
        - COMPLETE
        - CANCEL
        - REFUND
      type: string
      x-enum-elements:
        - description: ""
          name: COMPLETE
        - description: ""
          name: CANCEL
        - description: ""
          name: REFUND
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-visibility: SDK_ONLY
    VoidTransactionRequest:
      description: ""
      example: {}
      properties: {}
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/VoidTransaction/VoidTransactionRequest.csharp
        java: /sdk_samples/VoidTransaction/VoidTransactionRequest.java
        javascript: /sdk_samples/VoidTransaction/VoidTransactionRequest.javascript
        php: /sdk_samples/VoidTransaction/VoidTransactionRequest.php
        python: /sdk_samples/VoidTransaction/VoidTransactionRequest.python
        ruby: /sdk_samples/VoidTransaction/VoidTransactionRequest.ruby
    VoidTransactionResponse:
      description: |-
        Defines the fields that are included in the response body of
        a request to the [VoidTransaction](https://developer.squareup.com/reference/square_2021-08-18/transactions-api/void-transaction) endpoint.
      example: {}
      properties:
        errors:
          description: Any errors that occurred during the request.
          items:
            $ref: "#/components/schemas/Error"
          type: array
      type: object
      x-is-deprecated: true
      x-release-status: DEPRECATED
      x-sq-sdk-sample-code:
        csharp: /sdk_samples/VoidTransaction/VoidTransactionResponse.csharp
        java: /sdk_samples/VoidTransaction/VoidTransactionResponse.java
        javascript: /sdk_samples/VoidTransaction/VoidTransactionResponse.javascript
        php: /sdk_samples/VoidTransaction/VoidTransactionResponse.php
        python: /sdk_samples/VoidTransaction/VoidTransactionResponse.python
        ruby: /sdk_samples/VoidTransaction/VoidTransactionResponse.ruby
    WageSetting:
      description: An object representing a team member's wage information.
      properties:
        created_at:
          description: |-
            The timestamp, in RFC 3339 format, describing when the wage setting object was created.
            For example, "2018-10-04T04:00:00-07:00" or "2019-02-05T12:00:00Z".
          type: string
          x-read-only: true
        is_overtime_exempt:
          description: Whether the team member is exempt from the overtime rules of the seller's country.
          type: boolean
        job_assignments:
          description: |-
            Required. The ordered list of jobs that the team member is assigned to.
            The first job assignment is considered the team member's primary job.

            The minimum length is 1 and the maximum length is 12.
          items:
            $ref: "#/components/schemas/JobAssignment"
          type: array
        team_member_id:
          description: The unique ID of the `TeamMember` whom this wage setting describes.
          type: string
        updated_at:
          description: |-
            The timestamp, in RFC 3339 format, describing when the wage setting object was last updated.
            For example, "2018-10-04T04:00:00-07:00" or "2019-02-05T12:00:00Z".
          type: string
          x-read-only: true
        version:
          description: |-
            Used for resolving concurrency issues. The request fails if the version
            provided does not match the server version at the time of the request. If not provided,
            Square executes a blind write, potentially overwriting data from another write. For more information,
            see [optimistic concurrency](https://developer.squareup.com/docs/working-with-apis/optimistic-concurrency).
          type: integer
      type: object
      x-release-status: PUBLIC
    Weekday:
      description: The days of the week.
      enum:
        - MON
        - TUE
        - WED
        - THU
        - FRI
        - SAT
        - SUN
      type: string
      x-enum-elements:
        - description: Monday
          name: MON
        - description: Tuesday
          name: TUE
        - description: Wednesday
          name: WED
        - description: Thursday
          name: THU
        - description: Friday
          name: FRI
        - description: Saturday
          name: SAT
        - description: Sunday
          name: SUN
      x-release-status: PUBLIC
    WorkweekConfig:
      description: |-
        Sets the day of the week and hour of the day that a business starts a
        workweek. This is used to calculate overtime pay.
      properties:
        created_at:
          description: A read-only timestamp in RFC 3339 format; presented in UTC.
          type: string
          x-read-only: true
        id:
          description: The UUID for this object.
          type: string
        start_of_day_local_time:
          description: |-
            The local time at which a business week ends. Represented as a
            string in `HH:MM` format (`HH:MM:SS` is also accepted, but seconds are
            truncated).
          minLength: 1
          type: string
        start_of_week:
          description: |-
            The day of the week on which a business week ends for
            compensation purposes.
          type: string
        updated_at:
          description: A read-only timestamp in RFC 3339 format; presented in UTC.
          type: string
          x-read-only: true
        version:
          description: |-
            Used for resolving concurrency issues. The request fails if the version
            provided does not match the server version at the time of the request. If not provided,
            Square executes a blind write; potentially overwriting data from another
            write.
          type: integer
      required:
        - start_of_week
        - start_of_day_local_time
      type: object
      x-release-status: PUBLIC
    invoice_delivery_methodInvoiceDeliveryMethod: {}
  securitySchemes:
    oauth2:
      flows:
        authorizationCode:
          authorizationUrl: https://connect.squareup.com/oauth2/authorize
          scopes:
            APPOINTMENTS_BUSINESS_SETTINGS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to booking business settings. For example, to call the
              ListTeamMemberBookingProfiles endpoint.
            APPOINTMENTS_READ: |-
              __HTTP Method__: `GET`, `POST`

              Grants read access to booking information. For example, to call the
              RetrieveBooking endpoint.
            APPOINTMENTS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to booking information. For example, to call the CreateBooking endpoint.
            BANK_ACCOUNTS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to bank account information associated with the targeted
              Square account. For example, to call the Connect v1 ListBankAccounts endpoint.
            CASH_DRAWER_READ: |-
              __HTTP Method__: `GET`

              Grants read access to cash drawer shift information. For example, to call the
              ListCashDrawerShifts endpoint.
            CUSTOMERS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to customer information. For example, to call the
              ListCustomers endpoint.
            CUSTOMERS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to customer information. For example, to create and update
              customer profiles.
            DEVICE_CREDENTIAL_MANAGEMENT: |-
              __HTTP Method__: `POST`, `GET`

              Grants read/write access to device credentials information. For example, to
              call the CreateDeviceCode endpoint.
            DISPUTES_READ: |-
              __HTTP Method__: `GET`

              Grants read access to dispute information. For example, to call the RetrieveDispute
              endpoint.
            DISPUTES_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to dispute information. For example, to call the SubmitEvidence
              endpoint.
            EMPLOYEES_READ: |-
              __HTTP Method__: `GET`

              Grants read access to employee profile information. For example, to call the
              Connect v1 Employees API.
            EMPLOYEES_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to employee profile information. For example, to create
              and modify employee profiles.
            GIFTCARDS_READ: |-
              __HTTP Method__: `GET`, `POST`

              Grants read access to gift card information. For example, to call the RetrieveGiftCard
              endpoint.
            GIFTCARDS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to gift card information. For example, to call the CreateGiftCard
              endpoint.
            INVENTORY_READ: |-
              __HTTP Method__: `GET`

              Grants read access to inventory information. For example, to call the
              RetrieveInventoryCount endpoint.
            INVENTORY_WRITE: |-
              __HTTP Method__:  `POST`, `PUT`, `DELETE`

              Grants write access to inventory information. For example, to call the
              BatchChangeInventory endpoint.
            INVOICES_READ: |-
              __HTTP Method__: `GET`, `POST`

              Grants read access to invoice information. For example, to call the ListInvoices endpoint.
            INVOICES_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to invoice information. For example, to call the CreateInvoice endpoint.
            ITEMS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to business and location information. For example, to
              obtain a location ID for subsequent activity.
            ITEMS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to product catalog information. For example, to modify or
              add to a product catalog.
            LOYALTY_READ: |-
              __HTTP Method__: `GET`

              Grants read access to loyalty information. For example, to call the
              ListLoyaltyPrograms endpoint.
            LOYALTY_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to loyalty information. For example, to call the
              CreateLoyaltyAccount endpoint.
            MERCHANT_PROFILE_READ: |-
              __HTTP Method__: `GET`

              Grants read access to business and location information. For example, to
              obtain a location ID for subsequent activity.
            MERCHANT_PROFILE_WRITE: "*Originally missing*"
            ONLINE_STORE_SITE_READ: |-
              __HTTP Method__: `GET`, `POST`

              Read access to ECOM online store site details.
            ONLINE_STORE_SNIPPETS_READ: |-
              __HTTP Method__: `GET`, `POST`

              Read access to ECOM online store snippets on published websites.
            ONLINE_STORE_SNIPPETS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Write access to ECOM online store snippets on published websites.
            ORDERS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to order information. For example, to call the
              BatchRetrieveOrders endpoint.
            ORDERS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to order information. For example, to call the
              CreateCheckout endpoint.
            PAYMENTS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to transaction and refund information. For example, to call
              the RetrieveTransaction endpoint.
            PAYMENTS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to transaction and refunds information. For example, to
              process payments with the Payments or Checkout API.
            PAYMENTS_WRITE_ADDITIONAL_RECIPIENTS: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Allow third party applications to deduct a portion of each transaction amount.
              __Required__ to use multiparty transaction functionality with the Payments
              API.
            PAYMENTS_WRITE_IN_PERSON: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to payments and refunds information. For example, to
              process in-person payments.
            PAYMENTS_WRITE_SHARED_ONFILE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Allows the developer to process payments on behalf of a seller using a shared on file payment method.
            SETTLEMENTS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to settlement (deposit) information. For example, to call
              the Connect v1 ListSettlements endpoint.
            SUBSCRIPTIONS_READ: |-
              __HTTP Method__: `GET`, `POST`

              Grants read access to subscription information. For example, to call the RetrieveSubscription
              endpoint.
            SUBSCRIPTIONS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to subscription information. For example, to call the CreateSubscription
              endpoint.
            TIMECARDS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to employee timecard information. For example, to call the
              Connect v2 SearchShifts endpoint.
            TIMECARDS_SETTINGS_READ: |-
              __HTTP Method__: `GET`

              Grants read access to employee timecard settings information. For example, to
              call the GetBreakType endpoint.
            TIMECARDS_SETTINGS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to employee timecard settings information. For example, to
              call the UpdateBreakType endpoint.
            TIMECARDS_WRITE: |-
              __HTTP Method__: `POST`, `PUT`, `DELETE`

              Grants write access to employee shift information. For example, to create
              and modify employee shifts.
          tokenUrl: https://connect.squareup.com/oauth2/token
      type: oauth2
    oauth2ClientSecret:
      in: header
      name: Authorization
      type: apiKey
