Introduction

Dans les pays où la publicité pour les services financiers est réglementée, Meta peut demander aux annonceurs de vérifier leur identité et leur licence financière. Les organismes de régulation fourniront à Meta un ensemble de données contenant les licences financières, que Meta utilisera pour valider les licences envoyées par les annonceurs. Ce document explique comment les organismes de réglementation partagent en toute sécurité les données de licence avec Meta et décrit les spécifications techniques de l’intégration.

Présentation

L’intégration fonctionne comme suit :

  1. Meta fournit des identifiants SFTP : Meta envoie les informations de connexion à l’adresse e-mail confirmée de l’organisme de réglementation.
  2. L’organisme de réglementation importe deux fichiers : un fichier config.json (métadonnées) et un fichier CSV (données de licence) sont importés sur le serveur SFTP sécurisé de Meta. Instructions pour importer des fichiers.
  3. Meta ingère les données : les fichiers sont traités périodiquement.
  4. L’organisme de réglementation importe régulièrement : les organismes de réglementation sont responsables de l’importation hebdomadaire des fichiers mis à jour.

Qu’est-ce que le fichier config.json ?

Le fichier config.json est un manifeste contenant des métadonnées nécessaires au traitement. Ce fichier doit être inclus pour chaque importation.

Champs

ChampTypeObligatoireDescriptionValeurs autorisées

version

chaîne

Oui

Version de schéma utilisée pour le fichier CSV de licence.

« v1 »

load_type

chaîne

Oui

S’il s’agit d’un ensemble de données complet ou d’une mise à jour incrémentale (deltas uniquement).

« full », « incremental »

mode

chaîne

Oui

  • Validation : le fichier CSV est vérifié pour s’assurer de son exactitude et de son intégrité, mais pas ingéré.
  • Ingestion : le fichier CSV est validé (à l’aide des mêmes vérifications que le mode de validation), puis intégré dans le pipeline.

« validation », « ingestion »

support_email_addresses

tableau de chaînes

Oui

Adresses e-mail surveillées que Meta peut utiliser pour la prise de contact dans le cadre de l’ingestion des données.

Exemple

{
  "version": "v1",
  "load_type": "full",
  "mode": "ingestion",
  "support_email_addresses": [
    "support@domain.com",
    "support2@domain.com"
  ]
}

Données de licence (CSV)

Les données de licence sont fournies au format CSV. Vous pouvez attribuer n’importe quel nom au fichier. Il existe deux types de chargement :

  • Chargement complet : contient l’ensemble complet de toutes les données de licence.
  • Chargement incrémental : contient uniquement les modifications (deltas) depuis la dernière importation.

Règles générales

  • Les en-têtes de colonne doivent figurer sur la première ligne.
  • Tous les en-têtes de colonne doivent être uniques.
  • Toutes les colonnes requises doivent être présentes.
  • Chaque ligne doit comprendre un Credential_Id unique.
  • Les erreurs au niveau des lignes ne bloquent pas le fichier dans son intégralité. Les lignes valides sont toujours ingérées. Par exemple, si 50 lignes sur 100 000 comportent des erreurs, les 99 950 lignes restantes sont traitées normalement.

Schéma de chargement complet (V1)

ColonneObligatoireTypeDescriptionFormat / Valeurs autoriséesExemple

Credential_Id

Oui

chaîne

Identifiant unique de la licence. Affiché sur les publicités pour des services financiers publiées.

200 caractères maximum

123456789

License_Status

Oui

chaîne

Statut de la licence.

ACTIVE, INACTIVE, LEGALLY_EXEMPT

ACTIVE

Licensee_Name

Oui

chaîne

Nom enregistré pour la licence.

200 caractères maximum

Jane Doe

Licensee_Type

Oui

chaîne

Type d’entité détenant la licence.

INDIVIDUAL, FIRM, UNKNOWN*

INDIVIDUAL

License_Expiration_Date

Non

nombre

Date d’expiration de la licence.

Horodatage Unix

946684800

Address_Line_1

Non

chaîne

Adresse postale principale.

200 caractères maximum

123 Rue principale

Address_Line_2

Non

chaîne

Adresse postale secondaire.

200 caractères maximum

Suite 100

City

Non

chaîne

Ville, localité, commune ou municipalité.

200 caractères maximum

San Francisco

State

Non

chaîne

État, province, préfecture, comté ou région.

200 caractères maximum

CA

Country_Code

Non

chaîne

Pays du titulaire de la licence.

ISO 3166-1 alpha-2 (2 caractères max.)

US

Postal_Code

Non

chaîne

Code postal.

12 caractères maximum

94016

Phone_Numbers

Vous devez indiquer au moins l’un des champs suivants : Phone_Numbers, Email_Addresses ou Website_URLs.

chaîne

Les numéros de téléphone enregistrés pour la licence.

Valeurs séparées par des points-virgules ; Format E.164 ; 16 caractères maximum chacun (préfixe + inclus)

+15551234567 ; +15559876543

Email_Addresses

Vous devez indiquer au moins l’un des champs suivants : Phone_Numbers, Email_Addresses ou Website_URLs.

chaîne

Adresses e-mail enregistrées pour la licence.

Valeurs délimitées par un point-virgule ; 254 caractères maximum chacune

jane.doe@gmail.com ; info@firm.com

Website_URLs

Vous devez indiquer au moins l’un des champs suivants : Phone_Numbers, Email_Addresses ou Website_URLs.

chaîne

Sites Web enregistrés pour la licence. Doit être précédée de « http:// » ou « https:// ».

Valeurs délimitées par un point-virgule ; 2 000 caractères maximum chacune

https://www.exemple.com ; https://www.exemple2.com

Pour éviter l’usurpation d’identité, la fraude et les abus sur les plateformes publicitaires de Meta, une vérification de connexion est essentielle. Les données de licence financière importées doivent fournir au moins l’un des éléments suivants pour chaque licence : numéros de téléphone, adresses e-mail ou URL de site Web pour effectuer cette vérification. Cela garantit que l’annonceur qui essaie de faire de la publicité utilise une licence liée à l’entité dans la vérification.

Schéma incrémental (V1)

Le schéma incrémental utilise les mêmes colonnes que le schéma de chargement complet, ainsi qu’une colonne requise supplémentaire :

ColonneObligatoireTypeDescriptionValeurs autorisées

Opération

Oui

chaîne

Opération à effectuer sur cette ligne.

UPSERT, DELETE

Règles d’opération

  • UPSERT : ajoute une nouvelle licence ou met à jour une licence existante. Suit les mêmes règles que le schéma de chargement complet concernant les champs obligatoires et facultatifs.
  • DELETE : supprime une licence. Seul Credential_Id est obligatoire, tous les autres champs sont facultatifs.

Exemple de scénario de charge incrémentale

Un ensemble de données initial contient trois licences : A, B, C.

Les modifications suivantes se produisent ensuite :

  • La licence B est mise à jour.
  • La licence C est supprimée.
  • La licence D est ajoutée.

Le fichier CSV incrémental contiendrait :

Credential_IdOpération...

B

UPSERT

(autres champs)

C

DELETE

D

UPSERT

(autres champs)

La licence A n’est pas incluse car elle n’a pas été modifiée.

L’horodatage de votre dernier ensemble de données ingéré est disponible dans le dossier ingestion_history/ sur SFTP (voir ci-dessous).

Processus d’importation et d’ingestion SFTP

Modalités d’importation

  1. Connectez-vous au serveur SFTP à l’aide des identifiants fournis par Meta.
  2. Importez à la fois config.json et votre fichier de données CSV dans votre répertoire par défaut.
  3. Attendez le traitement. Les fichiers peuvent être validés plusieurs fois par jour en utilisant le mode validation dans config.json. Cependant, les données ne peuvent être ingérées qu’une seule fois par jour.

Que se passe-t-il après l’importation ?

  • Après traitement, les deux fichiers sont automatiquement déplacés vers un validation_history/ ou un ingestion_history/ répertoire, en fonction du mode défini dans config.json. Si le fichier CSV importé contient des erreurs au niveau des lignes, telles que des valeurs requises manquantes ou des valeurs non valides, un fichier CSV distinct détaillant ces erreurs sera généré. Avant d’effectuer une ingestion, utilisez le mode validation pour confirmer que vos fichiers seront correctement traités.
  • Chaque exécution crée un dossier horodaté (par exemple, 2026-03-11T12-23-56Z/) contenant les fichiers exacts utilisés dans le répertoire d’historique.
  • Si vos fichiers se trouvent toujours dans le répertoire par défaut (et non dans ingestion_history/ ou validation_history/), cela signifie qu’ils n’ont pas encore été traités.
  • Rétention : le serveur SFTP ne conserve les fichiers que pendant 30 jours.

Exemple : avant et après l’ingestion

Voici un aperçu de la structure du fichier avant et après une nouvelle ingestion le 11/03/26 impliquant data1.csv et config.json avec le mode ingestion.

Avant ingestion

config.json
data1.csv
ingestion_history/
  └── 2026-03-06T04-20-17Z/
       ├── config.json
       ├── license_data.csv
       ├── csv_errors.csv
validation_history/
  └── 2026-03-11T05-18-14Z/
       ├── config.json
       ├── data1.csv
       ├── csv_errors.csv
  └── 2026-03-06T01-15-24Z/
       ├── config.json
       ├── license_data.csv
       ├── csv_errors.csv

Après ingestion

ingestion_history/
  └── 2026-03-11T12-23-56Z/
       ├── config.json
       ├── data1.csv
  └── 2026-03-06T04-20-17Z/
       ├── config.json
       ├── license_data.csv
       ├── csv_errors.csv
validation_history/
  └── 2026-03-11T05-18-14Z/
       ├── config.json
       ├── data1.csv
       ├── csv_errors.csv
  └── 2026-03-06T01-15-24Z/
       ├── config.json
       ├── license_data.csv
       ├── csv_errors.csv

Pour déclencher une autre ingestion, importez à nouveau de nouveaux fichiers dans votre répertoire par défaut.

Remarques importantes

  • Temps de traitement : les données peuvent prendre jusqu’à 1 jour pour apparaître dans le système de Meta après l’ingestion.