While the V2 API is fairly extensive, there are a few actions that aren't normally available to Customer users.
In the Sandbox Environment, you have access to a few additional endpoints to help you test your integration end to end.
Ship an Order
PUT /api/v2/simulate/orders/{order-id}/processing?status=shipped
This will simulate the order Packing and Shipping, as well as assign a tracking number and ship cost. It will also fire off any relevant Notifications that you have subscribed to, particularly order.shipped and order.status_changed.
If you'd like to simulate key moments in the order's lifecycle inside the facility, you can replace the status param with batched or packed, or leave the status param off to move the order into Processing.
Receive a Ship Notice
PUT /api/v2/simulate/shipnotices/{shipnotice-id}/processing
This will simulate the Receiving and Finalizing a Ship Notice, and will update item quantities and shelf locations. It will also fire off any relevant Notifications that you have subscribed to (particularly item.inventory_changed).
Testing Flow, End to End
A good testing flow would look something like:
Create one or more items: POST /api/v2/items?sku=xxx&title=test-item
Create one or more orders, containing those items: POST /api/v2/orders?email=some@email.com&order_items=[{item_id: {item-id}, quantity: 1}]&{address-fields}
Create a Ship Notice containing those items: POST /api/v2/shipnotices?shipnotice_items=[{item_id: {item-id}, quantity: 1}]&sender=you&eta=2020-01-01
You can create demo Orders and Ship Notices with the endpoints below:
POST /api/v2/simulate/orders/create
POST /api/v2/simulate/shipnotices/create
Shopify notifications
By default, we don't send fulfillment notifications or inventory updates to Shopify, in case you have your production Shop hooked up. To turn on sync, you can use this setting found under the Shops tab. From that point, simulated account activity will sync to your Shop.