Shopify Pincode Checker for India: Showing Delivery and COD Availability on Product Pages
How to add a pincode checker to a Shopify store in India: show delivery dates and COD availability on product pages, keep pin code lists accurate, test.

On this page
- A pincode checker on the product page tells Indian shoppers before checkout whether you deliver, roughly when, and whether cash on delivery is available.
- The checker is only as accurate as its data: a pin code list you maintain, or live serviceability from your courier or shipping aggregator.
- Enforce the same rules at checkout, because a product page message alone does not stop an order to an unserviceable pin code or a blocked COD order.
A Shopify pincode checker is a small box on the product page where a shopper in India enters their pin code and sees whether you deliver there, an estimated delivery time and whether cash on delivery is available. Shopify does not include one by default, so you add it with an app or a theme section, feed it a pin code list or your courier's serviceability data, and back it up with matching rules at checkout.
Indian shoppers check delivery before they buy, especially for COD orders and heavier items. Answering that on the product page saves a chat, a failed checkout or a refused parcel. This guide covers how the checker works, the options for adding it, keeping the data right and testing it. If you want it built into your theme, it is a common job in my Shopify development work.
What a Shopify pincode checker does
A good checker answers three questions in one line after the shopper types six digits:
- Do you deliver here? Yes, or a clear no with an alternative such as contacting you.
- Roughly when? An estimated range of days, worded as an estimate.
- Is cash on delivery available? Shown separately, because many pin codes are serviceable for prepaid orders but not for COD.
Some checkers also show the delivery charge, express options or a note for remote areas. Keep the message short: one or two lines under the add to cart button, remembered for the session so the shopper does not type the pin code again on every product.
Why Indian stores need it
Courier coverage in India varies by pin code, and COD coverage is narrower than prepaid coverage. Without a checker, a shopper only finds out at checkout or, worse, after the order when your team sees that the courier cannot pick it up. That means a cancelled order, a refund for a prepaid order and an unhappy customer.
A checker also helps with return to origin. If you block COD for pin codes with a history of refusals, telling the shopper on the product page is better than surprising them at checkout. The guides to Shopify cash on delivery in India and Shopify shipping in India cover COD controls, NDR and RTO in more depth; this post is about showing the answer early.
Three ways to add a pincode checker on Shopify
| Option | How it gets data | Suits |
|---|---|---|
| Pincode checker app | A list you upload, or a connection to a courier or shipping aggregator | Most stores; quick to set up |
| Shipping aggregator widget | Live serviceability from the aggregator you ship with | Stores already shipping through that aggregator |
| Custom theme section | A pin code list stored in the theme, a metaobject or a file, or a call to a small service | Stores that want a fast, lightweight checker that matches the design |
An app from the Shopify App Store
Search the App Store for pincode or delivery date apps that mention India. Before installing, check whether it lets you upload a list of serviceable and COD pin codes, whether it can read your courier's serviceability, how it shows estimated dates, and how much script it adds to product pages. Install it on a duplicate theme first if the app adds a theme block.
Your shipping aggregator's widget
Several shipping aggregators used by Indian stores offer a serviceability check or estimated delivery widget for Shopify. If you already ship through one, this keeps the checker in step with the couriers that will actually carry the parcel. Features and availability change, so check what your provider currently offers and whether it costs extra.
A custom section in the theme
For a store with a stable list of pin codes, a custom section can be the lightest option. A list of serviceable and COD pin codes is stored as data in the store, the section looks up the six digits in the browser and shows the message, with no third-party script. The trade-off is that someone has to update the list when coverage changes. Live courier checks need a small server-side service, because courier API keys should never sit in theme code.
Setting it up step by step
- Get your serviceability data. Download the pin code list from your courier or aggregator, with separate columns for prepaid and COD.
- Decide your own rules. Remove pin codes you choose not to serve, mark COD as unavailable where refusals are high, and note remote areas with longer delivery.
- Add the checker through the app, widget or custom section, placed just below the price or the add to cart button.
- Write the messages. For example: delivery available, usually within a few working days; cash on delivery available. For a no: we do not deliver to this pin code yet, contact us on WhatsApp.
- Match the checkout. Set Shopify shipping zones, and use your COD app's rules to hide cash on delivery for the same pin codes, so the checkout agrees with the product page.
- Test on a phone with a serviceable pin code, a prepaid-only pin code, an unserviceable one and an invalid entry.
Keep the checker and checkout in agreement
The most common problem I see is a checker that says yes while the checkout says no, or the other way round. Shoppers trust neither after that. Three rules prevent it:
- One source of truth. Use the same pin code list for the checker, the COD rules and your courier settings, and update all three together.
- Enforce at checkout. The product page message is information, not a rule. Shopify's checkout, shipping settings and COD app must block orders you cannot fulfil.
- Review monthly. Courier coverage changes. Compare the list with your courier's latest file and with your own return data by pin code.
Delivery estimates also need care. Promise a range, not a date, unless your process can hit exact dates. Missed promises lead to more "where is my order" chats than no estimate at all.
Think about the edge cases too. A product that ships from a different warehouse, a heavy item only some couriers carry, or a made-to-order piece with a longer lead time may need its own message. Most apps and custom sections can read a product tag or metafield to adjust the estimate, so set those up for the products that differ rather than giving every product the slowest estimate.
Some shoppers will still have questions about delivery before they buy. A WhatsApp chat button and order updates on Shopify can answer them quickly.
Speed and design
A checker sits on every product page, so its weight matters. Prefer a checker that loads its script only on product pages and only after the main content. Avoid apps that add a popup asking for the pin code on page load; it blocks the product and annoys shoppers on mobile.
Design-wise, the input should open the numeric keypad on phones, accept exactly six digits, show the result in the same place, and remember the pin code for the session. If you show a delivery charge, make sure it matches the checkout. For broader speed issues, see fixing a slow Shopify store and website speed on Indian mobile networks.
Running a WooCommerce shop too? The same idea is covered in pin code delivery checkers for WooCommerce, and the trade-offs between the two platforms in WooCommerce vs Shopify in India.
Quick check: does your pincode check match delivery?
- Check shipping zones: in Shopify admin go to Settings, Shipping and delivery and review your zones and rates.
- Test three pincodes: on a product page, enter a pincode you serve, one you don't and one where COD is not allowed, and note what each shows.
- Compare at checkout: go to checkout with the same pincodes and confirm the shipping options and COD match what the checker said.
When to get help
Get help when the checker and checkout disagree, when your courier pincode list changes often, or when COD needs limiting. Shopify development covers pincode checkers and shipping setup, and WooCommerce development covers the same on WordPress. Get in touch with your courier name.
FAQs
How do I add a pincode checker to my Shopify store?
Install a pincode or delivery date app, use your shipping aggregator's serviceability widget, or have a custom section added to the theme. Feed it your serviceable and COD pin code list and place it below the add to cart button.
Does Shopify have a built-in pincode checker for India?
Not on the product page at the time of writing. Shopify's shipping settings decide what is offered at checkout, but showing delivery and COD availability on the product page needs an app or theme work.
How do I show COD availability by pincode on Shopify?
Keep a list of pin codes where COD is available, show the result in the checker, and use your COD app's rules to hide cash on delivery at checkout for every other pin code, so both places agree.
Can I block delivery to certain pin codes on Shopify?
Yes, with shipping and checkout rules, usually through an app that validates the pin code at checkout. A product page checker alone only informs the shopper; it does not stop the order.
Where does a pincode checker get delivery data?
From a pin code list you upload and maintain, or from live serviceability provided by your courier or shipping aggregator. Live data stays current but depends on that service; a list is faster but needs regular updates.
Will a pincode checker slow down my Shopify product pages?
A light checker that loads only on product pages has little effect. Heavy apps with popups or scripts on every page can slow the store, so test speed before and after installing.
Need help with your website?
I'm a freelance WordPress developer building fast, SEO-friendly websites since 2020. Tell me what you need and I'll reply with a plan and a fixed quote, usually within 24 hours.


