Skip to content

Latest commit

 

History

History
88 lines (78 loc) · 13.2 KB

order.md

File metadata and controls

88 lines (78 loc) · 13.2 KB

Order

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.

Structure

Order

Fields

Name Type Tags Description Getter Setter
id ?string Optional The order's unique ID. getId(): ?string setId(?string id): void
locationId string Required The ID of the seller location that this order is associated with.
Constraints: Minimum Length: 1
getLocationId(): string setLocationId(string locationId): void
referenceId ?string Optional A client-specified ID to associate an entity in another system
with this order.
Constraints: Maximum Length: 40
getReferenceId(): ?string setReferenceId(?string referenceId): void
source ?OrderSource Optional Represents the origination details of an order. getSource(): ?OrderSource setSource(?OrderSource source): void
customerId ?string Optional The ID of the customer associated with the order.

You should specify a customer_id on the order (or the payment) to ensure that transactions
are reliably linked to customers. Omitting this field might result in the creation of new
instant profiles.
Constraints: Maximum Length: 191
getCustomerId(): ?string setCustomerId(?string customerId): void
lineItems ?(OrderLineItem[]) Optional The line items included in the order. getLineItems(): ?array setLineItems(?array lineItems): void
taxes ?(OrderLineItemTax[]) Optional 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.
getTaxes(): ?array setTaxes(?array taxes): void
discounts ?(OrderLineItemDiscount[]) Optional 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.
getDiscounts(): ?array setDiscounts(?array discounts): void
serviceCharges ?(OrderServiceCharge[]) Optional A list of service charges applied to the order. getServiceCharges(): ?array setServiceCharges(?array serviceCharges): void
fulfillments ?(Fulfillment[]) Optional Details about order fulfillment.

Orders can only be created with at most one fulfillment. However, orders returned
by the API might contain multiple fulfillments.
getFulfillments(): ?array setFulfillments(?array fulfillments): void
returns ?(OrderReturn[]) Optional 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.
getReturns(): ?array setReturns(?array returns): void
returnAmounts ?OrderMoneyAmounts Optional A collection of various money amounts. getReturnAmounts(): ?OrderMoneyAmounts setReturnAmounts(?OrderMoneyAmounts returnAmounts): void
netAmounts ?OrderMoneyAmounts Optional A collection of various money amounts. getNetAmounts(): ?OrderMoneyAmounts setNetAmounts(?OrderMoneyAmounts netAmounts): void
roundingAdjustment ?OrderRoundingAdjustment Optional 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.
getRoundingAdjustment(): ?OrderRoundingAdjustment setRoundingAdjustment(?OrderRoundingAdjustment roundingAdjustment): void
tenders ?(Tender[]) Optional The tenders that were used to pay for the order. getTenders(): ?array setTenders(?array tenders): void
refunds ?(Refund[]) Optional The refunds that are part of this order. getRefunds(): ?array setRefunds(?array refunds): void
metadata ?array<string,string> Optional 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.
getMetadata(): ?array setMetadata(?array metadata): void
createdAt ?string Optional The timestamp for when the order was created, at server side, in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z"). getCreatedAt(): ?string setCreatedAt(?string createdAt): void
updatedAt ?string Optional The timestamp for when the order was last updated, at server side, in RFC 3339 format (for example, "2016-09-04T23:59:33.123Z"). getUpdatedAt(): ?string setUpdatedAt(?string updatedAt): void
closedAt ?string Optional The timestamp for when the order reached a terminal state, in RFC 3339 format (for example "2016-09-04T23:59:33.123Z"). getClosedAt(): ?string setClosedAt(?string closedAt): void
state ?string(OrderState) Optional The state of the order. getState(): ?string setState(?string state): void
version ?int Optional 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.
getVersion(): ?int setVersion(?int version): void
totalMoney ?Money Optional 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
for more information.
getTotalMoney(): ?Money setTotalMoney(?Money totalMoney): void
totalTaxMoney ?Money Optional 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
for more information.
getTotalTaxMoney(): ?Money setTotalTaxMoney(?Money totalTaxMoney): void
totalDiscountMoney ?Money Optional 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
for more information.
getTotalDiscountMoney(): ?Money setTotalDiscountMoney(?Money totalDiscountMoney): void
totalTipMoney ?Money Optional 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
for more information.
getTotalTipMoney(): ?Money setTotalTipMoney(?Money totalTipMoney): void
totalServiceChargeMoney ?Money Optional 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
for more information.
getTotalServiceChargeMoney(): ?Money setTotalServiceChargeMoney(?Money totalServiceChargeMoney): void
ticketName ?string Optional A short-term identifier for the order (such as a customer first name,
table number, or auto-generated order number that resets daily).
Constraints: Maximum Length: 30
getTicketName(): ?string setTicketName(?string ticketName): void
pricingOptions ?OrderPricingOptions Optional 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.
getPricingOptions(): ?OrderPricingOptions setPricingOptions(?OrderPricingOptions pricingOptions): void
rewards ?(OrderReward[]) Optional A set-like list of Rewards that have been added to the Order. getRewards(): ?array setRewards(?array rewards): void
netAmountDueMoney ?Money Optional 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
for more information.
getNetAmountDueMoney(): ?Money setNetAmountDueMoney(?Money netAmountDueMoney): void

Example (as JSON)

{
  "id": "id2",
  "location_id": "location_id6",
  "reference_id": "reference_id0",
  "source": {
    "name": "name4"
  },
  "customer_id": "customer_id0",
  "line_items": [
    {
      "uid": "uid8",
      "name": "name8",
      "quantity": "quantity4",
      "quantity_unit": {
        "measurement_unit": {
          "custom_unit": {
            "name": "name2",
            "abbreviation": "abbreviation4"
          },
          "area_unit": "IMPERIAL_ACRE",
          "length_unit": "IMPERIAL_INCH",
          "volume_unit": "METRIC_LITER",
          "weight_unit": "IMPERIAL_WEIGHT_OUNCE"
        },
        "precision": 54,
        "catalog_object_id": "catalog_object_id0",
        "catalog_version": 12
      },
      "note": "note4",
      "catalog_object_id": "catalog_object_id2"
    }
  ]
}