---
title: "Create an Async Order under a specific Account."
method: POST
path: "/asyncOrders"
tags: ["7. Async Orders"]
---

# Create an Async Order under a specific Account.

`POST /asyncOrders`

## Request body

- CreateAsyncOrderCriteria
  - `externalRefID` string, required — Required. Idempotent field that can be used for client-side order cross reference and prevent accidental order duplication. Will be returned in order response.
  - `customerIdentifier` string, required — specify the customer associated with the order. Must be the customer the accountIdentifier is associated with.
  - `accountIdentifier` string, required — specify the account this order will be deducted from
  - `sender` SenderInfoCriteria
    - `firstName` string — always optional (100 character max)
    - `lastName` string — always optional (100 character max)
    - `email` string — always optional
  - `campaign` string — Optional. Campaign that may be used to administratively categorize a specific order. Must be between 0 and 1024 characters in length.
  - `purchaseOrderNumber` string — The Purchase Order Number associated with this order.
  - `notes` string — Optional order notes. Must be between 0 and 1024 characters in length.
  - `lineItems` LineItem[], required — Line Items of the bulk order a required field
    - `externalRefLineItemID` string, required — Required. Idempotent field that can be used for client-side order line item cross reference and used to map failed and success line items on client side.
    - `quantity` integer — The number of rewards to send to the recipient
    - `bulkShipping` ShippingCriteria
      - `companyName` string — The name of the company where the shipment is being delivered.
      - `contactFirstName` string, required — The first name of the bulk shipment contact person.
      - `contactLastName` string, required — The last name of the bulk shipment contact person.
      - `contactEmail` string — The email address of the person receiving the shipment
      - `contactMobileNumber` string — The phone number of the person receiving the shipment
      - `address` ShippingAddressCriteria, required
        - `streetLine1` string, required — 35 characters max, required, not blank, Digits 0-9, alpha (a-z, A-Z), space, period, comma, hyphen, forward slash (/), ampersand, percent, pound (#), at (@), and apostrophe.
        - `streetLine2` string — 35 characters max, Optional, Not blank, Digits 0-9, alpha (a-z, A-Z), space, period, comma, hyphen, forward slash (/), ampersand, percent, pound (#), at (@), and apostrophe.
        - `city` string, required — 35 characters max, Required, not blank, Digits 0-9, alpha (a-z, A-Z), space, period, hyphen, ampersand, and apostrophe.
        - `stateOrProvince` string, required — 36 characters max, Address region must be a valid 2-character uppercase abbreviation for a U.S. state, territory, or military base; a Canadian province; or contain an international region less than 36 characters.
        - `postalCode` string, required — Allows 5 characters, not blank, Digits 0-9 and alpha (a-z, A-Z). For US addresses, this must include only the five-digit US ZIP Code.
        - `country` string, required — 2 characters, Enter the ISO 3166-1 alpha-2 country code
    - `recipient` RecipientInfoCriteria, required
      - `firstName` string — Required if deliveryMethod is EMAIL, PHONE, or ADDRESS. May be required for some UTIDs. Digital rewards: allows 100 characters, cannot use < or > or / in the name. Physical rewards: allows 25 characters max, Digits 0-9, alpha (a-z, A-Z), space period, comma, ampersand, and hyphen.
      - `lastName` string — Required if deliveryMethod is ADDRESS, otherwise optional. May be required for some UTIDs. Digital rewards: allows 100 characters, cannot use < or > or / in the name. Physical rewards: allows 25 characters max, Digits 0-9, alpha (a-z, A-Z), space period, comma, ampersand, and hyphen.
      - `email` string — Required if deliveryMethod is EMAIL. May be required for some UTIDs. It is useful to include when deliveryMethod is PHONE to easily switch between email and phone delivery
      - `mobileNumber` string — Required if deliveryMethod is PHONE. May be required for some UTIDs. Format: +CCCPPPPPPPPPPPP (where C is the country code, 1-3 digits, and P is the phone number, up to 12 digits). Follows ITU E.164, allowing (+) and up to 15 digits for the combined country code and phone number.
      - `address` AddressCriteria
        - `companyName` string — Optional, Typically used when shipping to a corporate address.
        - `streetLine1` string — Required if deliveryMethod is ADDRESS, not applicable for digital rewards. Allows 35 characters max, not blank, Digits 0-9, alpha (a-z, A-Z), space, period, comma, hyphen, forward slash (/), ampersand, percent, pound (#), at (@), and apostrophe.
        - `streetLine2` string — Optional if deliveryMethod is ADDRESS, not applicable for digital rewards. Allows 35 characters max, not blank, Digits 0-9, alpha (a-z, A-Z), space, period, comma, hyphen, forward slash (/), ampersand, percent, pound (#), at (@), and apostrophe.
        - `city` string — Required if deliveryMethod is ADDRESS, not applicable for digital rewards. Allows 30 characters, not blank, Digits 0-9, alpha (a-z, A-Z), space, period, hyphen, ampersand, and apostrophe.
        - `stateOrProvince` string — Required if deliveryMethod is ADDRESS, not applicable for digital rewards. Address region must be a valid 2-character uppercase abbreviation for a U.S. state, territory, or military base; a Canadian province; or contain an international region less than 36 characters.
        - `postalCode` string — Required if deliveryMethod is ADDRESS, not applicable for digital rewards. Allows 5 characters, not blank, Digits 0-9 and alpha (a-z, A-Z). For US addresses this must include the five digit US ZIP Code only.
        - `country` string — Required if deliveryMethod is ADDRESS, not applicable for digital rewards.
    - `utid` string, required — the unique identifier for the reward you are sending as provided in the Get Catalog call
    - `amount` number, required — specify the face value of of the reward. Always required, including for fixed value items.
    - `deliveryMethod` 'NONE' | 'EMAIL' | 'PHONE' | 'ADDRESS' | 'EMBEDDED' | 'EMBEDDED_COMPONENT' | 'WHATSAPP', required — Specify delivery method for the line item
    - `deliveryDate` string — Optional. Specify the date to deliver the reward to the recipient. It must be at least 7 days in the future. If not specified, the reward will be immediately send.
    - `etid` string — Optional. Used with deliveryMethod of EMAIL or PHONE. The unique identifier for the electronic template you would like to use. If not specified, the system will use the default etid.
    - `ptid` string — Only required for Printed Reward Links, the unique identifier for the Printed Reward Link Template provided in the Tango Portal on the Printed Template page.
    - `expirationDate` string — Optional for Promo Links, the exact calendar date the Promo Link will expire.
    - `emailSubject` string — Optional. If not specified, a default email subject will be used for the specified reward.
    - `message` string — optional gift message
    - `lineItemNote` string — Optional line item notes (up to 150 characters)
    - `shippingMethod` 'upsground' | 'upsgroundsignature' | 'ups2ndday' | 'ups2nddaysignature' | 'upsnextday' | 'upsnextdaysignature' | 'uspspriority' | 'uspsprioritysig' | 'usps1stclass' — Enumeration for the selected shipping method. Required for deliveryMethod of ADDRESS or BULKSHIPMENT.

## Response `200`

OK

- AsyncOrderEntity
  - `externalRefID` string — Required. Idempotent field that can be used for client-side order cross reference and prevent accidental order duplication. Will be returned in order response.
  - `status` string — This status reflects about cart status or validation status based on the processing
  - `totalLineItems` integer — Total number of line items submitted in the request
  - `createdAt` string, date-time
  - `failedLineItems` LineItemError[] — Failed line items list (business validations)
    - `lineItemId` string
    - `externalRefLineItemID` string
    - `utid` string
    - `errors` ValidationErrorDto[]
      - `field` string
      - `errorCodeValue` integer
      - `errorCodeName` string
      - `message` string
  - `duplicateLineItemRefIds` object — If any duplicate duplicateLineItemRefIds exist in the request

## Other responses

- `202` — Accepted
- `400` — Bad Request
- `401` — Unauthorized
- `402` — Insufficient Funds
- `403` — Forbidden
- `422` — Unprocessable Entity
- `429` — Exceeded the allowable TPS rate limit
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/tangocard/apis/tango-api.md) · [All operations](https://skmtc.net/tangocard/apis/tango-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tangocard/tango-api/versions/324ad9683921/schema)
