Create an Order

This endpoint creates a representation of an order in Extend’s system. Orders should represent the complete order as processed through a merchant’s store, including line details that enable Extend to determine how to process each line.

Orders will require at least one order line item to be created. Extend will automatically categorize each order line item based on the information that is sent with it. The four line item types are:

  • Contract
    • Determined by receiving a Product and a Plan ID
    • Will trigger creation of a product protection contract
  • Lead
    • Determined by receiving a warrantable Product without a Plan ID
    • Will trigger creation of a lead token
  • Shipping Protection Contract
    • Determined by receiving Shipment Info and a Quote ID
    • Will trigger creation of a shipping protection contract
  • Non-Warrantable
    • determined by receiving a non-warrantable product

Orders created after items have been received by the customer and sent with a fulfilled status will immediately trigger contract creation. Orders can also be created at the time of purchase with line items sent in an unfulfilled status and subsequently updated to fulfill line items triggering contract creation once the customers receive the product.

Important

Order Line Items should include all items purchased on the order regardless of contract status.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
string
string
enum
required
lineItems
array
required
length ≤ 500

Order Line Items should include all items purchased on the order regardless of contract status. Lines will automatically be categorize based on the properties included in the request.

  • Contract
    • include Product and Plan objects
    • triggers creation of a product protection contract
  • Lead
    • include Product object with a warrantable product and omit Plan object
    • triggers creation of a lead token
  • Shipping Protection Contract
    • include Shipment Info object and Quote ID property
    • triggers creation of a shipping protection contract
  • Non-Warrantable
    • Include Product object with a non-warrantable product
lineItems*
string
required

Unique identifier for merchant’s store in Extend’s system.

string
required

Unique identifier provided by merchant for transaction associated to Extend order.

analytics
object

Contains additional information about an order that helps with reporting and analytics.

discounts
array of objects

Array of discounts applied to the order

discounts
integer
0 to 9007199254740991

Total discount amount for the order.

Amount should be expressed in terms of the smallest currency unit.

  • $19.99 would be 1999
  • 1.234,56 € would be 123456
  • £ 1,999.99 would be 199999

string

This field is used for Jewelry orders where merchants need to provide additional reporting and analytics context for the order.

boolean

Denotes whether or not the order was created through the historical orders endpoint.

boolean

Flag that tracks whether the transaction was created as a test or not. NOTE - This is defaulted to false and should be used only under special circumstances.

string

Unique identifier for the customer in the merchant’s system.

string

Purchase order number in merchant's system.

integer
0 to 9007199254740991

Total purchase cost of all products (and their quantities) included on the order, not including shipping, tax, or discount amounts.

Amount should be expressed in terms of the smallest currency unit.

  • $19.99 would be 1999
  • 1.234,56 € would be 123456
  • £ 1,999.99 would be 199999

resellerMerchant
object

Data related to reseller merchants. This can be used by merchants when different store information from the merchant’s Extend store must be displayed to customers.

string

Unique identifier for the return policy associated with this order.

integer
0 to 9007199254740991

The total shipping cost for the order.

Amount should be expressed in terms of the smallest currency unit.

  • $19.99 would be 1999
  • 1.234,56 € would be 123456
  • £ 1,999.99 would be 199999

integer
0 to 9007199254740991

Total shipping tax amount for the order.

Amount should be expressed in terms of the smallest currency unit.

  • $19.99 would be 1999
  • 1.234,56 € would be 123456
  • £ 1,999.99 would be 199999

string
enum

The state of the order in Extend DB (needed for auditing).

Note - When line items are fulfilled, the product protection contract is created. By default, line items will be set to a fulfilled status if the field or no field value is provided in the request.

  • pending - Order has been created with a wait period value. This is typically used to create an order that requires a certain time period to pass before it is considered a valid order.
  • open - Order has been created with at least one order line item that has not been fulfilled
  • voided - Order was voided due to circumstances that indicate the order was not valid when it was first created. This can be due to a fraudulent order.
  • closed - Order was successfully processed with all order line items fulfilled.
  • canceled - Order was canceled or refunded at the request of a customer or the merchant.

Allowed:
string

Merchant's store name in Extend.

integer
0 to 9007199254740991

The total tax cost for the order.

Amount should be expressed in terms of the smallest currency unit.

  • $19.99 would be 1999
  • 1.234,56 € would be 123456
  • £ 1,999.99 would be 199999

integer
≤ 9007199254740991

Total amount paid for entire order.

Amount should be expressed in terms of the smallest currency unit.

  • $19.99 would be 1999
  • 1.234,56 € would be 123456
  • £ 1,999.99 would be 199999

integer
≤ 9007199254740991

Transaction date when customer placed order (13 digit timestamp).

number
≤ 9007199254740991

Number of days that should be applied before a contract is created from an order. This is typically used to confirm a payment was successfully captured or to wait a period of time to ensure a transaction isn’t fraudulent. NOTE - This field accepts the number of days and does not have to be a whole number (e.g. half a day can be sent as 0.5).

customer
object
required

The customer who made a purchase.

saleOrigin
object

Critical sales data indicated where the order was processed (e.g. web, store) that allows Extend to optimize warranty attach rates and improve program performance.

Headers
string
required

Used to indicate the original media type of the resource (prior to any content encoding applied for sending).

string
required

An Extend private API key used to authenticate requests.

uuid
required

Randomly generated string (recommended v4 UUID) to ensure idempotent requests. See Idempotent Requests.

string
required

Indicates which content types, expressed as MIME types, the client is able to understand, as well as identifies which API version to use in the request.

Responses

Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json