Sync Prodotti da BC – Push Webhook Global Attributes V20
PHP connector used to sync products, users and orders between Woocommerce and Microsoft Buisness Central
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/andreabonfadini/cbconnector/archive/refs/heads/main.zipSPDA Push Sync Global Attributes V20
Plugin WordPress per sincronizzare prodotti da BigCommerce a WooCommerce tramite webhook, utenti registrati e ordini completati con API esterna.
Nuove Funzionalità v2.2
Sincronizzazione Automatica Ordini
Il plugin ora sincronizza automaticamente ogni ordine completato con l'API esterna di Navision.
Endpoint API Ordini: ``` POST http://webnavision.kimar.it:8048/TEST_IT_API/ODataV4/ecommercemanagement_CreateNewOrderEcommerce?Company=KIMAR ```
Payload automatico: ```json { "order_id": 123, "total": 99.99, "currency": "EUR", "status": "completed", "payment_method": "paypal", "payment_method_title": "PayPal", "customer": { "id": 5, "name": "Mario Rossi", "email": "mario@example.com", "phone": "1234567890", "address": { "line_1": "Via Roma 10", "line_2": "", "city": "Milano", "postcode": "20100", "country": "IT" } }, "products": [ { "product_id": 1, "name": "Laptop HP", "sku": "LAP-HP-001", "quantity": 2, "price": 49.99 } ], "order_date": "2024-01-15 14:30:00", "order_notes": "Note del cliente" } ```
Caratteristiche Sincronizzazione Ordini
- ✅ Automatica: Si attiva al completamento ordine o conferma pagamento
- ✅ Dati completi: Include tutti i dettagli ordine, cliente e prodotti
- ✅ Prevenzione duplicati: Ogni ordine viene sincronizzato una sola volta
- ✅ Stato visibile: Mostra stato sincronizzazione nella pagina ordine admin
- ✅ Logging dettagliato: Log completi per debug
- ✅ Hook multipli: Cattura sia
order_completedchepayment_complete
Trigger Sincronizzazione
Gli ordini vengono sincronizzati quando:
- Lo stato dell'ordine diventa "Completato"
- Il pagamento viene confermato (anche se ordine è ancora "In elaborazione")
Funzionalità Complete
1. Sincronizzazione Prodotti (v1.0+)
- Webhook endpoint per ricevere prodotti da BigCommerce
- Mapping attributi globali (Caliber, BarrelLenght, Finishing)
- Gestione campi personalizzati (NetWeight, EANCode, TypeofUse)
2. Sincronizzazione Utenti (v2.1+)
- Invio automatico dati utenti registrati
- Include dati fatturazione WooCommerce
- Stato visibile nel profilo utente admin
3. Sincronizzazione Ordini (v2.2+)
- Invio automatico ordini completati
- Dati completi cliente, prodotti e pagamento
- Prevenzione duplicati e stato visibile
Installazione
- Scarica tutti i file
- Crea una cartella chiamata
spda-push-sync-global-attributes-v20 - Inserisci tutti i file nella cartella
- Comprimi la cartella in un file ZIP
- Carica il ZIP tramite WordPress Admin > Plugin > Aggiungi nuovo > Carica plugin
Configurazione
Endpoint Webhook Prodotti
``` POST https://tuosito.com/wp-json/spda/v1/webhook ```
Headers richiesti (solo prodotti)
``` Content-Type: application/json X-SPDA-SECRET: my_super_secret_123 ```
Monitoraggio
Utenti:
- Vai su Utenti nel pannello admin WordPress
- Clicca su Modifica per un utente
- Scorri fino alla sezione "Sincronizzazione API Esterna"
Ordini:
- Vai su WooCommerce > Ordini
- Clicca su un ordine per visualizzarlo
- Vedrai la sezione "Sincronizzazione API Esterna" nei dettagli ordine
Debug
Per attivare i log di debug:
-
Aggiungi in
wp-config.php: ```php define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); ``` -
Controlla i log in
/wp-content/debug.log
Log Ordini
I log includeranno messaggi come: ``` SPDA V20: Order 123 successfully synced to external API SPDA V20: Sending order data to external API: {"order_id":123,"total":99.99...} SPDA V20: Order API response code: 200 SPDA V20: Order 123 already synced, skipping ```
Sicurezza
⚠️ IMPORTANTE: Cambia il valore di my_super_secret_123 nel file PHP con una chiave segreta più sicura prima di usare in produzione.
Supporto
Per problemi o domande:
- Controlla i log di debug
- Verifica che WooCommerce sia attivo
- Controlla lo stato sincronizzazione negli ordini/utenti
- Verifica la connettività con l'API esterna ```