POST
/
baskets

A basket can be in one of the following states:

StateDescription
checkoutRefers to any point before the order is placed. Any time the user updates their basket or rewards, Thanx expects to receive a request to check if discount information should be updated.
placedRefers to when an order has been submitted to the system and a user can no longer modify their order through the website. If a reward is specified, the reward will be locked. If a points product is specified, the user’s points balance will be deducted in exchange for specified reward and the reward will be locked.
billedRefers to when the order has been trasmitted to the POS and the user’s credit card has been charged. Any specified reward will be marked as used. Loyalty progress or points will be accrued upon receipt of this event.
completedRefers to when the order has been made and transferred to the customer.
voidedRefers to an order that got canceled after entering the placed state and before entering the billed state. Any locked reward will be re-delivered to the user. Points were exchanged for a points product will not be redelivered, but the points product reward will be available for future redemption.
refundedRefers to an order being refunded / canceled any time after it enters the billed state. Any locked reward will be re-delivered to the user. Points were exchanged for a points product will not be redelivered, but the points product reward will be available for future redemption.

Only a single reward or points product can be redeemed per order.

HTTP Request

Parameters

id
string

Basket unique ID

Basket ID is not required when submitting a basket with ‘checkout’ state.

state
enum

Basket state (checkout, placed, billed, completed, voided, refunded)

order_timestamp
string

When the order is wanted in (ISO 8601 format). If this timestamp is not provided, Thanx assumes the order is wanted ASAP. Providing this timestamp allows Thanx to determine if a reward will be valid in the future (for example, for a weekend only promotion where the user orders in advance)

location_uid
string

The location identifier; this is what your system uses to identify a location. Providing this information allows Thanx to apply location restricted rewards.

rewards
array(string)

Reward IDs to apply to the basket. If you are integrating with reward codes, provide the reward code here instead.

Currently only a single reward or points product can be applied to a basket. The request will 400 if multiple rewards or points products are specified in the request.

points_products
array(string)

Points Product IDs to apply to the basket.

Currently only a single reward or points product can be applied to a basket. The request will 400 if multiple rewards or points products are specified in the request.

payments
array(hash)

Array of payment methods

items
array(hash)

Array of items

subtotal
decimal

The subtotal of the basket in USD (before taxes & tips)

redemption_venue
string

Currently either instore or online, defaults to online. This is used to adjust which configured product IDs are returned in the applicable reward and points product entities.

Response

id
string

Response ID

state
enum

Basket state (checkout, placed, billed, completed, voided, refunded)

discount
string

Discount to apply