Communicatie

Discord is geen enterprise-tool. Voor een community of creator-bedrijf is dat precies het punt

Een bedrijf dat zijn community op Discord draait is meestal een van een paar soorten: een gamestudio of gaming-aanverwant merk, een creator met een betaald lidmaatschap, of een open source- of softwareproject waar Discord de plek is waar gebruikers elkaar al spreken. Geen van die groepen is het publiek waarvoor de meeste koppelingsteksten geschreven zijn, en doen alsof Discord een Slack-vervanger voor een gewoon kantoor is mist waar het echt goed in is.

Wat de moeite van het koppelen waard is, is smaller dan een CRM-feed: wie heeft betaald en moet toegang krijgen, welke rol iemand hoort te hebben, en welke handvol events de community zelf moet horen. Al de rest — verkooppijplijnen, facturatie, HR — hoort op een andere pagina in deze bank, niet vastgeplakt aan een Discord-server.

  • Webhook voor berichten, bot voor alles dat handelt
  • Rollen gekoppeld aan een betaald abonnement op je site
  • Vanaf € 1.700 plus servicekosten
De tool

Wat Discord is, en de twee manieren om ermee te koppelen

Discord is een chatplatform ingericht rond servers, kanalen en rollen, oorspronkelijk gebouwd voor gamers en nu het standaardthuis voor een veel breder scala aan online communities. Een webhook is de simpele route erin: een URL die een bericht in één kanaal plaatst, geen servercode, vergelijkbaar met een incoming webhook bij Slack — genoeg voor eenrichtingsmeldingen zoals een nieuwe verkoop of een stream die live gaat.

Een bot is de andere route, en degene die meer kan dan praten: hij kan lezen wie er op de server zit, een rol toewijzen of intrekken, reageren op een slash-command, of checken of een Discord-account gekoppeld is aan een betalende klant voordat die toegang krijgt tot een alleen-leden-kanaal. Zo'n bot draaien betekent hem betrouwbaar hosten en zijn token geheimhouden, meer infrastructuur dan een webhook maar wat elke lidmaatschaplogica echt nodig heeft.

Wat er misgaat

Drie dingen die misgaan op een Discord-server die aan een betaald product hangt

Deze komen voort uit lidmaatschap met de hand beheren op een platform dat nooit is gebouwd om te checken wie heeft betaald.

Iemand zegt op, en houdt de rol maanden

Een lid zegt zijn abonnement op de website op. Niemand aan de Discord-kant hoort dat, dus blijft de betaalde rol staan, blijven de betaalde kanalen zichtbaar, en de enige manier waarop dit wordt gevonden is een handmatige controle die iemand ooit doet en voor zich uitschuift.

Wat je in plaats daarvan ziet

Een opzegging op de site haalt de rol binnen enkele minuten weg, automatisch, op dezelfde manier waarop een actief abonnement hem toekent.

Een nieuw betalend lid zit te wachten in het verkeerde kanaal

Iemand neemt een abonnement, moet apart gezegd worden dat hij de Discord-server moet joinen en welk kanaal van hem is, en wacht — soms dagen — tot een moderator het opmerkt en de rol met de hand toewijst. Het lidmaatschap dat impulsief werd gekocht is inmiddels afgekoeld tegen de tijd dat het echt begint.

Wat je in plaats daarvan ziet

Een betaling triggert de uitnodigingslink en de rol samen, zodat de server joinen en toegang krijgen dezelfde actie zijn, geen twee stappen met een wachttijd ertussen.

Elke servergebeurtenis pingt @everyone, en mensen dempen de server voorgoed

Een goedbedoelde opzet kondigt elke verkoop, elk nieuw lid en elke kleine update aan de hele server aan. Binnen enkele weken hebben de meeste leden de server helemaal gedempt, waardoor de ene aankondiging die er echt toe deed — een launch, een storing, een echt evenement — ook niemand bereikt.

Wat je in plaats daarvan ziet

Aankondigingen die een ping verdienen zijn zeldzaam en worden als zodanig benoemd; routineactiviteit gaat naar een rustig kanaal dat mensen kunnen checken zonder erdoor onderbroken te worden.

De rekening van het handwerk

Wat handmatig rolbeheer op Discord een lidmaatschapsbedrijf kost

Voor een lidmaatschapsbedrijf zijn de eerlijke kosten geen personeelsuren, maar weggelekte omzet die niemand terugvoert op de oorzaak. Een opgezegd lid dat gemiddeld zelfs twee weken betaalde toegang houdt voordat iemand het merkt, is twee weken waarin een product gratis wordt weggegeven — vermenigvuldig dat met het aantal opzeggingen per maand en het is een echt bedrag, ook bij een bescheiden abonnementsprijs.

De andere kant van dezelfde medaille is verloren aanmeldingen: een nieuw lid dat wacht op handmatige roltoewijzing heeft tijd voor twijfel, en sommigen komen nooit meer terug om het te vragen. Geen van beide staat op een factuur zoals overgetypte orders dat wel doen, en precies daarom blijft het meestal ongemeten tot iemand de cijfers doorrekent.

  • Een opgezegd lid dat twee weken toegang tot betaalde kanalen houdt: twee weken gratis product per keer dat het misgaat.
  • Een nieuw lid dat een dag of langer op een rol wacht: een afgekoelde aanmelding, en sommigen die nooit meer terugkomen om te vragen.
  • Een gedempte server, pas ontdekt als een aankondiging die ertoe deed nergens een reactie op krijgt.
Wat we bouwen

Wij bouwen ook het ding aan de andere kant

Dit is meestal eerst een websiteproject: de abonnementslogica staat op de shop of ledensite, en de Discord-kant is de bot die hem uitleest — een losse Discord-koppeling is dus zelden het hele werk.

Een koppeling heeft twee kanten. Er zijn genoeg bureaus die de API-call voor je bouwen en je een JSON-payload overhandigen; dat is de makkelijke helft. De moeilijke helft is waar die data in landt — een website, een webshop, een portaal waar je klanten op inloggen, een intern hulpmiddel dat een spreadsheet vervangt. JKC bouwt beide kanten, en daarom blijven de koppelingen die wij bouwen meestal werken: aan de ontvangende kant is voor ons niets een zwarte doos.

API-koppelingen

De koppeling zelf: authenticatie, veldmapping, rate limits, retries en een wachtrij die overleeft dat het andere systeem een uur uit de lucht is. Gebouwd op de gedocumenteerde API als die er is, en op wat de leverancier werkelijk aanbiedt als die er niet is.

Websites

WordPress-sites die uit je systemen lezen in plaats van ze met de hand na te typen: een vacaturepagina die uit je HR-systeem komt, een teampagina die je salarisadministratie volgt, prijzen en beschikbaarheid die de echte zijn.

Webshops

WooCommerce-shops waarin de order de laatste keer is dat iemand hem intypt: hij wordt een factuur in je boekhoudpakket, een label bij je vervoerder, een voorraadmutatie in je warehouse en een regel in je CRM, uit zichzelf.

Webapplicaties

Als het proces in geen enkel standaardproduct past: een klantportaal, een offertetool, een planbord, een dashboard dat drie systemen tegelijk uitleest. Gebouwd op jouw data, met jouw systemen als bron in plaats van een kopie ervan.

Wat er gekoppeld kan worden

Wat er tussen Discord en je site of shop gekoppeld kan worden

Lidmaatschap en rollen vragen een bot met echte rechten; gewone aankondigingen hebben alleen een webhook nodig. We zeggen per regel wat nodig is, want dat verandert zowel de opzet als de moderatorrechten die de servereigenaar moet afgeven.

  • Rol toegekend of ingetrokken op abonnementsstatus (uit het gereedschap)

    Een betaalde rol toegewezen zodra een abonnement op de website actief wordt, en ingetrokken zodra het afloopt of wordt opgezegd — de stroom die een alleen-leden-kanaal daadwerkelijk beschermt.

  • Uitnodigingslink verstuurd bij betaling (uit het gereedschap)

    Een unieke of tijdelijke uitnodiging direct na het afrekenen, zodat de server joinen en betalen in dezelfde minuut gebeuren in plaats van een mail die iemand later leest.

  • Nieuwe verkopen of topsupporters naar een aankondigingskanaal (in de tool)

    Een specifieke mijlpaal — een verkoop boven een bepaald bedrag, een nieuwe topdonateur — geplaatst in één kanaal, niet elke transactie in elk kanaal.

  • Slash-commands die account- of orderstatus opzoeken (beide kanten)

    Een lid dat in Discord een command typt om zijn eigen orderstatus of vervaldatum van het lidmaatschap te checken, beantwoord door de bot met de gegevens van de website, zonder dat iemand een supportticket opent.

Regel één en twee zijn het paar dat bijna iedereen die hierom vraagt echt nodig heeft; de aankondigings- en slash-command-regels komen later, zodra de lidmaatschapslogica zelf solide staat.

Hoe het werkt

Hoe een koppeling bij JKC gebouwd wordt

Elke keer dezelfde vier stappen, om welke tool het ook gaat. Niets hiervan is een workshop waar je voor betaalt: stap één bestaat omdat een koppeling verkeerd afbakenen het duurste is wat er met zo'n koppeling kan gebeuren.

  1. 1. We kijken wat er nu écht wordt overgetypt

    Niet "welke velden bestaan er" maar "welke velden verplaatst iemand nu met de hand, hoe vaak, en wat gaat er stuk als het misgaat". De meeste projecten blijken twee of drie stromen nodig te hebben, geen volledige tweerichtingssync van alles. Dat gesprek is wat de offerte laag houdt.

  2. 2. We kiezen de route, en zeggen waarom

    Een onderhouden connector van de leverancier, een platform als Make of Zapier, of een maatwerkkoppeling op de API. Goedkoopste eerst, niet maatwerk eerst: als een ondersteunde plugin precies doet wat je nodig hebt, dan is dat het antwoord en zeggen we dat ook. Maatwerk is voor de gevallen waarin de kant-en-klare optie zoveel configuratie vraagt dat hij juist het fragiele onderdeel wordt.

  3. 3. We bouwen hem zo dat hij het andere systeem overleeft

    Elke koppeling krijgt retries, een wachtrij en een idempotency-sleutel mee, zodat een order die binnenkomt terwijl de andere kant eruit ligt later wordt afgeleverd in plaats van verdwijnt, en een retry geen tweede factuur aanmaakt. Eerst op een testomgeving waar de leverancier die aanbiedt, zodat het eerste wat je echte administratie ziet een werkende koppeling is.

  4. 4. We dragen hem over met de faalgevallen opgeschreven

    Welke meldingen je krijgt, wat elke melding betekent, wat je eraan doet en wie je belt. Plus de inloggegevens op jouw naam, in jouw eigen kluis — niet in de onze. Een koppeling die niemand behalve wij kan onderhouden is een koppeling die niet van jou is.

Nadat hij live is

Een koppeling die stil faalt is erger dan geen koppeling

Dit is het deel dat in de meeste offertes ontbreekt. Een koppeling die stopt met werken zonder dat iemand het merkt is erger dan handwerk, want bij handwerk merkt iemand het tenminste als het niet gedaan is. Elke koppeling die JKC bouwt wordt gemonitord, en die monitoring is geen bijverkoop — die zit in de servicekosten.

Een melding per mislukt bericht, geen maandrapport

Een bericht dat niet doorkomt geeft binnen het uur een melding, met de regel waar het over ging. Geen dashboard dat je moet onthouden om te bekijken.

Opnieuw versturen, niet opnieuw invoeren

Wat mislukt is blijft in een wachtrij staan en kan opnieuw verstuurd worden zodra de oorzaak weg is, in de juiste volgorde. Niemand hoeft gisteren door te spitten op zoek naar de vier orders die niet zijn aangekomen.

Wij volgen de wijzigingen van de leverancier, zodat jij dat niet hoeft

API's krijgen nieuwe versies, worden uitgefaseerd en gaan op rate limits. Kondigt een leverancier een wijziging aan die jouw koppeling raakt, dan is meebewegen onderdeel van de servicekosten en geen nieuw project.

Wat het kost

Vanaf € 1.700, en de grootste variabele is wie de andere kant heeft gebouwd

Een koppeling die alleen met een webhook aankondigt zit onderaan de range en is vaak een kleine toevoeging aan een shopproject dat al loopt. Een bot die rollen beheert op basis van een echte abonnementsstatus zit daar een stap boven, dichter bij een middenklasse-koppeling, want die moet continu draaien en zijn eigen inloggegevens veilig bewaren.

Een koppeling begint vanaf € 1.700 plus maandelijkse servicekosten, waar de monitoring, de wachtrij en het bijhouden van API-wijzigingen van de leverancier in zitten. Werk buiten een vaste scope is € 95 per uur.

Wat het bedrag beweegt is niet de tool — het is hoe goed het systeem aan de andere kant bekend is. Heeft JKC je website, je webshop of je webapplicatie gebouwd, dan kennen we het datamodel, de uitzonderingen en waar de voorraadaantallen echt vandaan komen, en is een koppeling erin vooral configureren en testen. Is het een systeem dat we nooit hebben opengeslagen, dan beginnen we met een korte technische check aan beide kanten en offreren we daarna, zodat je niet op uurbasis betaalt voor ons uitzoekwerk.

Twee dingen die het bedrag verder bewegen, in onze ervaring meer dan al het andere: of de tool een echte API heeft of alleen een CSV-export, en of de sync twee kanten op moet. Eenrichting is ruwweg de helft van het werk van tweerichting, want tweerichting betekent per veld beslissen welk systeem wint als ze het oneens zijn — en die beslissing is het dure deel, niet de code.

Vragen

Veelgestelde vragen over Discord koppelen

Allebei, en het eerlijke antwoord is dat het afhangt van waar je community al zit. Zitten je klanten toch al op Discord — gebruikelijk bij games, softwaretools met een technisch publiek en creators met een betaald lidmaatschap — dan is ze daar opzoeken beter dan ze ook nog een forum of Facebookgroep laten checken die niemand opent.

Het past slecht bij een gewoon B2B-bedrijf zonder communityhoek, en dat zeggen we liever dan een Discord-server bouwen die niemand gaat gebruiken.

Gratis, 10 minuten

Geen idee waar de handmatige uren echt naartoe gaan?

Daar is de Groeicheck voor. Tien minuten, zonder verkoopgesprek eraan vast: je krijgt terug waar het dubbele werk zit, welke koppeling zich als eerste terugverdient, en welke eerlijk gezegd niet.