Skip to main content

Order communication with actions

Caution

Be aware that this feature is in beta. This means it might at any time be changed, withdrawn from your account, or become part of a paid add-on module. You might experience interruptions of this service, degradation of user experience or faulty behavior even in critical processes such as automations and send outs. Voyado welcomes feedback on beta features, and encourages you to try them, but you should not build business critical logic on beta features in Engage. Only when a feature reaches its full release and is no longer tagged as beta can you trust it to function reliably with no further breaking changes.

In the context of orders, an action is a message you send to Engage to tell it to do something based on the data in an individual order you've already saved in the system. In practice, it allows you to be sure that an order is ready and in the state you want before you tell Engage to use the data in it, for example to trigger an automation to send an email.

The endpoint used is:

POST /api/v3/orders/{orderId}/action

You'll use the orderId of the order in question. The payload you'll send looks like this:

{
  "action": "ConfirmOrder",
  "versionTag": "IXUA3ril8XnZJKUMSfP7dg==",
  "language": "en-US",
  "data": {
    "custom": "data",
    "list": [
      "data1",
      "data2"
    ]
  }
}

action: You determine what is in this string.

versionTag: Sent back when Engage has successfully processed the latest update to your order.

data: Whatever you need the automation trigger to have access to.

Response codes

If the action has been accepted, you'll get a HTTP 202 Request has been accepted response. Otherwise, one of these:

  • 400: Bad request

  • 404: Order not found or VersionTag did not match the order

  • 422: Order has no contact

Data flow

Here you can see the data flow for orders and order communication:

orders-communication-pattern.svg

Order actions

These are the individual order actions a merchant can use to trigger events in Engage:

ConfirmOrder

Use: When the order is confirmed

The merchant verifies and confirms that the order is legit and confirms that payment has been received. This assures the customer that their transaction was successful.

ConfirmShipment

Use: When the order is shipped

The order has been handed over to a delivery service and is on its way to the customer. The customer will usually receive a tracking number to get updates on their package.

ConfirmDelivery

Use: When order has been delivered

The package has been successfully delivered to the customer’s address. The merchant might want to alert the customer about the delivery.

ConfirmCancellation

Use: When order has been cancelled

The order has been canceled either by the customer or the merchant due to some reason (such as out of stock or payment issues).

ConfirmCompletion

Use: When order has been completed

Order has been shipped/picked up, receipt is confirmed. Or the client has paid for a digital product, and their purchase is available for download.

Custom

Use: When a custom order action is requested