Catch bad Shopify addresses before you buy a label

When a new Shopify order arrives, we verify the shipping address and alert your fulfillment team about anything undeliverable before a label gets bought.

Deterministic Code
EasyPostShopifySlack BotOperationsNotifications & Alerts
PromptCreate

This is a deterministic code workflow that validates the shipping address on every new order before a label is bought. Trigger it with a Shopify webhook that fires whenever a new order is created (order created).

When a new order comes in, take the shipping address off the order: the recipient name, street lines, city, state or province, postal code, and country.

Send that address to EasyPost using Create and Verify Address, which creates the address object and runs delivery verification in a single request. Read the verification result it returns, including whether delivery verification succeeded, any verification errors, and the normalized address EasyPost produces.

Branch on the result. If the address verifies cleanly with no errors, stop and do nothing so clean orders pass through silently. If EasyPost flags the address as undeliverable or returns verification errors, continue with the two steps below.

First, use Shopify Update Order to add an "address-check-failed" tag to the order while keeping any existing tags, and append a short note saying EasyPost could not verify the shipping address so the team should review it before buying a label.

Second, post an alert to our fulfillment Slack channel using the Slack Bot Send a Message action. Include the order number, the customer name, the exact address the customer entered, and any suggested correction EasyPost returned (its normalized version of the address). Format it so a fulfillment teammate can spot the problem and fix the order quickly.

The goal is to catch bad addresses before a shipping label is bought, cutting failed deliveries and return fees. Only orders that fail verification should generate a tag, a note, and a Slack alert.

Example output

Address check failed on Order #1042 Customer: Jamie Rivera Entered: 200 Maket St, San Francisco, CA 94105, US EasyPost suggests: 200 Market St, San Francisco, CA 94105-1000, US Reason: The address could not be verified as deliverable. Please review and correct before buying a label.

Additional information

What does this prompt do?
  • Checks the shipping address on every new Shopify order the moment it comes in.
  • Runs each address through a real deliverability check to catch typos, missing unit numbers, and locations that can't receive mail.
  • Flags failed orders with an "address-check-failed" tag and a short note so your team knows to review before shipping.
  • Posts an alert to your fulfillment Slack channel with the order number, customer name, the address they entered, and a suggested correction.
  • Leaves clean orders untouched, so your team only sees the ones that need attention.
What do I need to use this?
  • A Shopify store where you manage orders.
  • An EasyPost account for address verification.
  • A Slack workspace with a fulfillment channel where alerts should land.
How can I customize it?
  • Change which Slack channel gets the alerts, or send them as a direct message instead.
  • Rename the tag or reword the note added to flagged orders.
  • Adjust what counts as a failure, for example alerting only on undeliverable results versus any verification warning.

Frequently asked questions

Will this slow down my checkout?
No. The check runs right after an order is placed, so shoppers never wait. It just flags problem addresses before you print a label.
What happens if the address is fine?
Nothing. Clean addresses pass through silently. Only orders that fail verification get a tag, a note, and a Slack alert.
Does it fix the address automatically?
No. It flags the order and shares the suggested correction so a person can confirm and update it. That avoids shipping to a wrongly guessed address.
Which countries does address verification cover?
EasyPost verifies US addresses in the most detail and supports international verification for many countries. The level of detail varies by country.
Do I need to be technical to set this up?
No. You connect your Shopify store, EasyPost, and Slack, choose the channel for alerts, and the workflow runs on its own.

Stop shipping to addresses that don't exist.

Catch undeliverable Shopify orders before a label gets bought and save on failed deliveries and return fees.