-
L'utente si registra nell'app (tramite Firebase Auth)
-
Il backend Express chiama:
POST /wp-json/firebase/v1/create-user
-
WordPress crea l'utente WooCommerce corrispondente, con ruolo
customer
- L’utente si registra tramite
/my-account
o in fase di checkout - WooCommerce intercetta la password da
$_POST
- Alla creazione dell’utente (
user_register
), WordPress chiama il backend Express per creare l’utente su Firebase
-
Se l’utente viene eliminato in Firebase (es. da pannello admin), il backend Express chiama:
DELETE /wp-json/firebase/v1/delete-user/:email
-
WordPress cerca l’utente tramite email ed esegue
wp_delete_user()
-
Tutte le chiamate server-to-server sono protette via header:
X-WP-Secret: <shared secret>
-
Nel file
wp-config.php
, aggiungi:define('FIREBASE_SYNC_SECRET', 'la-tua-chiave-super-segreta'); define('FIREBASE_SYNC_ENDPOINT', 'https://tuo-backend.it/api/firebase-sync');
-
Installa il plugin all’interno di WordPress (come plugin ZIP oppure via FTP)
-
Aggiungi le costanti nel
wp-config.php
come indicato sopra -
Il tuo backend Express deve:
- Esporre
/api/firebase-sync
(protetto daX-WP-Secret
) - Chiamare
/wp-json/firebase/v1/create-user
ogni volta che registra un nuovo utente Firebase - Chiamare
/wp-json/firebase/v1/delete-user/:email
quando elimina un utente
- Esporre
- Il plugin logga tutto solo se
WP_DEBUG === true
- Tutti i
error_log()
sono condizionati, quindi in produzione non scrive nulla
- Registrazione Woo → Firebase
- Registrazione Firebase → Woo
- Cancellazione Firebase → Woo (
DELETE /delete-user/:email
) - Sicurezza server-to-server
- Logging controllato da
WP_DEBUG
- Pulizia automatica dei dati sensibili (password via
transient
TTL)