Shopify - Custom Function (New)
🛠️ How to Connect Shopify to Stammer.ai and Provide Tracking Info via AI Agent
In this guide, we’ll walk through how to set up a custom function in Stammer.ai that allows your chatbot to respond with tracking information based on a user’s email.
🔍 Use Case Example:
User: Where’s my order? Bot: What’s your email? User: name@email.com Bot: Your order for the "product-name" has been fulfilled and delivered. It was shipped via USPS with the tracking number 920019030243561811486929. You can track your order here.
Step 1: Create a Private App in Shopify
Go to your Shopify Admin Panel
Click Apps and sales channels > App development
Click Create an app or select an existing one
Name your app (e.g.
AI Order Tracking
)Under Configuration, click Edit on Admin API access scopes
Enable the following scopes:
Click Save
Step 2: Get the Admin API Access Token
Click on the API credentials tab in your app settings
Click Install App (if it’s not already installed)
Copy the Admin API access token (starts with
shpat_...
)You will need this for your Stammer function
Store this securely
Step 3: Set Up the Custom Function in Stammer.ai
Log in to your Stammer.ai account
Go to your AI Agent > Functions tab
Click + Add Function
Fill in the following fields:
Function Alias:
get_tracking_by_email
Description: Get order tracking data from Shopify
Function URL:
Replace
<your-store>
with your actual Shopify subdomainMethod:
GET
Add a Parameter:
Name
email
Type
String
Description
user’s email
Required
✅ Yes
Step 4: Add Headers
Click + Add Header and paste in your API access token as the value.
X-Shopify-Access-Token
shpat_...
(from step 2)
Step 5: Add Static Parameters
Click + Add Parameter
status
any
This makes sure the API includes all orders, regardless of fulfillment status.
Step 6: Write a Prompt Instruction
Paste this in the Prompt Instructions field:
Step 7: Save and Test
Click Test Function and try using a test email of a recent order
If successful, the response will include order data like:
Customer name
Fulfillment status
Tracking number
Carrier
🧠 AI Agent Response Handling
Your AI agent should be instructed (via its system prompt) to:
Ask for the user’s email
Call the
get_tracking_by_email()
function
The AI agent will then return the available information to the user in the chat conversation. You can format this data to make it look any way you'd like by including an example in the base system prompt.
Final Output Example:
"Your order for the Nike Sneakers has been fulfilled and shipped via FedEx. Tracking number: 784569302145. Track it here: https://www.fedex.com/fedextrack/?trknbr=784569302145"
Last updated