PLAYWRIGHT · SNOWFLAKE · CLAUDE CODE · Apple · EMEIA Sales
Approval PipelineCustomer-Approval Agent Pipeline
On Apple’s EMEIA Sales Business Process Re-engineering & Systems team, programme eligibility was checked by hand: people opening records, cross-referencing systems and applying rules from memory. I co-built the pipeline that does it automatically, and the dashboards that show leadership how the programmes are performing.
- Hours daily of manual review eliminated
- Fewer false rejections rules applied the same way every time
- Multi-billion dollar sales programmes supported across EMEIA
- Value Multi-$bn Programmes supported
- Time Hours / day Manual review removed
- Effort Co-built Team delivery
- Quality 1 ruleset Same rules, every record
- Gate Collect with browser automation
- Step 02 Land it in Snowflake
- Step 03 Rules in code, agent for the edges
- Step 04 Visible to leadership
- Output Multi-$bn Programmes supported
01 — Context
The problem.
Customer eligibility for sales programmes was decided by people reading records and applying business rules by hand. It took hours every day, it scaled with volume, and different reviewers reached different answers — so eligible customers were sometimes rejected.
The data needed for the decision was spread across web tools without convenient exports, which is why the work had stayed manual.
02 — Method
The approach.
The build, in the order it happened.
-
Collect with browser automation
Playwright workflows gather and validate the data a reviewer used to collect by hand, on a schedule, with checks that fail loudly rather than load partial data.
-
Land it in Snowflake
Everything lands in Snowflake, so decisions and reporting work from the same governed tables.
-
Rules in code, agent for the edges
Programme business rules are encoded explicitly. Claude Code was used to build and maintain the pipeline quickly and to handle the awkward cases the rules alone could not.
-
Visible to leadership
Tableau dashboards on live Snowflake data show sales performance, KPIs and underperforming regions, so the people running the programmes see the effect directly.
- Sources Python (Pandas, Playwright, Selenium)SnowflakeSQL
- Gate Collect with browser automation
- Step 02 Land it in Snowflake
- Step 03 Rules in code, agent for the edges
- Step 04 Visible to leadership
- Output Multi-$bn Programmes supported
03 — A run
What one run looks like.
The steps above, played as the agent would walk them. A reading of the write-up, not a recording of a real run.
run approval-pipeline
[plan] 4 steps
[gate] ✓ Collect with browser automation
↳ Playwright workflows gather and validate the data a reviewer used to co…
[step 02] Land it in Snowflake
↳ Everything lands in Snowflake, so decisions and reporting work from the…
[step 03] Rules in code, agent for the edges
↳ Programme business rules are encoded explicitly
[step 04] Visible to leadership
↳ Tableau dashboards on live Snowflake data show sales performance, KPIs…
[tools] Python (Pandas, Playwright, Selenium) · Snowflake · SQL · Claude Code · Tableau · Excel
[handoff] Hours of daily manual review eliminated
[exit 0]
04 — Outcome
What changed.
- Hours of daily manual review eliminated.
- False rejections sharply reduced, because every record is judged against the same rules.
- Playwright workflows replaced manual data collection, validation and reporting for the team.
- Predictive scripts on programme sales data supported forecasting and targeted outreach to historical customers.
05 — Screens
What it looks like.
Generated from the write-up rather than captured from a client's screen — the shape of the thing, not a leaked one.
An automated pipeline that approves or rejects customers against sales-programme business rules — replacing hours of daily manual review and sharply cutting false rejections.
One scheduled run: collect, land in Snowflake, apply the programme rules, publish to Tableau.
What leadership sees: programme KPIs, regions and approvals on live Snowflake data.
06 — Stack & role
Built with.
- Python (Pandas, Playwright, Selenium)
- Snowflake
- SQL
- Claude Code
- Tableau
- Excel
- Role
- Data Analyst — co-built the pipeline, built the dashboards
- Duration
- November 2025 – October 2026
- Client
- Apple · EMEIA Sales
- Period
- 2025 — 2026
07 — Questions
The questions I get asked about this one.
No — they are Apple’s. This write-up describes the approach only; I am happy to go deeper on the engineering on a call.