Teknik og sporing
Deduplikering (dedup)
Også kaldet dedup, deduplication, dobbelttælling, duplicate check.
Kort svar
Deduplikering er den kontrol, der sikrer, at samme ordre kun udløser provision en gang. Ordrens id gemmes sammen med programmet, og et gentaget id afvises i stedet for at oprette en ny konvertering.
Definition af Deduplikering (dedup).
Dubletter opstår af helt almindelige årsager. Kunden opdaterer kvitteringssiden, browseren gensender formularen, mobilen mister forbindelsen midt i kaldet og forsøger igen, eller både sporingspixel og webhook rapporterer den samme ordre. Ingen af delene er svindel – det er den normale tilstand på et internet med genforsøg indbygget overalt.
Løsningen er en unik nøgle pr. hændelse. Nøglen består af ordre- eller faktura-id kombineret med programmet, og den håndhæves som en begrænsning i databasen frem for som et tjek i applikationskoden. Forskellen er afgørende: to kald der rammer serveren i samme millisekund vil begge se "ordren findes ikke endnu", hvis kontrollen ligger i koden. En unik constraint i databasen kan kun vinde en gang.
Ordet dækker to ting, der ofte forveksles. Teknisk dedup handler om, at den samme hændelse rapporteres flere gange og kun må tælle en. Kanal-dedup handler om, at to marketingkanaler hver især gør krav på det samme salg – affiliate-linket og annoncen, kunden også klikkede på. Det første er datahygiejne, det andet et attributionsspørgsmål, der afgøres af annoncørens regler.
Nøglen afgør alt
En god dedup-nøgle er noget, butikkens eget system allerede har tildelt og aldrig genbruger: ordrenummeret, faktura-id'et, betalingens id hos betalingsudbyderen. En dårlig nøgle ligner unik uden at være det. Kundens e-mail plus beløbet fejler, første gang nogen bestiller det samme igen, og et tidsstempel fejler, når to ordrer falder i samme sekund.
Nøglen skal desuden bestemmes af butikken, ikke af browseren. Sendes den fra klienten uden binding til noget serveren kan genkende, kan den samme ordre indsendes med et nyt id og passere kontrollen.
Abonnementer må ikke dedupliceres væk
Ved recurring commission er hver fornyelse en ny, gyldig hændelse med sin egen provision. Bruger man abonnementets id som dedup-nøgle, tæller kun den første betaling, og alle fornyelser afvises som dubletter – en fejl der er svær at opdage, fordi systemet opfører sig præcis som det er blevet bedt om.
Nøglen skal derfor indeholde fakturaen frem for abonnementet: faktura-id'et for den enkelte betaling er unikt i forvejen hos betalingsudbyderen.
Sådan går det galt
- 01
Kontrollen ligger kun i applikationskoden
Et tjek på "findes ordren allerede" efterfulgt af en indsættelse er to handlinger med et hul imellem. To samtidige kald kan begge nå gennem hullet. Kun en unik constraint i databasen lukker det.
- 02
Nøglen er ikke unik nok
Sammensatte nøgler af kundeoplysninger og beløb ser unikke ud, indtil den samme kunde bestiller det samme produkt igen. Så bliver et ægte salg afvist som dublet, og affiliaten mister en provision uden at kunne se hvorfor.
- 03
Fornyelser forveksles med dubletter
Abonnementsfornyelser ligner tidligere betalinger på beløb, kunde og program. Er nøglen bundet til abonnementet frem for til fakturaen, forsvinder al løbende provision efter første måned.
Hos Affilyflow
Deduplikering (dedup) i praksis
Hos Affilyflow dedupliceres konverteringer på ordre- eller faktura-id pr. program. Samme ordre kan derfor aldrig tælle to gange, uanset om den kommer ind gennem sporingsscriptet, en Shopify-hændelse eller en Stripe-webhook.
En butiks webhook kan kun kreditere butikkens eget program – peger en hændelse på et andet program, afvises den. Ved abonnementer er nøglen bundet til den enkelte faktura, så fornyelser tæller hver for sig.
Hver eneste tracking-hændelse logges – også de afviste. En dublet forsvinder ikke i stilhed: den står i hændelsesloggen, så det kan efterprøves bagefter.
Ofte stillede spørgsmål
Hvad betyder deduplikering i affiliate marketing?
Deduplikering er den kontrol, der forhindrer, at den samme ordre udløser provision mere end en gang. Ordrens id gemmes sammen med programmet, og bliver den samme ordre rapporteret igen, afvises den frem for at blive registreret som en ny konvertering.
Hvorfor bliver den samme ordre rapporteret to gange?
Fordi genforsøg er indbygget overalt. Kunden opdaterer kvitteringssiden, browseren gensender formularen, forbindelsen falder ud midt i kaldet, eller både sporingspixel og webhook melder ordren ind fra hver sin side. Det er normal adfærd og ikke et tegn på svindel.
Hvordan undgår man at betale provision to gange for samme salg?
Ved at binde hver konvertering til en unik nøgle, butikkens eget system har tildelt – typisk ordrenummeret eller faktura-id'et – og håndhæve den i databasen frem for i koden. Et tjek i koden kan omgås af to kald der rammer samtidig; en unik constraint kan ikke.
Bliver abonnementsfornyelser dedupliceret væk?
Det må de ikke. Hver fornyelse er en selvstændig betaling med sin egen provision, og dedup-nøglen skal derfor indeholde fakturaen frem for abonnementets id. Er nøglen bundet til abonnementet, tæller kun første betaling.
Læs videre
- Klik-idKlik-id er den unikke identifikator, et tracking-system genererer for hvert klik på et affili…
- WebhookEn webhook er et automatisk HTTP-kald, et system sender til et andet, når en hændelse indtræf…
- SporingspixelEn sporingspixel er et lille kodestykke – oprindeligt et usynligt billede på 1×1 pixel – på e…
- Recurring commissionRecurring commission er en provisionsmodel, hvor affiliaten optjener provision ved hver forny…
- Godkendelse af salgGodkendelse af salg er det trin i affiliate-afregningen, hvor butikken bekræfter, at en regis…