Il connettore WooCommerce di AFFYNOR
Sincronizza ordini, catalogo e rimborsi dal tuo negozio WooCommerce e attribuisci le vendite alle tue campagne pubblicitarie (click ref e ttclid di TikTok) con riconciliazione automatica.
1. Installazione
1.1 Creare le chiavi del consumatore (permessi di lettura e scrittura)
WooCommerce → Impostazioni → Avanzate → REST API → «Aggiungi chiave». Permessi: lettura/scrittura (registrare i webhook richiede la scrittura). Il negozio deve essere raggiungibile via HTTPS.
1.2 Collegarsi dalla piattaforma
In Il mio negozio → scheda WooCommerce, inserisci l'URL di base del negozio, la chiave del consumatore e il segreto del consumatore. Il collegamento viene convalidato all'istante e resta attivo.
1.3 Installare lo snippet di attribuzione
Lo snippet ha due parti: il gancio PHP (functions.php o uno snippet di codice) che stampa l'ordine nella pagina di ringraziamento, e il JavaScript (GTM o il tema) che registra il riferimento e lancia l'evento di acquisto.
add_action('woocommerce_thankyou', function ($order_id) {
if (!$order_id) return;
$order = wc_get_order($order_id);
echo '<div id="affynor-order" data-affynor-order-id="' . esc_attr($order->get_id())
. '" data-affynor-order-total="' . esc_attr($order->get_total())
. '" data-affynor-order-currency="' . esc_attr($order->get_currency()) . '" style="display:none"></div>';
}, 10);<script>!function(){var S="https://affynor.com",K="TU_SECRETO";function u(n){try{return new URLSearchParams(location.search).get(n)}catch(e){}}function c(n){try{return document.cookie.split("; ").find(function(x){return x.indexOf(n+"=")===0}).slice(n.length+1)}catch(e){}}var r=u("affynor_ref")||c("affynor_ref")||c("tiktok_ttclid");if(r){try{document.cookie="affynor_ref="+encodeURIComponent(r)+"; path=/; max-age=31536000"}catch(e){}}var b=u("fbclid")||c("affynor_fbc");if(b&&!/^fb[.]/.test(b)){b="fb.1."+Date.now()+"."+b}if(b){try{document.cookie="affynor_fbc="+encodeURIComponent(b)+"; path=/; max-age=31536000"}catch(e){}}function f(o){try{fetch(S+"/store/pixel",{method:"POST",headers:{"Content-Type":"application/json","x-affynor-pixel-secret":K},body:JSON.stringify({order_id:o.id,revenue_cents:Math.round(+o.total*100),currency:o.cur||"EUR",ref_code:r,fbclid:b})})}catch(e){}}window.affynorPixel=f;function a(){var e=document.getElementById("affynor-order");if(e)f({id:e.getAttribute("data-affynor-order-id"),total:e.getAttribute("data-affynor-order-total")||"0",cur:e.getAttribute("data-affynor-order-currency")});}if(/thank|gracias|success|pedido|confirm/i.test(location.pathname))setTimeout(a,400)}();</script>Sostituisci TU_SECRETO con il segreto del pixel mostrato nella scheda del negozio collegato.
2. Attribuzione
Il parametro affynor_ref nell'URL dell'annuncio (o il ttclid di TikTok) viene salvato in un cookie e allegato all'ordine nella pagina di ringraziamento. Lo snippet salva anche il fbclid di Meta — nel formato fb.1.<timestamp>.<fbclid> — così la conversione può essere abbinata al clic su Meta. L'evento resta in attesa e viene riconciliato automaticamente con gli ordini sincronizzati: solo le vendite verificate vengono attribuite alle tue campagne.
3. Sincronizzazione
I webhook di WooCommerce (order.created, order.updated, product.created, product.updated) consegnano le modifiche in tempo reale; una sincronizzazione di sicurezza percorre il negozio ogni 10 minuti — compresi i rimborsi via GET /orders/{id}/refunds — così nessun ordine resta senza registrazione anche se il cron di WordPress fallisce.
4. Rimborsi
I rimborsi vengono sincronizzati automaticamente e sottratti dal ricavo attribuito del mese. Un ordine interamente rimborsato viene rifiutato in fase di riconciliazione: non genera mai provvigione.
5. Modello di commissione
15% del ricavo attribuito del mese, con un minimo di 129,90 €. Se il mese non ha vendite attribuite, il minimo non si applica (il primo mese è gratuito). Il minimo è per commerciante anche con più negozi collegati (per esempio Shopify + WooCommerce).
6. Risoluzione dei problemi
Il cron di WordPress del commerciante è disattivato o in ritardo
Controlla il cron in WP; nel frattempo la sincronizzazione di sicurezza (ogni 10 minuti) copre gli ordini. Documentato nelle domande frequenti.La variante della firma (body contro delivery_url+body) o il segreto del consumatore non coincidono
Ricalcola l'HMAC con il segreto del consumatore attuale e ricrea il webhook con quel segreto.Chiave del consumatore revocata o senza permesso di lettura/scrittura
Rigenera la chiave in WooCommerce e ricollega dalla scheda.Lo snippet non è partito (blocco annunci, cookie, pagina diversa da quella di ringraziamento)
Controlla lo snippet nella pagina di ringraziamento; l'evento resta PENDING finché la sincronizzazione non lo riconcilia.7. Stato e piano di sviluppo
Il connettore è in convalida con commercianti pilota: collegamento, attribuzione e sincronizzazione sono completi (fasi A–D); la convalida in negozi reali (fase E) è in corso. Pubblicarlo come estensione nel marketplace di WooCommerce è la prossima tappa.