01449 490 590 [email protected]

Automating Shipping in Veeqo

by | BNS Excerpts

In this article, I will outline what you’ll need to fully automate Shipping in Veeqo. We will be making use of Veeqo’s well documented API to integrate a shipping carrier or courier – provided that they also have a public API we can use. We will be using Integromat to make Veeqo and a Shipping Carrier talk with each other.

Currently, Veeqo supports 24(just 23 actually) carriers and they’re directly integrated into the platform. Using any of the below carriers, you can order a shipment without leaving the Veeqo platform and Veeqo will take care of sending out requests to the Shipping Carrier you use (so long as you’ve set them up beforehand). Any other carriers not mentioned below are still usable with Veeqo and this is covered by the third option “3. Other” shown below.

integromat

(The number will be important later as they’re the ids required to send API requests to Veeqo)

Veeqo supported Shipping Carriers

1: Royal Mail
2: FedEx
3: Other
4: DPD
5: UPS
6: CityLink
7: USPS
8: Interlink Express
9: DHL
10: MyHermes
11: Australia Post

12: Parcelforce
13: TNT
14: Yodel
15: APC
16: DX
17: UK Mail
18: Israel Post
19: Canada Post
23: Hermes World
24: DHL DE (Deutsche Post)

Using “Other” shipping carriers means that you will have to export the data out of Veeqo and import it into your shipping carrier’s system. This means you will have to work with CSVs (again), tidy up the data to conform with what’s expected, and fill out the data manually for missing information. Depending on the volume of orders and shipments you process each day, this could mean hours of mentally intensive, unrewarding, and exhausting work.

What if there was a way to make Veeqo and any Shipping Carrier talk to each other?

There is a way!

We’re already provided a way on the Veeqo side of things to manage orders, shipments, tags, etc outside of their User Interface thru their API. What you need to find out is if your preferred Shipping company has a public facing API – preferably a REST API.

What you’ll need
  1. Veeqo API Key
  2. Integromat free account (register here)
  3. Your Shipping Carrier Documentation & Relevant API keys/secrets
How it works
  1. Create a custom tag in Veeqo (example: “Ship this order” tag)
  2. Apply the “Ship this order” tag to Veeqo orders – make sure the orders are in “Ready to Ship” stage/status
  3. From Integromat, do a GET request using HTTP modules for orders in “Ready to Ship” that has the tag “Ship this”
  4. Do a POST request to your preferred Shipping carrier’s API to create a shipping order with them
  5. Do a POST request to Veeqo Shipments API to ‘move’ the order into “Shipped” status
  6. (Optional) leave notes or send custom emails
Getting your Veeqo API Key

Log into your Veeqo account and navigate to Settings > Users. Select a user by clicking the “edit” pencil button. Scroll down and find the API Key section. Take note of the API key and save it somewhere safe. DON’T SHARE IT WITH ANYBODY

Veeqo API Documentation here: https://developer.veeqo.com/docs

Integromat Setup (Free)

Create an account here: https://www.integromat.com/?pc=autoxyz

Getting your Shipping Carrier’s API keys

Most of the modern shipping carriers will have a “public” API that any authorized user can query. To get “authorized”, you will need an API key. Depending on the shipping carrier, you might already have an API key included in your account; you may search the settings page for it. If not, you might have to talk to a service representative or your account manager.

Once you’ve got your API keys, head over to their API documentation for information about what kind of format their APIs expect.

Sample API docs from Parcel2Go: https://www.parcel2go.com/api/docs/

Writing the automation in Integromat

To better understand how automation works in integromat, we need to keep two words in mind: Trigger and Action(s). On a particular workflow (called “scenario” in Integromat), there would be exactly 1 trigger which will be followed by action(s) when the trigger condition is satisfied.

For our case, our trigger would be scheduled to run every day before 12noon. So the only condition to satisfy is if it is 12:00 pm – then the whole automation will run.

integromat

As you can see above, we’ll only need a minimum of 5 modules to make this automation work.

Tag orders > Create Shipping Orders for them

module1-integromat
First Module: GET Veeqo Orders

The first module ‘GET Veeqo Orders’ will return JSON data.

Second Module: JSON (Parse JSON)

The second module will divide the data into bundles; each bundle containing 1 order.

Third Module: POST Shipping Order to Carrier

3rd module: for each bundle created by the parser from module 2, we POST (request) for a Shipping order to be created. Depending on the authentication method or the format their API expects, more modules might be needed to Transform the data to something that their API understands.

The Veeqo GET Order from the first module also already includes the information about the product line items. Information about the Product Name, weight, volume, and SKUs are already included in the Response object returned. Most of the time, It will only be a matter of plugging them into the request to properly send the products with the Shipping Order request.

4thmodule-integromat
Fourth Module: Create Veeqo Shipment

Send a POST request to the Veeqo Shipment API to move the orders from awaiting_fulfillment or “Ready to Ship” into “Shipped”. Equivalent to adding a Tracking number on the UI.

Fifth Module: Remove “Ship this order” tag

We’ll need to remove the tag so that it doesn’t get triggered again on the next run. Well, technically, it won’t be fetched on the next run because the order would have moved out of “Ready to Ship” which we queried on module #1.

Note:
To find the id of your tags, you will have to call the Veeqo Tags API. A simple GET request to https://api.veeqo.com/tags with no parameters and no payload will return a list of all tags with their IDs and names. To do this, use an HTTP module in integromat and send a GET request to https://api.veeqo.com/tags. Make sure to tick the checkbox for “Parse response” to get data in a prettier format.

Conclusion

By applying tags to orders, we “marked” orders for Shipping Order creation. Automations in Integromat searches for those orders and send the Shipping Order requests for each one. Finally, after the Shipping Orders are sent, the Orders in Veeqo are moved from “Ready to Ship” into “Shipped” by inserting a Tracking Number into the Order via Veeqo Shipment API.

For the person managing the shipments, all that needs to be done will be to apply a tag before a “deadline” or schedule that you set your automations to run. For businesses that process hundreds of orders a day, this could mean man-hours savings of a couple of hours each day. For smaller business that process less, this means that an employee will never have to deal with spreadsheets and the probability of human errors that come with it. No more copy-pasting; no more working with CSVs; no more errors that you will have to fix down the line, taking up more of your time.

Let the machines talk to each other so you can focus on the things that add value to your business

Stay tune for Part 2! Shipment Tracking at-a-glance with Veeqo Tags

SECTIONS
  1. Getting your Veeqo API Key
    • Navigate to Settings > Users
    • Select a User
    • Copy API Key
  2. Use Veeqo API Docs for reference
  3. Automation Triggers/Action

4. Write API requests to create orders to your preferred shipping carrier (Integromat)
5. Marking orders as “Shipped” in Veeqo
6. Creating Notes/Tags to provide more info

Adrian Peck

Adrian Peck

Owner, Entrepreneur & Author

Adrian Peck - Founder of Digital Teams and Author of "How To Fall Back In Love With Your Business; The Entrepreneur's Guide To Rediscovering Your Mojo And Enjoying Every Day By Living Your Dream"

Adrian’s first book, How To Fall Back In Love With Your Business was published in 2019 has been an Amazon Best Seller. It has inspired many more Business Owners to fall back in love with their business.

Adrian's greatest passion and life mission...

"To enable ambitious Entrepreneurs to build successful businesses and together we change lives"

Digital Teams are experts in delivering digital solutions that will revitalise your business. Our digital applications include bespoke customized dashboards, app modernisation and even attendance management solutions. Contact us today to begin your digital revolution.

RECENT BLOG

How to Integrate Digital Systems on the Go

The digital age has made it possible for people to work from anywhere. They can take their laptop and work from the comfort of their home or office, while they are on the go, or even while they are travelling. This is a great way to be productive and have more time...

read more

How To Future-proof Your IT Landscape

Future-proofing your IT landscape for the future of your business is important. Technology changes quickly, and if you don't stay on top of it, you will be left behind.    Know what you want to accomplish A Future-Proof Your IT Landscape for Your High-Growth Business...

read more

Office

Stowmarket Road
Needham Market
Suffolk
IP6 8DX

Contact Us

  • 01449 480 580