Nehos Groupe
Définition & Concepts

Payload CMS

Version Décideur

L'essentiel

Payload CMS, c'est le CMS headless pour développeurs qui refusent de sacrifier la DX TypeScript. Dans Strapi v4, tu configures beaucoup via l'interface graphique — ce qui crée un décalage entre l'UI admin et les types dans ton code. Dans Payload, tu décris ton schéma de données en TypeScript, et tout le reste (UI admin, APIs, types) suit automatiquement. C'est comme si ton schéma Prisma générait à la fois une API REST, un back-office React complet et des types TypeScript parfaits — sans effort. La v3 va plus loin : Payload s'installe dans ton projet Next.js existant. Tu n'as plus deux applications séparées à gérer. Tu as un monorepo, une config, un déploiement.

Version Expert

Détails Techniques

CMS headless open-source développé par James Mikrut (première release : avril 2021, v3 : décembre 2024). Architecture code-first : la configuration TypeScript (payload.config.ts) définit collections, globals, champs, hooks, access control et plugins. Cette config génère automatiquement : l'UI admin React (entièrement sur-mesure via slots), les endpoints REST (CRUD + auth), l'API GraphQL, et la Local API (accès DB direct sans HTTP depuis Server Components). Adapters DB : Postgres (via Drizzle ORM, recommandé production) et MongoDB. V3 full-stack Next.js : Payload tourne dans le même processus Node.js que Next.js (monorepo), les Server Components appellent directement payload.find() / payload.findByID() via la Local API, TypeScript strict end-to-end sans génération de types séparée. Système d'authentification JWT + refresh tokens, médias gérés via S3/Cloudflare R2/local, Lexical rich text editor, live preview via draft mode Next.js.

#Définition Payload CMS

CMS headless open-source développé par James Mikrut (première release : avril 2021, v3 : décembre 2024). Architecture code-first : la configuration TypeScript (payload.config.ts) définit collections, globals, champs, hooks, access control et plugins. Pour approfondir, consultez la page service Development Next.js + Payload CMS Nehos.

Sur le terrain, Cette config génère automatiquement : l'UI admin React (entièrement sur-mesure via slots), les endpoints REST (CRUD + auth), l'API GraphQL, et la Local API (accès DB direct sans HTTP depuis Server Components). Adapters DB : Postgres (via Drizzle ORM, recommandé production) et MongoDB.

V3 full-stack Next.js : Payload tourne dans le même processus Node.js que Next.js (monorepo), les Server Components appellent directement payload.find() / payload.findByID() via la Local API, TypeScript strict end-to-end sans génération de types séparée. Système d'authentification JWT + refresh tokens, médias gérés via S3/Cloudflare R2/local, Lexical rich text editor, live preview via draft mode Next.js.

Maîtriser Payload CMS permet aux équipes techniques et métier de parler le même langage — et d'arbitrer plus vite.

#Payload CMS expliqué simplement

Payload CMS, c'est le CMS headless pour développeurs qui refusent de sacrifier la DX TypeScript. Dans Strapi v4, tu configures beaucoup via l'interface graphique — ce qui crée un décalage entre l'UI admin et les types dans ton code. Dans Payload, tu décris ton schéma de données en TypeScript, et tout le reste (UI admin, APIs, types) suit automatiquement.

C'est comme si ton schéma Prisma générait à la fois une API REST, un back-office React complet et des types TypeScript parfaits — sans effort. La v3 va plus loin : Payload s'installe dans ton projet Next.js existant. Tu n'as plus deux applications séparées à gérer. Tu as un monorepo, une config, un déploiement.

Visualisez le quotidien d'un directeur technique ou d'un CMO en scale-up.

#Cas d'usage concrets

Exemple de situation — plateforme e-learning corporate (LMS sur mesure Next.js et Payload) — Situation type : une plateforme e-learning d'entreprise (LMS sur mesure) est construite en monorepo Next.js 16, Payload v3 et Postgres. Collections : cours, modules, quiz, utilisateurs, cohortes, progressions.

La Local API dans les Server Components évite les appels HTTP internes, et l'admin React personnalisée permet à l'équipe pédagogique non technique de gérer les contenus. Le temps de mise sur le marché est à comparer à celui d'une solution fondée sur Strapi.

Exemple de situation — marketplace B2B de fournitures industrielles (refonte depuis WooCommerce) — Situation type : une marketplace B2B de fournitures industrielles refond son site WooCommerce avec Payload v3, Next.js 16, Postgres et Algolia. Les collections couvrent produits, fournisseurs, devis, commandes et contrats, avec un access control granulaire par rôle (acheteur, fournisseur, admin) et une API REST consommée par une application mobile React Native. Le coût d'infrastructure mensuel se compare à celui de l'ancien hébergement AWS avec Strapi Cloud.

Exemple de situation — site corporate d'une ETI de services financiers (refonte depuis Drupal 9) — Situation type : une ETI de services financiers refond son site corporate (ancien Drupal 9) avec Payload v3, Next.js 16 et le live preview en draft mode. Les éditeurs non techniques deviennent autonomes dans l'admin Payload, et la durée d'onboarding de l'équipe éditoriale se compare à celle de l'ancien Drupal. Le site est déployé sur un VPS chez un hébergeur européen.

#Payload CMS chez Nehos Groupe

Notre service Development Next.js + Payload CMS Nehos couvre ce périmètre de A à Z.

Chaque mission démarre par un cadrage structuré : objectifs chiffrés, périmètre technique, jalons à 30/60/90 jours. On livre, on mesure, on itère. Pas de slides sans livrable. Voir aussi : refonte headless Next.js + Payload.

#Termes associés

Ce concept ne vit pas isolé.

Tous ces termes sont interconnectés. Maîtriser l'un sans comprendre les autres, c'est voir le puzzle sans toutes les pièces.

Applications Concrètes

Contexte : Exemple de situation — plateforme e-learning corporate (LMS sur mesure Next.js et Payload)

« Situation type : une plateforme e-learning d'entreprise (LMS sur mesure) est construite en monorepo Next.js 16, Payload v3 et Postgres. Collections : cours, modules, quiz, utilisateurs, cohortes, progressions. La Local API dans les Server Components évite les appels HTTP internes, et l'admin React personnalisée permet à l'équipe pédagogique non technique de gérer les contenus. Le temps de mise sur le marché est à comparer à celui d'une solution fondée sur Strapi. »

Contexte : Exemple de situation — marketplace B2B de fournitures industrielles (refonte depuis WooCommerce)

« Situation type : une marketplace B2B de fournitures industrielles refond son site WooCommerce avec Payload v3, Next.js 16, Postgres et Algolia. Les collections couvrent produits, fournisseurs, devis, commandes et contrats, avec un access control granulaire par rôle (acheteur, fournisseur, admin) et une API REST consommée par une application mobile React Native. Le coût d'infrastructure mensuel se compare à celui de l'ancien hébergement AWS avec Strapi Cloud. »

Contexte : Exemple de situation — site corporate d'une ETI de services financiers (refonte depuis Drupal 9)

« Situation type : une ETI de services financiers refond son site corporate (ancien Drupal 9) avec Payload v3, Next.js 16 et le live preview en draft mode. Les éditeurs non techniques deviennent autonomes dans l'admin Payload, et la durée d'onboarding de l'équipe éditoriale se compare à celle de l'ancien Drupal. Le site est déployé sur un VPS chez un hébergeur européen. »

Questions & réponses

Questions fréquentes sur Payload CMS

Payload si votre stack est Next.js App Router TypeScript — intégration monorepo native, DX TypeScript supérieure, 0 appels HTTP internes via Local API. Strapi si votre équipe est déjà formée dessus ou si vous avez besoin d'un back-office très accessible pour profils non-techniques. Nehos privilégie Payload pour ses projets Next.js.

Sanity est SaaS (hébergement géré, facturation à l'usage, GROQ query language). Payload est open source auto-hébergé (vous gérez l'infra). Avantage Sanity : collaboration temps-réel, CDN global clé en main. Avantage Payload : 0 vendor lock-in, 0 coût SaaS, typage TypeScript natif. Pour projets B2B avec données sensibles, Payload s'impose.

Les deux sont supportés. Nehos recommande Postgres (via l'adapter Drizzle) pour tous les projets de production : transactions ACID, schéma strict, performances sur requêtes complexes, et meilleure compatibilité avec les outils de migration. MongoDB reste pertinent pour des structures documentaires très flexibles ou équipes déjà sur MongoDB.

Oui. Payload v3 peut tourner en standalone (Express, Hono) et exposer REST + GraphQL consommables depuis n'importe quel frontend. Mais le gain principal de v3 (monorepo, Local API, Server Components) disparaît. En standalone, Strapi ou Directus sont concurrents équivalents. L'adoption de Payload v3 est justifiée quasi-exclusivement sur stack Next.js.

L'admin React auto-générée est claire et rapide. Mais la configuration initiale nécessite un développeur TypeScript. Une fois configuré, les éditeurs peuvent créer du contenu, gérer les médias, publier avec live preview — sans toucher au code. L'onboarding éditorial est généralement rapide.

OVH (choix Nehos), Hetzner, Fly.io, Railway, ou AWS EC2. Payload + Next.js en monorepo = un seul processus Node.js à déployer. Base de données Postgres externalisée (OVH Managed PostgreSQL, Supabase, Neon). CDN médias : Cloudflare R2 (recommandé) ou S3. Le budget d'infrastructure d'une ETI est en général inférieur à celui de solutions SaaS équivalentes, qui facturent à l'usage ou au siège.

Prendre rendez-vous