Now, same-day, tomorrow, whenever, Trexity delivers.
As a Trexity merchant with a Shopify store, you can have deliveries automatically created from incoming orders by using the Trexity Shopify App. To get started, you'll first install the Trexity Shopify App, then follow our getting started guide.
How does the integration work?
- A customer places an order in your Shopify storefront and chooses Trexity as a delivery option at checkout.
- When you're ready to deliver, mark the order or part of the order as fulfilled in Shopify.
- A draft delivery is automatically created in your Trexity portal with the details pulled from Shopify. You can also choose to have the delivery automatically post to Trexity drivers for pickup asap.
- If the Shopify order has changes made to the customer details on the Shopify order (e.g. customer name, shipping address, tags) AND the delivery is still in draft (i.e. not posted or accepted by a driver), then the changes will be reflected in the delivery.
- If a Shopify fulfillment is cancelled, then the delivery will be automatically cancelled if a driver has not already picked up the package.
How does Shopify work?
Shopify is similar to other e-commerce platforms in that merchants create an online store to sell their products online. The following overview describes the dominant concepts and how they work together.
Shopify Orders - An order is created when a customer makes a purchase from the merchant's online store. Each order can have one or more line items. A line item represents a product that is purchased. Each product has their own line item with a quantity like "Dozen donuts X 2".
Shopify Products - A product is an item that is sold in the merchant's Shopify store. Customers add products to their cart before they checkout for payment. You as the merchant would associate each product to a location used for fulfillment.
Shopify Fulfillments - Fulfillments are the act of preparing and packing an order for shipping and delivery. A fulfillment is created by a merchant when they choose to fulfill a group or all line items in an order. Each group of line items is for a single fulfillment location; determined by the product details for each line item. If the Shopify order has line items being fulfilled from multiple locations, then there will be multiple groups of line items, each needing to be fulfilled separately. Fulfillment locations are normally used to determine the delivery pickup address, however this can be overridden by the merchant's business address in their Trexity Merchant profile (see preferences below for more details).
Shopify Locations - A location is a physical street address. These locations can be used as fulfillment locations or retail locations.
In the Integrations page of the merchant portal, there are a few preferences you can modify to change the Shopify integration behaviour to better meet your needs.
- Post unscheduled deliveries automatically (disabled by default) - When enabled, any delivery created from the Trexity Shopify App will be posted to Trexity drivers for pickup. Remember, a delivery is created as soon as you mark line items as fulfilled in Shopify.
Otherwise, you'll need to manually post or schedule all deliveries created by the Trexity Shopify App through your Trexity merchant portal.
If a you attempt to fulfill a Shopify order outside your delivery hours (set in your profile in the Trexity Merchant portal), the delivery will be created as usual but will not be posted. This will cause an alert to our team that a delivery was attempted to be posted outside delivery hours.
- Override Shopify fulfillment location(s) (disabled by default) - When enabled, your business address (set in your Trexity Merchant profile) will be used as the fulfillment location during a rate request and for any fulfillments. This sets the delivery pickup address to match your business address in your Trexity Merchant profile for all deliveries created from Shopify, regardless of your fulfillment location settings in Shopify.
This setting is intended to only be used if you want to ship from a single physical location/store and don't use Shopify fulfillment locations in the typical manner. This setting will prevent us from supporting a multi-location Shopify store when enabled.
(NOTE: Trexity can support multiple fulfillment locations within the same city as your business address in your merchant portal. Example: if your business address in your portal is in Toronto, we can support the Toronto fulfillment locations in your Shopify store within our delivery zone in Toronto).
Multiple Shopify Locations
We support multi-location Shopify stores within the same city/ delivery zone. In this case, when the delivery is created in Trexity, we'll use the fulfillment location you configured on your Shopify products as the pickup address. We can support any Shopify fulfillment locations within the same city as your business address in your Trexity Merchant profile. Otherwise, Trexity won't be available as a delivery option at checkout.
Cancelling a fulfillment in Shopify will cancel the delivery as long as the driver HAS NOT picked up the packages yet.
If a delivery created from Shopify HAS NOT been posted yet, any updates to the order's delivery address, customer details, and tags on the Shopify end will be automatically updated on the delivery (delivery cost will be adjusted when the delivery address changes).
You can set tags in Shopify related to delivery requirements you want per order. These will come through in the integration and will enable the following delivery requirements (tags can contain a mixture of upper and lowercase letters):
- "In-person" tag = enable In person handoff
- "Perishable" tag = enable Perishable
- "Alcohol" tag = enable Legal Age (Alcohol)
By default, we show your customers at checkout our real rates for delivery.
You can use the Delivery Rate Override rules (found in your Trexity API preferences in the merchant portal) to control the price customers pay. For example, you can decide to have customers cover only a portion of the delivery price, or even have free delivery. Rules can be created based on distance or order value.
You can use the Service Availability rules (found in your Trexity API preferences in the merchant portal) to control when Trexity is shown as a shipping option at checkout. These rules allow you to disable showing Trexity as a shipping option to customers based on a specified distance or order value.
We validate the delivery and pickup addresses each time a delivery is created or updated through the integration. If the system finds a problem with an address, we DO NOT create or update the delivery, and we notify you about what steps to take to remedy the situation. Some examples:
- A pickup location is not within the same city as your business address in your merchant profile.
- To remedy, you must either revise your business address or your Shopify location address.
- The pickup or delivery address can't be recognized as a valid address. In most cases, this is due to customers not providing a province or house number.
- To remedy, you must correct the customer's delivery address, or the Shopify location if a pickup address problem is found. Correcting the customer's delivery address will ensure that the customer data is accurate in Shopify for future orders as well.
We also validate the customer's phone and email. In the event that we detect problems with either one, we simply remove the problematic value on the delivery (since both fields are optional). We then notify you to correct the customer data in Shopify. The delivery will still be created or updated, albeit without the problematic email or phone number. If the delivery was posted, you may need to ask Trexity support to update the customer details on the delivery.