# Workflow Functions

Run your own JavaScript or TypeScript as a step in Shopify Flow: transform data, read and update store data, call external APIs, run on a schedule. Sandboxed and EU-hosted.

## Run custom functions inside Shopify Flow

Run powerful functions directly inside Shopify Flow. Transform data, calculate values, format text, process lists, evaluate conditions, and create custom outputs for the next workflow steps. Extend Shopify Flow with flexible workflow functions - without hosting your own code or external service.

- JavaScript & TypeScript
- Transform data
- Store secrets
- Flow-native
- EU-hosted

## From install to first function in minutes

1. **Install the app** - One-click install from the Shopify App Store. The free tier includes every function capability.
2. **Write your function** - Write a function in JavaScript or TypeScript, store any secrets it needs, and test it right inside the app.
3. **Add it to Flow** - Drop the function step into any Shopify Flow workflow and use its output in the next steps.

## Custom logic, right inside Shopify Flow

Write a function, run it as a Flow step, use its output downstream. No server to host, no external service to maintain.

- **JavaScript & TypeScript** - Write functions in JavaScript or TypeScript and run them as a step inside Shopify Flow. Transform data, calculate values, format text and evaluate conditions - all without your own infrastructure.
- **Custom outputs for the next step** - Return structured outputs from your function and use them directly in the following Flow actions. Process lists, reshape payloads, and pass computed values downstream.
- **Store secrets & test** - Securely store the API keys and credentials your functions need, encrypted at rest. Test a function before it goes live so you ship with confidence.
- **Flow-native, EU-hosted** - Drop the function step into any Shopify Flow workflow. Runs on Google Cloud in the EU (europe-west1, Belgium), encrypted at rest with Google Cloud KMS.
- **Read and update store data** - Functions can query and change store data through a mediated Admin GraphQL proxy, with short-lived per-run tokens - your access token never enters the sandbox.
- **Scheduled runs** - Run a function on a cron schedule, without a Flow trigger, for recurring clean-ups and syncs.
- **GitHub sync and AI generation** - Keep functions in a GitHub repository, or describe what you need and let AI draft the function for you.
- **Developer API and MCP** - Create, test and run functions from your own tools through a REST API and an MCP server.

## Simple, usage-based pricing

Start free. Pay annually and save 8%.

### Free - $0 /month

Try it out

- 500 Function Runs per month
- Support via E-Mail, WhatsApp or Slack

### Starter - $25 /month

Small stores

- 5000 Function Runs per month
- Support via E-Mail, WhatsApp or Slack

### Grow - $50 /month

Active stores

- 15000 Function Runs per month
- Support via E-Mail, WhatsApp or Slack

### Unlimited - $100 /month

Enterprise + agencies

- Unlimited Function Runs
- Support via E-Mail, WhatsApp or Slack

## FAQs

**Do I need to host my own code?**

No. You write your function in JavaScript or TypeScript and it runs inside Shopify Flow on our infrastructure - no server, no external service to host or maintain.

**What can a function do?**

Transform data, calculate values, format text, process lists, evaluate conditions, and build custom outputs for the next steps in your Flow. If you can express it in JavaScript or TypeScript, you can run it.

**Can my function use secrets like API keys?**

Yes. You can securely store secrets (such as API keys or credentials) that your functions need. Secrets are encrypted at rest with Google Cloud KMS.

**Where does my code run and where is data stored?**

Functions run on Google Cloud in the EU (europe-west1, Belgium), encrypted at rest with Google Cloud KMS. No data leaves Europe.

**Is the app GDPR-compliant?**

Yes. EU-only data residency, signed DPA on request, no third-party tracking on this site. Full details in our Privacy Policy.

**Can I run a function on a schedule?**

Yes. Besides running as a Shopify Flow action, a function can run on a cron schedule you set in the app.

**Can my function read or update store data?**

Yes. Functions reach the Admin GraphQL API through a mediated proxy with short-lived per-run tokens; the store's access token never enters the sandbox.

## Custom logic, right inside Flow

Install free and run your first function in minutes.

---

- [Imprint](https://workflow-functions.app/imprint.md)
- [Terms](https://workflow-functions.app/terms.md)
- [Privacy](https://workflow-functions.app/privacy.md)
- [DPA](https://workflow-functions.app/dpa.md)
