Skip to main content
POST
/
placeOrder
Place Order API
curl --request POST \
  --url https://stagingstores.xoxoday.com/chef/v1/oauth/api/placeOrder \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "query": "plumProAPI.mutation.placeOrder",
  "tag": "plumProAPI",
  "variables": {
    "data": {
      "productId": 15365,
      "quantity": 1,
      "denomination": 50,
      "email": "your.email@example.com",
      "contact": "+1-4705000000",
      "tag": "Rewarding",
      "poNumber": "PO12662",
      "notifyReceiverEmail": 1,
      "notifyAdminEmail": 0,
      "userMeta": {
        "loyaltyMemberId": "324523423"
      }
    }
  }
}
'
{
  "data": {
    "placeOrder": {
      "status": 1,
      "data": {
        "orderId": 98765432,
        "orderTotal": 50,
        "currencyCode": "USD",
        "amountCharged": 50,
        "orderStatus": "complete",
        "deliveryStatus": "delivered",
        "quantity": 1,
        "voucherDetails": [
          {
            "orderId": 98765432,
            "productId": 15365,
            "productName": "Emirates Skywards Miles",
            "currencyCode": "USD",
            "productStatus": "delivered",
            "denomination": 50
          }
        ]
      }
    }
  }
}

Documentation Index

Fetch the complete documentation index at: https://help-plum.xoxoday.com/llms.txt

Use this file to discover all available pages before exploring further.

A unique reference ID needs to be sent for every unique order in the “poNumber” parameter We strongly recommend storing the request and response of every “PlaceOrderAPI” call

Implementation Notes

  1. To avoid facing an error while placing an order, please pass the valid productID and denomination
  2. The maximum order quantity allowed for the products is 1 as mentioned in the “orderQuantityLimit” parameter in the GetVouchersAPI
  3. Should you wish to notify the recipient via email, please pass “1” in the “notifyReceiverEmail” parameter
  4. We recommend you store the “poNumber” that you pass in the request and the “orderID” you receive in the response
  5. Should you get a 5xx error from the PlaceOrderAPI, please call GetOrderDetails and confirm if an order exists using the poNumber. If there’s no order against the poNumber, you can go ahead and place another order
Learn how to manage webhooks to receive order status updates for delayed product types.

Authorizations

Authorization
string
header
required

Authorization: Bearer <access_token>

Body

application/json
query
enum<string>
default:plumProAPI.mutation.placeOrder
required
Available options:
plumProAPI.mutation.placeOrder
tag
enum<string>
default:plumProAPI
required
Available options:
plumProAPI
variables
object
required

Response

Airmiles order placed successfully.

data
object