Adding a Pre-Defined List to Shipping Options

Highlighted
Shopify Partner
2 0 0

Hello all,

I'm not expecting anyone to do my work for me, but I need a nudge in the right direction. I'm a long-time developer, but I'm new to Shopify in general and the Shopify API in particular. Here's the situation...

We need to offer "Local Dropoff" (i.e., free local delivery) in addition to standard shipping options. Here's an example of what I have in mind...

Notes...

  • The "Local Dropoff" option should be available on all orders, so it's not necessary to qualify the customer's address for this service.
  • The "Local Dropoff" service is entirely ours and is not part of a 3rd-party service. We maintain the list of dropoff locations and provide the physical delivery.
  • The customer can select only pre-defined locations, but the service is free of charge, so no price lookup is required.
  • If necessary, we can expose the dropoff location list through a web service or Ajax on our own server (external to Shopify). The list is dynamic and may change at any time.
  • Because the list might get very large, we'll probably want to implement some kind of dependent <select> scheme, as in the example above (preferably using calls to our external server).

Questions...

  • Is this possible?
  • If so, would the CarrierService API be required?

As I indicated, the location list is ours, and we can create a web service on our own server for the Shopify API to request from, but we're not opposed to maintaining HTML source (.liquid or whatever) on Shopify if that's an option. As long as the customer can select from our pre-defined list and we can tell which location they selected.

We'd also prefer not to embed the entire location list in a webpage, but that could be an option if it becomes necessary.

Thanks for any help. I know everyone's time is valuable, so just a pointer to relevant docs or examples would be great.

Scott B.

0 Likes
Highlighted
Shopify Staff (Retired)
Shopify Staff (Retired)
531 1 98

Hi Scott,

This would definitely be possible using the CarrierService API, in fact there's no other option that I would recommend.

Is there some reason you couldn't filter the list based on the customer's location, e.g. only list dropoff locations within 100km of the customer? This would prevent the list from getting too large. I'm not sure if there's a limit to how many rates can be returned through a carrier service, but there is a reasonable request timeout length (~10 seconds).

0 Likes
Highlighted
Shopify Partner
2 0 0

Thanks, Jamie. I'll continue exploring the CarrierService API. Being new to Shopify, I'm still wrapping my head around basic concepts.

Filtering is a good idea, but it isn't really applicable in our case. No need to get into details here, but suffice it to say that pretty much all of the dropoff locations will be within a radius much smaller than 100km.

One thing I learned from customer support that I'll share here in case anyone else doesn't know: The docs indicate that the CarrierService API is only available with the Advanced Plan ($299/month, yikes!); however, it can be added à la carte to lower plans for $20/month extra, and it's included at no additional charge with all plans if you prepay for at least a year.

Scott B.

0 Likes
Highlighted
New Member
2 0 0

Hey there - did you find a resolution to this - we are actively looking for a solution...

0 Likes