obsidian/wiki/client-knowledge/loreal.md
2026-05-05 11:22:10 +01:00

58 lines
3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: "L'Oréal — Client Knowledge"
aliases: [loreal, l'oreal, loreal-global]
tags: [client, loreal, box, make, php, sla, global-to-local]
sources: [01 Projects/loreal-global-kickoff, 01 Projects/loreal-sla-calculator]
created: 2026-04-15
updated: 2026-04-15
---
# L'Oréal
Oliver Agency works with L'Oréal on campaign asset management (global → local transformation) and SLA timeline tooling.
## Key Takeaways
- L'Oréal uses **Box** for campaign asset exchange and folder hierarchy encodes campaign numbers
- **Make.com** is used as the automation backbone (webhook on submission)
- The "Global to Local" workflow transforms global campaign CSVs into regional market CSVs
- SLA calculator replaces Excel — 9 brief types, 8 stages, Gantt view
- PHP backend for the global kickoff tool (not Python/Node)
## Projects
| Project | Purpose | Entry Point |
|---------|---------|-------------|
| [[01 Projects/loreal-global-kickoff/Loreal Global Kickoff\|L'Oréal OMG Assistant Global]] | Asset submission + global-to-local CSV transform | PHP server |
| [[01 Projects/loreal-sla-calculator/Loreal SLA Calculator\|L'Oréal SLA Calculator]] | SLA timeline calculator for eCom Content Factory PMs | `docker compose up` |
| [[01 Projects/loreal-timelog-viewer/Loreal Timelog Viewer\|L'Oréal Timelog Viewer]] | Static Vite SPA for viewing time logs; served at `/timelog/` subpath on optical-dev | Apache static files |
## L'Oréal OMG Assistant Capabilities
- **Master Global Asset Submission** — submit Box assets with metadata
- Auto-populate campaign number from Box folder hierarchy
- **Global to Local** — transform global CSVs into regional market CSVs
- Webhook to Make.com on submission
## L'Oréal SLA Calculator Capabilities
- Replaces Excel for SLA timeline management
- 9 brief types × 8 stages
- Gantt chart view + date verdict
- CSV + iCal export
- Client Estimator (`client.html`) — simplified 4-input version
## Tech Preferences
- PHP for server-rendered web apps (not Python or Node)
- Box API for file storage and folder-based campaign organization
- Make.com for automation/workflow orchestration
- CSV as data exchange format for global → local transforms
- Docker for SLA calculator (simpler tool)
## Quirks & Lessons
- Campaign number is encoded in the Box folder hierarchy — must traverse parent folders to extract it
- Make.com webhook triggers on every submission — design idempotent handlers
- The "Global to Local" transform needs to understand regional market codes in CSV headers
- SLA calculator has two UX modes: full PM calculator vs simplified client estimator
- L'Oréal uses eCom Content Factory workflow — their PM team are the primary users of the SLA tool
- Timelog Viewer was deployed as a pre-built `dist/` without source — required `<base href="/timelog/">` workaround in `index.html` to fix asset 404s on subpath; see [[wiki/concepts/vite-prebuilt-subpath-workaround]]
## Related
- [[wiki/tech-patterns/box-api-integration|box-api-integration]] — Box API patterns
- [[wiki/client-knowledge/ford|ford]] — another Box-heavy client