Privacy Policy
What ftes.ai collects, what it does with it, who else touches it, and how you get it back or deleted. Written for the businesses that hire our Digital FTEs and the people who use them.
Who we are and what this covers
ftes.ai is operated by FISTA Solutions ("ftes.ai", "we", "us"), ST Plaza, 3rd Floor, Kohinoor City, Faisalabad, Punjab, Pakistan. This policy applies to the ftes.ai website, the ftes.ai application at app.ftes.ai, the e-commerce application "ftes for Commerce" at ecommerce.ftes.ai together with its Shopify app and its Klaviyo app (both also named "ftes for Commerce"), our Digital FTEs (AI agents), our API and MCP connectors, and our publishing package (together, the "Services").
It does not cover third-party services you connect to ftes.ai (for example Google, Intuit QuickBooks, Shopify, Klaviyo or Meta). Their own privacy policies govern what they do with your data.
Our role: controller and processor
- Controller: for account, billing, support and website data about you and your team, we decide how that data is used and we are responsible for it.
- Processor / service provider: for Customer Data, which is the content you put into the Services and the data our Digital FTEs read from services you connect. We process it only to provide the Services on your instructions, under our Terms of Service and, where one is signed, a Data Processing Agreement.
- Independent of platform providers: when you connect a platform such as Intuit QuickBooks Online, we and that platform are each independent controllers of the data we hold. We do not process data on Intuit's behalf, or on behalf of any other platform you connect.
- If you use a Digital FTE to handle data about your own customers, you are responsible for giving them notice and having a lawful basis for that processing.
Information we collect
- Account data: name, work email, password hash (we never store your password itself), organization name, role, and invitations you send.
- Onboarding and workspace data: your website, company profile, brand information, targets, approvals and the settings you choose for each Digital FTE.
- Billing data: plan, invoices, billing email and phone. Card details are collected and stored by Stripe; they never reach our servers.
- Usage data: token usage, actions taken in the app, job and run logs, and error reports, used to meter billing and keep the Services working.
- Device and log data: IP address, browser type, operating system and timestamps, recorded by our servers when you use the Services.
- Connected-service data: the data our Digital FTEs read from services you choose to connect (see "Data from services you connect").
- Credentials you give us: OAuth tokens, API keys (including your own AI provider keys) and publishing credentials. These are encrypted before they are stored (see "Security").
- Support and communications: what you send us by email or the contact form.
Data from services you connect
We only request the permissions a feature needs, and we only access a service after you connect it. You can disconnect any service at any time from the Integrations page in the app, or from the service itself. When you disconnect, we stop accessing it immediately and delete the stored tokens or credentials. Data already synced from it is deleted when you ask us to, or when your account is closed (see "Retention and deletion").
- Google Search Console and Google Analytics 4: search queries, rankings, clicks, impressions, sessions and conversions for the properties you authorize, used to measure your content and report on your targets.
- Intuit QuickBooks Online: company profile, chart of accounts, customers, vendors, items, invoices, bills, payments and financial reports for the company you authorize, used only to run the accounting and reporting features you enable.
- Shopify: store, product, inventory, location, order, fulfillment, return, discount, customer, menu and blog data for the store you authorize, read to run the ftes for Commerce features you enable. The app writes to the store in exactly two ways: publishing a blog article you approve, and adding a Blog link to the store menu. Orders, prices, products, customers and inventory are only ever read. Details are in "Shopify: what the ftes for Commerce app accesses".
- Klaviyo: account, campaign, flow, list, segment, profile, metric and performance data for the Klaviyo account you connect, used by the email features of ftes for Commerce. What is written back to Klaviyo, and when, is in "Klaviyo: data that moves between ftes.ai and Klaviyo".
- Other ftes for Commerce connections: Gorgias, Loop Returns, Microsoft Clarity, Google Search Console, Meta and Intuit QuickBooks Online can also be connected in ftes for Commerce. Each reads only what its feature needs.
- Meta (Facebook and Instagram): page, account, post, audience-insight and ad-performance data for the accounts you authorize, used to plan, publish and report on social and advertising work you approve.
- WordPress, Webflow and your own site endpoint: the credentials needed to publish drafts you approve, and the URLs of what was published.
- Slack: the channel you choose, used only to send your morning brief and approval requests.
Shopify: what the ftes for Commerce app accesses
The public Shopify app "ftes for Commerce" requests exactly these permissions. Each one is listed with the data it gives us and why the app needs it.
- Writes: the app changes a store in exactly two ways. It publishes a blog article you have approved (write_content), and it adds a Blog link to the store menu (write_online_store_navigation). Nothing else in the store is ever changed: orders, prices, products, customers and inventory are read only.
- Uninstall: when a store uninstalls the app, its access token is wiped and syncing stops at once.
- Customer redaction (customers/redact): when Shopify asks us to redact a customer, that customer's personal fields are cleared for that store immediately on receipt.
- Customer data request (customers/data_request): the request is recorded and the data is provided to the store owner within 30 days.
- Shop redaction (shop/redact, which Shopify sends 48 hours after a store uninstalls): the request is recorded, and the store's data is erased within 30 days of it, except records the law requires us to keep.
- Worldwide rights: for data that comes from a Shopify store, every person has the rights described in "Your privacy rights", wherever they live.
| Permission | Data | Why |
|---|---|---|
| read_orders | Orders, line items and refunds | Sales, profit and customer analytics, and measuring what an email campaign caused |
| read_customers | Customers and their contact details | Customer analytics and the audiences you choose |
| read_products | Products, variants and prices | Product performance and catalog insight |
| read_inventory | Inventory levels | Stock reports and stockout warnings |
| read_locations | Store and warehouse locations | Reporting stock and sales by location |
| read_fulfillments | Fulfillments | Fulfillment and shipping reports |
| read_returns | Returns | Returns analytics |
| read_discounts | Discounts and discount codes | Discount reports |
| read_price_rules | The price rules behind discount codes | Discount reports |
| read_inventory_transfers | Inventory transfers between locations | Stock movement in inventory reports |
| read_inventory_shipments | Inbound inventory shipments | Incoming stock in inventory reports |
| read_inventory_shipments_received_items | Items received on inbound shipments | Incoming stock in inventory reports |
| read_content | Blog articles and pages | Knowing what the store has already published |
| write_content | Blog articles | Publishing an article you approve |
| read_online_store_navigation | Store menus | Checking whether the store menu already links to the blog |
| write_online_store_navigation | Store menus | Adding a Blog link to the store menu |
Klaviyo: data that moves between ftes.ai and Klaviyo
The Klaviyo app "ftes for Commerce" reads your Klaviyo account to plan and measure email, and writes to it only with your approval or within the autonomy level you set. This table lists what moves in each direction and when.
- Connection: you connect through Klaviyo's OAuth flow with PKCE, which asks for these 15 scopes: accounts:read, campaigns:read, campaigns:write, flows:read, flows:write, lists:read, lists:write, segments:read, segments:write, profiles:read, profiles:write, metrics:read, templates:read, templates:write and subscriptions:write. You can instead paste a private API key you create in Klaviyo. We request only the scopes these features use.
- Read-only keys: a key without write scopes works for advice only. Every action that would write to Klaviyo is disabled, the app shows the reason, and the access mode is shown in the app.
- Token handling: OAuth tokens and API keys are encrypted at rest, never returned in API responses and never written to logs. Access tokens are refreshed automatically.
- Consent: a shopper's consent is read, never changed. The only subscribe call adds your own seed (test) addresses to a test list, and audience syncs add consented members only.
- Disconnecting: when you disconnect Klaviyo, we revoke the token at Klaviyo and delete it, and we stop reading from and writing to your Klaviyo account.
- Klaviyo data is used only to provide the ftes for Commerce features you enable. It is never sold, never shared with another customer and never used to train AI models.
- We use the Klaviyo API in line with Klaviyo's API Terms and Acceptable Use Policy.
| Direction | Data | When |
|---|---|---|
| Read: account | The account name and default sender | While Klaviyo is connected |
| Read: audiences | Lists and segments, and their sizes | While Klaviyo is connected |
| Read: profiles | Email address, consent status and creation date | While Klaviyo is connected |
| Read: campaigns and flows | Campaigns, flows and metrics | While Klaviyo is connected |
| Read: performance | Campaign and flow performance reports | While Klaviyo is connected |
| Write: campaigns | Email templates, campaigns and their sends | Only on your approval, or within the autonomy level you set |
| Write: flows | Draft flows and flow status | Only on your approval, or within the autonomy level you set |
| Write: list membership | Members of audiences you sync (consented members only) | When you sync an audience |
| Write: helper segments | Two segments, engaged and not engaged, used for counting | Within the autonomy level you set |
| Write: product picks | Profile properties (ftes_pick_*) holding a campaign's "Picked for you" product | For a campaign you approve that includes that block |
| Write: win-back | Win-back profile properties | When you press Send in the Morning Brief |
| Subscribe: seed list | Your own seed (test) addresses, added to a test list | When you save your seed addresses |
How we use information, and our legal bases
- To provide the Services: running Digital FTEs, syncing connected services, publishing what you approve, metering tokens and billing you. Legal basis: performance of our contract with you.
- To secure the Services: authentication, fraud and abuse prevention, rate limiting and incident investigation. Legal basis: legitimate interests.
- To support you and send service messages: invitations, one-time codes, receipts and notices about changes. Legal basis: performance of contract.
- To improve the Services: aggregated, de-identified usage metrics such as feature adoption and error rates. This never includes the content of Customer Data or connected-service data. Legal basis: legitimate interests.
- To send marketing email, only where you have opted in; you can unsubscribe at any time. Legal basis: consent.
- To comply with law: tax, accounting and lawful requests. Legal basis: legal obligation.
How our AI processes your data
- Digital FTEs send the parts of your Customer Data needed for a task to an AI model provider (Anthropic, OpenAI or Google) and return the result to you.
- We use those providers under their commercial API terms, which do not allow them to use API inputs or outputs to train their models. They may keep inputs for a limited period for abuse monitoring, as their terms describe.
- We do not use your Customer Data or data from connected services to train or improve any AI model, ours or anyone else's.
- If you add your own AI provider key, requests made with it go to that provider under your own agreement with them.
- Our staff do not read the content of your Customer Data unless you ask us to (for example in a support request), it is needed to investigate security or abuse, or the law requires it.
- Digital FTEs propose; people decide. Publishing and other actions that change your external accounts go through the approvals you configure.
Platform-specific commitments
- Google: ftes.ai's use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy (developers.google.com/terms/api-services-user-data-policy), including the Limited Use requirements. Google user data is used only to provide the features you see in the app, is never used for advertising, is never sold, and is never used to train AI models.
- Intuit QuickBooks: QuickBooks data is used only to provide the ftes.ai features you enable. It is never sold, never used for advertising, never shared with or shown to any other customer, and never used to train AI models. Tokens are encrypted and never logged. If you disconnect, revoke consent or close your account, we stop accessing QuickBooks immediately and delete that data when you ask, subject to records the law requires us to keep.
- Shopify: data from your store is used only to provide the ftes for Commerce features you enable. It is never sold, never shared with another customer and never used to train AI models. What the app reads, the two things it writes, and how we handle uninstall, data requests and redaction requests are in "Shopify: what the ftes for Commerce app accesses".
- Klaviyo: data from your Klaviyo account is used only to provide the ftes for Commerce features you enable. It is never sold, never shared with another customer and never used to train AI models, and a shopper's consent is never changed. What moves each way, and when, is in "Klaviyo: data that moves between ftes.ai and Klaviyo".
- Meta: data from Meta is processed only as this policy describes and is never sold or used to build profiles. You can ask for its deletion at any time by writing to privacy@ftes.ai.
Subprocessors
The third parties that process personal data on our behalf. We notify customers before adding a subprocessor that processes Customer Data.
| Subprocessor | Purpose | Data |
|---|---|---|
| Railway | Application hosting and database | All data stored by the Services |
| Stripe | Payments and invoicing | Billing contact and payment data |
| Anthropic | AI model processing | Task inputs and outputs |
| OpenAI | AI model processing | Task inputs and outputs |
| Google (Gemini API) | AI model processing | Task inputs and outputs |
| Google Analytics | Website analytics on ftes.ai | Device and usage data from the marketing site |
| Email delivery (SMTP) | Invitations, one-time codes and service email | Name and email address |
International transfers
- We are based in Pakistan and our providers operate in several countries, including the United States, so your data may be processed outside the country where you live.
- Where data from the EEA, UK or Switzerland is transferred, we rely on the European Commission's Standard Contractual Clauses (and the UK Addendum) or another lawful transfer mechanism, together with the safeguards described in "Security".
Retention and deletion
- Account and workspace data: kept while your account is active.
- Connection credentials: deleted as soon as you disconnect the service. Disconnecting Klaviyo also revokes the token at Klaviyo before it is deleted.
- Shopify uninstall: the store's access token is wiped and syncing stops at once. When Shopify sends its shop redaction request, 48 hours after uninstall, the store's data is erased within 30 days of that request, except records the law requires us to keep.
- Shopify customer redaction: the named customer's personal fields are cleared for that store immediately on receipt of the request.
- Connected-service data: deleted within 30 days of your request, or of account closure.
- When your account closes, you have 30 days to export your data. After that we delete Customer Data from live systems, and it leaves our backups as they expire.
- Billing records: kept for as long as tax and accounting law requires.
- Security logs: kept for a limited period to investigate incidents, then deleted.
Security
- All traffic to the Services is encrypted in transit with TLS.
- OAuth tokens, API keys and publishing credentials are encrypted at rest with AES-based authenticated encryption. The key is held separately from the database, and credentials are never returned in API responses or written to logs.
- Every organization's data is isolated by tenant, and every request is checked against role-based permissions.
- Session cookies are HttpOnly, and passwords are stored only as salted hashes.
- Access to production systems is limited to staff who need it.
- If a breach affects your personal data, we will notify you and the relevant authorities and platforms without undue delay, as the law and our platform agreements require.
- To report a vulnerability, email security@ftes.ai.
Your privacy rights
- Depending on where you live, you may have the right to access, correct, delete or export your personal data; to object to or restrict processing; to withdraw consent; and to complain to a data protection authority.
- EEA and UK residents have these rights under the GDPR and UK GDPR.
- California residents have the rights to know, delete, correct and opt out of sale or sharing under the CCPA/CPRA. We do not sell or share personal information, and we will not discriminate against you for using these rights.
- To exercise a right, email privacy@ftes.ai. We verify your identity before acting and respond within 30 days. If we decline, you may appeal by replying to our answer.
- If we hold your data as a processor for one of our customers, we will pass your request to that customer and help them respond.
Children
- The Services are for businesses and are not directed at anyone under 18. We do not knowingly collect personal data from children; if we learn we have, we delete it.
Changes to this policy
- We will post any change here and update the date at the top. For a material change, we will notify account owners by email or in the app before it takes effect.
Contact
- FISTA Solutions, ST Plaza, 3rd Floor, Kohinoor City, Faisalabad, Punjab, Pakistan.
- Privacy questions and requests: privacy@ftes.ai.
- Security reports: security@ftes.ai.
Questions
Write to privacy@ftes.ai. We reply within 24 hours on business days.