Veiledning for WooCommerce-integrasjon
Denne veiledningen kobler en WooCommerce-butikk til Tajo. Integrasjonen består av to halvdeler som jobber sammen:
- Tillegget Tajo for WooCommerce: fanger opp engasjementshendelser (ordrer, handlekurver, refusjoner, anmeldelser, skjemainnsendinger) inne i WordPress etter hvert som de skjer, og leverer dem til Tajo gjennom en holdbar, signert utboks. Tillegget ble testet på et lokalt nettsted 14. oktober 2026, og 24. oktober 2026 gikk de signerte leveringene gjennom Tajos kobling i et lokalt sandkassemiljø; nettverksturen fra et ekte nettsted til Tajo er ikke verifisert ennå.
- WooCommerce REST-tilkobling: Tajo leser butikkens kunder, ordrer, produkter, rabattkoder, refusjoner og anmeldelser for historisk import og løpende synkronisering. Se referansen for WooCommerce-koblingen for oppsett med kun REST.
Selve markedsautomatiseringen (e-post, SMS, WhatsApp via Brevo og andre leverandører) settes opp i Tajo, ikke i tillegget. Tilleggets oppgave er å få troverdige hendelser ut av WordPress.
Forutsetninger
- WordPress 6.3+ med administratortilgang
- PHP 7.4+
- WooCommerce 7.0+ (tillegget fungerer også på WordPress-nettsteder uten WooCommerce; handelsadapterne holder seg da bare inaktive)
- Tajo-konto med en opprettet WordPress-tilkobling
- HTTPS på Tajo-endepunktet (alltid tilfellet for Tajo som vi drifter)
Trinn 1: Installer tillegget Tajo for WooCommerce
Manuell installasjon
# Download the plugincd wp-content/pluginswget https://tajo.io/downloads/woocommerce/tajo-woocommerce-latest.zip
# Verify and unzipunzip tajo-woocommerce-latest.zipAktiver deretter fra WordPress-administrasjonen:
- Gå til Plugins → Installed Plugins
- Finn «Tajo for WooCommerce»
- Klikk Activate
Du kan også laste opp zip-filen direkte via Plugins → Add New → Upload Plugin. En SHA-256-kontrollsum publiseres sammen med hver utgivelse på tajo.io/downloads/woocommerce/. Tillegget er ennå ikke oppført i katalogen på WordPress.org; manuell installasjon er den støttede veien i dag.
Trinn 2: Konfigurer tilkoblingen
Gå til WooCommerce → Tajo (på nettsteder uten WooCommerce: Settings → Tajo) og fyll inn de tre verdiene fra WordPress-tilkoblingen din i Tajo:
| Felt | Verdi |
|---|---|
| Tajo-endepunkt | HTTPS-webhook-URL-en som vises i Tajo, for eksempel https://alto.tajo.io/api/connectors/wordpress/webhooks/engagement |
| Binding-ID | Tilkoblingens binding-ID fra Tajo |
| Signeringshemmelighet | Den delte hemmeligheten (32 til 256 tegn). Tillegget genererer en sterk lokal hemmelighet ved aktivering; lim den inn i Tajo, eller lim inn hemmeligheten fra Tajo her |
Det finnes ingen API-nøkkelkonstanter å legge til i wp-config.php. Hendelsene ligger trygt i kø i den lokale utboksen til alle tre verdiene er lagret.
Verifiser deretter hele røret fra ende til ende:
- Klikk Queue test event, og deretter Process now.
- Leveringstabellen for utboksen skal vise hendelsen som levert.
- I Tajo bekrefter du at hendelsen
connection.testkom frem på WordPress-tilkoblingen.
Hva tillegget sender
Hver hendelse er en kompakt, personvernminimert konvolutt signert med HMAC-SHA256. Bare identitetsfelter for engasjement (e-post, telefon, lokale ID-er) pluss avgrensede hendelsesmetadata forlater WordPress, aldri navn, postadresser, IP-adresser, user agents, kommentartekster, vilkårlige skjemafelter, ordrenotater eller betalingsdetaljer.
WooCommerce-hendelser
| Hook | Hendelse |
|---|---|
woocommerce_created_customer / woocommerce_update_customer | customer.created / customer.updated |
woocommerce_new_product / woocommerce_update_product | product.created / product.updated |
woocommerce_add_to_cart, fjerning av vare, bruk eller fjerning av rabattkode | cart.updated (med sammendrag av handlekurven for flyter mot forlatte kurver) |
woocommerce_cart_emptied | cart.emptied |
woocommerce_new_order / woocommerce_update_order | order.placed / order.updated |
woocommerce_order_status_changed | order.status_changed (+ order.fulfilled ved fullføring) |
woocommerce_payment_complete | order.paid |
woocommerce_order_refunded | refund.created |
| Statusoppdateringer i WooCommerce Subscriptions | subscription.status_changed |
Ordrehendelser bærer ordrenummer, status, valuta, totaler, ordrelinjer og ferdige URL-er for anmeldelse og gjenbestilling, nok til automatiseringer etter kjøp og win-back uten et oppfølgende API-kall.
WordPress-hendelser
contact.created/contact.updated/contact.deletedfor brukerkontoercontent.published/content.updated/content.unpublishedfor offentlig innholdcomment.created/comment.status_changedfor kommentarer fra besøkende og produktanmeldelser (interne ordrenotater i WooCommerce, pingbacks og trackbacks sendes aldri)form.submittedfor vellykkede innsendinger fra Contact Form 7, WPForms, Gravity Forms og Fluent Forms: bare typede identitetsfelter for e-post og telefon samt skjemametadata hentes ut; vilkårlige innsendte felter forkastes
Pålitelighet: leveringsutboksen
Tillegget fyrer aldri hendelser mot Tajo direkte fra en sidevisning. Hver hendelse skrives først til en lokal utbokstabell, og leveres deretter av WP-Cron med:
- Avgrenset eksponentiell backoff (opptil 8 forsøk, med respekt for
Retry-After) - Dead letters med ett klikk på Replay dead letters i administrasjonen
- Oppbevaringsgrenser, slik at et utilgjengelig endepunkt aldri kan hamstre persondata (levert: 7 dager; i kø: 30 dager; dead letters: 30 dager etter siste oppdatering)
- Idempotente hendelses-ID-er, slik at nye forsøk og replays aldri dupliserer nedstrøms
Hvis leverandøren din slår av WP-Cron (DISABLE_WP_CRON), må du kalle wp-cron.php fra en ekte planlegger minst én gang i minuttet.
Samtykke utledes aldri
Kontoopprettelse, checkout, kjøp og vanlige skjemainnsendinger regnes ikke som markedsføringssamtykke. Innebygde hendelser bærer en tom samtykkeliste. For å registrere uttrykkelig samtykke (for eksempel fra en avkrysset nyhetsbrevboks) sender du det gjennom utvidelseshooken:
do_action( 'tajo_engagement_emit', 'consent.updated', array( 'email' => $email ), array( 'policyVersion' => '2026-07' ), array( array( 'channel' => 'email', 'status' => 'opt_in', // or 'opt_out' 'purpose' => 'marketing', 'source' => 'newsletter_checkbox', 'evidence' => array( 'formId' => 'newsletter-footer', 'field' => 'marketing_email' ), ), ), gmdate( 'c' ));Den samme hooken lar hvilket som helst tillegg eller tema sende egendefinerte hendelser; alt går gjennom den samme saneringen, den samme utboksen og den samme signaturen.
Trinn 3: Historisk import
Hendelser fra tillegget dekker alt fra installasjonen og fremover. For historikken som ligger før tillegget, importerer Tajos WooCommerce REST-tilkobling eksisterende kunder, ordrer, produkter, rabattkoder, refusjoner og anmeldelser, konfigurert utelukkende på Tajo-siden med en WooCommerce REST API-nøkkel (WooCommerce → Settings → Advanced → REST API, lesetillatelse). Se referansen for WooCommerce-koblingen for detaljer.
Personvern og GDPR
- Tillegget registrerer seg hos WordPress under Tools → Export Personal Data og Tools → Erase Personal Data; lagrede utbokshendelser for en e-postadresse som treffer, eksporteres eller slettes lokalt.
- Sletting og levering deler en fail-closed mutex, slik at en sletting aldri kan melde seg ferdig mens en payload er midt i sendingen.
- Lokal sletting dekker bare utboksen i WordPress: send den tilsvarende forespørselen i Tajo for data nedstrøms.
- Deaktivering setter leveringen på pause, men beholder konfigurasjon og hendelser i kø; å slette tillegget fjerner utboksen, innstillingene, hemmeligheten og planleggingene permanent.
Kompatibilitet
- HPOS: tillegget erklærer kompatibilitet med WooCommerce High-Performance Order Storage og bruker bare CRUD-objekter og offentlige hooks.
- WooCommerce Subscriptions: statusendringer på abonnementer fanges opp når utvidelsen er aktiv.
- Multisite: avinstallering rydder opp på hvert eneste nettsted i nettverket.
Operasjonsreferanse
Oppdagelse fra server til server og styring av utboksen er tilgjengelig for administratorer via autentisering med Application Password:
| Metode | Rute | Formål |
|---|---|---|
GET | /wp-json/tajo/v1/capabilities | Tilleggets versjon, oppdagede adaptere, hendelsesoversikt, helsen til utboksen |
GET | /wp-json/tajo/v1/outbox | Antall i utboksen (payloads eksponeres aldri) |
POST | /wp-json/tajo/v1/outbox/process | Behandle en batch umiddelbart |
POST | /wp-json/tajo/v1/outbox/replay | Spill av dead letters på nytt |
Feilsøking
| Symptom | Årsak og løsning |
|---|---|
| Hendelser blir stående som «Queued» | Endepunkt, binding-ID eller hemmelighet er ikke lagret ennå: leveringen står på pause til alle tre er konfigurert |
| Hendelser blir stående som «Retrying» | Tajo-endepunktet er ikke tilgjengelig fra serveren din, eller WP-Cron kjører ikke: sjekk feilkolonnen i utbokstabellen og cron-oppsettet ditt |
| Dead letters hoper seg opp | En feil som ikke kan prøves på nytt (som regel feil binding-ID eller hemmelighet): rett konfigurasjonen, og velg deretter Replay dead letters |
| «Enter a valid HTTPS Tajo webhook endpoint» | Endepunktet må være HTTPS uten innebygde påloggingsdetaljer |
| Testhendelsen ble levert, men ingenting dukker opp i Tajo | Sjekk at du limte inn binding-ID-en fra det samme Tajo-arbeidsområdet og den samme tilkoblingen som endepunktet hører til |
Neste steg
- Referanse for WooCommerce-koblingen: REST-synkronisering, detaljer om webhook-signatur, konfigurasjonsnøkler
- Kundesynkronisering: hvordan WooCommerce-kunder kartlegges inn i kildesystemet ditt
- Sett opp automatiseringer for forlatte handlekurver, etter kjøp og win-back i Tajo ved hjelp av hendelsene
cart.updated,order.placedogorder.fulfilled