Overview
Admin extensions add custom functionality to the Shopify admin panel. Create order action buttons, product bulk actions, custom dashboards, and workflow automations.Extension Types
Product Actions
Add bulk actions to product lists
- Tag products automatically
- Generate SEO descriptions
- Update pricing
- Sync to external systems
Order Actions
Add actions to order details
- Send custom notifications
- Create shipment labels
- Apply custom fulfillment
- Export to warehouse
Customer Actions
Enhance customer management
- Segment customers
- Bulk email campaigns
- Loyalty program enrollment
- Custom tagging
Custom Pages
Add new pages to admin
- Analytics dashboards
- Inventory management
- Custom reports
- Integration settings
Admin Extension Targets
Available extension points:| Target | Location | Use Case |
|---|---|---|
admin.product-details.action.render | Product page actions | Single product operations |
admin.product-index.action.render | Product list actions | Bulk product operations |
admin.order-details.action.render | Order page actions | Single order operations |
admin.order-index.action.render | Order list actions | Bulk order operations |
admin.customer-details.action.render | Customer page actions | Single customer operations |
admin.customer-index.action.render | Customer list actions | Bulk customer operations |
Example: Product SEO Generator
Generate an admin extension that creates SEO-optimized descriptions:1
Describe Your Extension
2
Review Generated Code
Synapse creates:
- Action button in product details
- GraphQL queries for product data
- Mutation to update description
- Loading/success states
- Error handling
3
Deploy & Test
- Automatic validation and deployment
- Available immediately in admin
- Test on sample products
4
Use in Admin
- Go to Products → [Any Product]
- Click “More actions”
- Select your custom action
- Watch it process and update
Generated Extension Structure
Main Component
Common Admin Patterns
- Bulk Product Tagger
- Order Export
- Customer Segmentation
- Inventory Alert
Use Case: Auto-tag products based on attributesTarget:
admin.product-index.action.renderFeatures:- Select multiple products
- Analyze titles/descriptions
- Apply relevant tags
- Show progress
UI Components for Admin
Actions
Actions
<Button>- Primary/secondary actions<ActionList>- Multiple action options<Modal>- Confirmation dialogs<Toast>- Success/error messages
Forms
Forms
<TextField>- Text inputs<Select>- Dropdowns<Checkbox>- Boolean options<Form>- Form container
Feedback
Feedback
<Spinner>- Loading indicator<ProgressBar>- Progress tracking<Banner>- Info/warnings<Badge>- Status indicators
Data Hooks
Data Hooks
useApi()- Access admin datauseData()- Current resourceuseSessionToken()- AuthenticationuseLocale()- Internationalization
Making API Calls
Admin extensions can call external APIs and Shopify Admin API:- External API
- Admin API
- Bulk Operations
Call your own backend:
Best Practices
Performance
- Batch Operations: Process bulk actions in chunks
- Background Jobs: Use webhooks for long operations
- Caching: Cache API responses where appropriate
- Rate Limits: Respect Shopify API rate limits
UX Guidelines
- Clear Feedback: Show progress and results
- Confirmation: Ask before destructive actions
- Error Handling: Graceful failure with retry options
- Undo: Provide undo for reversible actions
Security
- Authentication: Always verify session tokens
- Validation: Validate all inputs
- Permissions: Check user permissions
- Audit Logs: Log all actions for compliance
Advanced Features
Webhooks
Trigger on Shopify events:
Background Jobs
Long-running tasks:
Custom Settings
Store app configuration:
Analytics
Track usage:
Example Prompts
Product Price Optimizer
Product Price Optimizer
Order Fraud Check
Order Fraud Check
Inventory Sync
Inventory Sync
Customer Lifetime Value
Customer Lifetime Value
Testing Admin Extensions
1
Deploy to Dev Store
Extensions automatically deploy to your development store’s admin
2
Access Extension
Navigate to the admin page where your extension appears
3
Test Different Scenarios
- Single item actions
- Bulk actions with multiple items
- Error conditions
- Edge cases
4
Verify Results
- Check data updates correctly
- Confirm error handling works
- Test loading states
- Validate permissions
Troubleshooting
Extension Not Appearing
Extension Not Appearing
Causes:
- Wrong extension target
- Not installed in dev store
- Permissions issue
- Verify target in shopify.extension.toml
- Check Apps in admin settings
- Review app scopes
- Clear browser cache
API Calls Failing
API Calls Failing
Causes:
- Session token expired
- Missing permissions
- Rate limit exceeded
- Refresh session token
- Add required scopes to app
- Implement rate limit handling
- Check API error responses
Bulk Actions Slow
Bulk Actions Slow
Causes:
- Processing too many items at once
- Not batching requests
- Blocking UI thread
- Process in smaller batches
- Use Promise.all for parallel requests
- Show progress indicator
- Consider background jobs