Couple of questions on order management

Hello,

I’m building integration between our system and Veeqo via API and struggling to figure out a couple of things:

  1. When I create the order, the status I send is always ignored. No matter what I send, the order status is awaiting_payment. Why is that?
  2. When I set payment details, order status is changed to awaiting_stock. Now, I assume the system forces me to allocate stock, but I do not need to manage stock through the system. Even if I try to create an allocation, it does not allow me to say that at least one location must exist (I have 2).
  3. how do you change order status via API to awaiting_fulfillment?
  4. how do I put an order on hold (set on_hold status)?
  5. how do I cancel an order (set cancelled status)?
  6. Is there a way to set a webhook notification when an order is shipped, for example?

Thank you

It’s been a while since I’ve worked with the Veeqo API but here’s what I recall:

  1. When I create the order, the status I send is always ignored. No matter what I send, the order status is awaiting_payment. Why is that?

    Looking at the reference documentation, the API does not allow you to directly set or update the status of an order. However, as you move through the process of fulfillment by executing certain actions (allocating stock to an order, creating shipments etc.) the status of the order will change accordingly.

  2. When I set payment details, order status is changed to awaiting_stock. Now, I assume the system forces me to allocate stock, but I do not need to manage stock through the system. Even if I try to create an allocation, it does not allow me to say that at least one location must exist (I have 2).

    Locations are represented as warehouses and you should create them before you create orders and allocate stock. So in your case you’d create a warehouse for each location and then reference the warehouse id when allocating stock.

  3. How do you change order status via API to awaiting_fulfillment?

    IIRC, once you create a shipment and stock is available to be allocated the order should automatically transition to ‘awaiting_fulfillment’ status.

  4. How do I put an order on hold (set on_hold status)?

    I don’t believe you can, at least not with the public API.

  5. How do I cancel an order (set cancelled status)?

    There is an undocumented endpoint that allows for this. But since its not officially supported you may not want to rely on it.

  6. Is there a way to set a webhook notification when an order is shipped, for example?

    Veeqo doesn’t currently offer any webhooks. Hopefully, they’ll consider implementing a few now that they are a subsidiary of Amazon. In the absence of webhooks you have to get creative with setting up automated workflows. One strategy is to track the status of your orders and shipments by polling the API at regular intervals. Another is to leverage Veeqo’s email notifications and create templates with content (tracking pixels, etc.) that can trigger automations.

Hi DimuDesigns,

Thanks for the answers.

I figured out how to move orders through the process by creating payments, allocations, and shipments. It’s not the best, but it seems to be working.
Cancel seems to be working as well.

Trying to utilize emails instead of webhooks is the next on my list.