# GUIDE PAS-À-PAS — Configuration Meta (Facebook + Instagram) > **Une seule app Meta** couvre à la fois **Facebook** et **Instagram**, et **un seul « Se connecter »** > dans le plugin obtiendra un jeton valable pour les deux. C'est le gros avantage de l'écosystème Meta. > > ⚠️ **Les libellés exacts des écrans Meta changent souvent** (Meta réorganise ses consoles plusieurs fois par an). > Les **principes, permissions et endpoints** ci-dessous, eux, sont stables. Si un écran ne porte pas exactement > le nom indiqué, cherche l'équivalent le plus proche — je t'aiderai à retomber sur mes pieds au moment du palier B. > > Tu réalises **toi-même** ces étapes (création de comptes, saisie de secrets) : je ne peux ni ne dois le faire à ta place. --- ## Vue d'ensemble (l'ordre compte) ``` 1. Compte Facebook (perso, admin) ─┐ 2. Page Facebook « Karaoke Clip » │ côté réseaux sociaux 3. Compte Instagram → Business/Creator │ 4. Lier l'Instagram à la Page Facebook ─┘ 5. Business Manager (portefeuille pro) ─┐ 6. App Meta for Developers │ côté développeur 7. Produits : Facebook Login + Instagram │ 8. Permissions + URI de redirection │ 9. App ID + App Secret → dans le plugin │ 10. (plus tard) Business Verification + App Review─┘ ``` Les étapes 1→9 suffisent pour **développer et tester** (mode Développement). L'étape 10 n'est requise que pour publier **publiquement au grand public** (mode Live). --- ## PARTIE 1 — Côté réseaux sociaux ### Étape 1 — Compte Facebook administrateur Utilise (ou crée) un compte Facebook personnel qui sera l'**administrateur** de tout. C'est lui qui possédera l'app, la Page et le Business Manager. Active la **validation en deux étapes** dessus (Meta l'exige pour les rôles sensibles). ### Étape 2 — Page Facebook 1. https://www.facebook.com/pages/create → crée la Page (nom : *Karaoke Clip*, catégorie *Musicien/Groupe* ou *Site web*). 2. Note le **nom exact** de la Page. Son identifiant (`PAGE_ID`) sera récupéré automatiquement par le plugin, tu n'as pas à le chercher à la main. 3. Publie au moins une photo de profil + une couverture (une Page vide peut coincer certaines vérifications). ### Étape 3 — Compte Instagram en Business/Creator 1. Crée (ou utilise) un compte Instagram dédié. 2. Dans l'app Instagram → **Paramètres → Compte → Passer à un compte professionnel** → choisis **Business** (ou Creator). > L'API de publication **refuse** les comptes personnels. C'est non négociable. ### Étape 4 — Lier l'Instagram à la Page Facebook Le plus fiable passe par **Meta Business Suite** : 1. https://business.facebook.com → connecte-toi avec le compte de l'étape 1. 2. **Paramètres → Comptes → Comptes Instagram → Ajouter** → connecte le compte IG Business. 3. **Paramètres → Comptes → Pages** → assure-toi que la Page FB (étape 2) est bien dans le portefeuille. 4. Vérifie la liaison : dans les paramètres de la Page → **Comptes liés → Instagram** doit montrer ton compte IG. > Test rapide de bonne liaison (facultatif) : dans Business Suite, tu dois pouvoir **programmer un post** vers la Page > **et** vers l'Instagram depuis la même interface. Si oui, l'API pourra faire pareil. ### Étape 5 — Business Manager / Portefeuille professionnel Déjà créé de fait à l'étape 4 (business.facebook.com). Il servira à la **Business Verification** (étape 10). Renseigne dès maintenant les infos de l'entreprise (nom, site `karaokeclip.video`) : ça accélère la vérif plus tard. --- ## PARTIE 2 — Côté développeur (l'app Meta) ### Étape 6 — Créer l'app 1. https://developers.facebook.com → **Log in** (compte étape 1) → accepte les conditions développeur si demandé. 2. **My Apps → Create App**. 3. Cas d'usage : choisis une app qui permet de **gérer une Page et publier du contenu**. Selon la version de la console, c'est soit un choix « **Other** → type **Business** », soit un « use case » du type *« Manage everything on your Page »* / *« Publish content »*. En cas de doute, prends le type **Business** : il donne accès à tout ce dont on a besoin. 4. Nomme l'app (ex. *KaraokeClip Publisher*), associe-la au **portefeuille pro** (étape 5). ### Étape 7 — Ajouter les produits Dans le tableau de bord de l'app → **Add Product** (ou « Use cases ») : - **Facebook Login for Business** → pour l'OAuth (le bouton « Se connecter » du plugin). - **Instagram** (Instagram Graph API / « Instagram API with Facebook Login ») → pour publier les Reels. ### Étape 8 — URI de redirection OAuth Dans **Facebook Login for Business → Settings → Valid OAuth Redirect URIs**, ajoute **exactement** l'URL de la page de réglages du plugin (le plugin te l'affichera, comme pour YouTube). Format attendu : ``` https://staging2.karaokeclip.video/wp-admin/admin.php?page=kcp-settings ``` > Quand tu passeras en production, ajoute **aussi** l'URL du domaine final `https://karaokeclip.video/...`. > Meta refuse toute redirection non listée ici — c'est la cause n°1 d'échec de connexion. ### Étape 9 — Récupérer App ID + App Secret **Settings → Basic** : - **App ID** → tu le colleras dans le réglage `meta_app_id` du plugin. - **App Secret** (bouton *Show*) → réglage `meta_app_secret` (champ mot de passe, jamais réaffiché — comme le secret Google). - Renseigne au passage : **Privacy Policy URL**, **Terms of Service URL**, **App Domain**, catégorie. Ces champs sont **obligatoires pour l'App Review** (étape 10) ; autant les remplir tout de suite. ### Permissions dont le plugin aura besoin Tu n'as rien à « cocher » manuellement ici : le plugin les demandera dans son flux OAuth. Mais pour information, et pour l'App Review, ce sont : | Permission | À quoi elle sert | |---|---| | `pages_show_list` | lister tes Pages pour choisir la bonne | | `pages_read_engagement` | lire les infos de la Page | | `pages_manage_posts` | **publier la vidéo** sur la Page | | `business_management` | accéder au portefeuille pro / liaison IG | | `instagram_basic` | lire le compte IG Business lié | | `instagram_content_publish` | **publier les Reels** Instagram | --- ## PARTIE 3 — Connexion depuis le plugin (au palier B) Une fois le palier B livré, le processus côté plugin sera **calqué sur YouTube** : 1. Réglages → colle **App ID** + **App Secret** → **Enregistrer**. 2. Clique **« Se connecter à Meta »** → fenêtre de consentement Facebook → autorise Page + Instagram. 3. Le plugin échange le code, obtient un **jeton longue durée (~60 jours)**, en dérive le **Page token** et détecte automatiquement l'**IG Business Account ID** lié. Il stocke tout dans une **option dédiée** (jamais dans le blob de réglages — précaution anti-effacement, cf. passation §9.1). 4. Si tu as plusieurs Pages / comptes IG, un menu déroulant te laissera choisir la cible. > **Durée de vie du jeton** : ~60 jours pour le jeton utilisateur longue durée ; le **Page token** qui en dérive > peut être de très longue durée. Le plugin surveillera l'expiration et t'alertera s'il faut reconnecter > (exactement comme le rappel hebdo de Google en mode Test). --- ## PARTIE 4 — Passage en production (App Review + Business Verification) Tant que l'app est en **mode Développement**, elle ne peut publier que via des comptes ayant un **rôle sur l'app** (admin / développeur / testeur). **C'est parfait pour tester tout le palier B sur staging** sans validation Meta. Pour publier **publiquement** (mode Live), Meta demande : 1. **Business Verification** du portefeuille (documents d'entreprise) — via Business Manager. 2. **App Review** des permissions avancées (`pages_manage_posts`, `instagram_content_publish`, etc.) : Meta demande une **vidéo de démonstration** montrant le parcours, et des **URL publiques** de politique de confidentialité / conditions d'utilisation (d'où l'étape 9). 3. App en mode **Live**. > Rien de tout cela ne bloque le développement : on code et on teste **maintenant** en mode Dev. > La revue se déclenche quand le site quitte le staging. --- ## Récapitulatif « ce que tu me fourniras » (au palier B) - **App ID** et **App Secret** (tu les colles dans le plugin, tu ne me les envoies pas en clair ici). - Confirmation que la **Page FB** existe et que l'**Instagram Business** y est **lié**. - L'**URI de redirection** ajoutée dans l'app (le plugin te donnera la valeur exacte à coller). Le reste (Page ID, IG Business ID, jetons) est récupéré **automatiquement** par le plugin. Tu n'as pas à les chercher. *Fin du guide Meta.*