Shopify koppelen aan AFAS.
Orders en klanten uit Shopify in AFAS Profit, voorraad en prijzen terug naar je shop, via de connectoren die AFAS zelf aanbiedt.
Shopify als verkoopkanaal van je ERP.
AFAS Profit is het cloud-ERP van AFAS en draait alleen in de cloud. In de techniek heet het Profit, in de marketing AFAS ERP. Voor een webshop is vooral ordermanagement interessant: orders, voorraadreservering, meerdere magazijnen en prijslijsten.
Je koppelt met AFAS via connectoren. Een GetConnector haalt gegevens op, een UpdateConnector voegt toe, wijzigt of verwijdert. Wat een UpdateConnector kan, verschilt per connector, en een AFAS-beheerder moet de connectoren beschikbaar stellen via een app connector. Wat een koppeling kan, hangt dus af van hoe jouw AFAS is ingericht.
Twee dingen weet je beter vooraf: de licentie (je hebt een volledige Profit-licentie nodig) en de inlogmethode (bestaande classic tokens verlopen op 1 mei 2027, nieuwe koppelingen gebruiken OAuth).
Orders als verkooporder
Een Shopify-bestelling wordt een verkooporder in AFAS, met verkoopkanaal Website, de regels en de btw-instelling van je webshop.
Klanten en relaties
Klanten komen als persoon of organisatie met een verkooprelatie. AFAS kan dubbelen opsporen, zodat je geen relaties verdubbelt.
Prijslijsten en staffels
Prijzen per prijslijst, debiteur, staffel of actie staan in AFAS en kunnen daar leidend blijven.
Voorraad per magazijn
Voorraad per magazijn lezen we uit AFAS en zetten we door naar Shopify. Mutaties kunnen de andere kant op.
Facturen en creditfacturen
Een verkoopfactuur kan direct worden aangemaakt, ook als creditfactuur voor een retour.
Toekomstbestendig ingelogd
We bouwen op OAuth, de standaard voor nieuwe koppelingen, en kijken bij een bestaande koppeling hoe die inlogt voordat de classic tokens verlopen.
Wat stroomt er tussen Shopify en AFAS?
Dit is een typische opzet. Welke connectoren je kunt gebruiken, hangt af van je licentie en van wat er in jouw omgeving is geactiveerd.
| Gegevens | Richting | Wanneer | Waar we op letten |
|---|---|---|---|
| Bestellingen | Shopify → AFAS | Zodra een bestelling is betaald | Als verkooporder (connector FbSales), met verkoopkanaal Website. De order met al zijn regels leggen we in één transactie vast. Een order zonder regels en zonder bijbehorende offerte weigert AFAS. |
| Facturen | Shopify → AFAS | Per bestelling of na levering | Als verkoopfactuur (connector FbDirectInvoice), ook als creditfactuur. Een order kun je ook laten afhandelen met de connector FbSettleOrder. |
| Klanten | Shopify → AFAS | Bij de eerste bestelling | Persoon of organisatie plus verkooprelatie met betaalvoorwaarde, btw-plicht, prijslijst en kortingsgroep. Dubbelen zijn op te sporen op naam, e-mail of BSN. |
| Voorraad | AFAS → Shopify | Op een vast interval | Alleen voor artikelen die voorraad bijhouden. Lezen per magazijn kan, mutaties gaan via een voorraadmutatie. |
| Prijzen | AFAS → Shopify | Bij wijzigingen | Prijslijst, debiteur, staffel en actieprijs staan in AFAS. Voor klantspecifieke prijzen in Shopify gelden grenzen aan het aantal B2B-catalogi. |
| Betalingen | Shopify → AFAS | Per betaling | Als financiële mutatie (connector FiEntries), met het factuurnummer op de regels. Hoe je betalingen precies boekt en aan facturen koppelt, stemmen we af met je boekhouder. |
Bron: AFAS: API-documentatie voor verkoop en orders en de OpenAPI-specificaties van AFAS. Wat precies kan, hangt af van je licentie en de geactiveerde connectoren.
Zo praat een koppeling met AFAS.
Connectoren en omgevingen
De API van AFAS is bereikbaar via REST met JSON en via SOAP met XML. AFAS biedt een productie-, een test- en een acceptomgeving. Je herkent ze aan de eerste letter van de omgevingsnaam: O voor productie, T voor test en A voor accept. Nieuwe versies verschijnen eerst in accept.
AFAS biedt testomgevingen alleen binnen licenties aan. Je komt aan een testomgeving met demodata via een AFAS-klant voor wie je bouwt, of via het AFAS Partnerprogramma als je zonder klant een koppeling bouwt. Daar zijn volgens AFAS kosten aan verbonden.
Inloggen met OAuth, en het einde van classic tokens
Voor nieuwe koppelingen is OAuth de standaard: de applicatie vraagt eerst een tijdelijk toegangstoken aan en gebruikt dat bij elke aanroep. Bij een classic token stuurt de applicatie bij elke aanroep dezelfde vaste sleutel mee. Die methode wordt uitgefaseerd.
Bestaande classic tokens verlopen op 1 mei 2027, en na 31 augustus 2027 werken app connectoren met een classic token niet meer. Vanaf Profit 9 pas je in een bestaande app connector het inlogtype aan van classic token naar hybride of OAuth. Bij hybride werken beide tijdelijk naast elkaar, zodat de koppeling zonder onderbreking kan overstappen. Heb je een bestaande AFAS-koppeling, dan is dit een goed moment om te laten nakijken hoe die is ingelogd.
Licentie en toegang
Een koppeling vraagt een volledige Profit-licentie. Het maximum aantal omgevingen hangt af van die licentie, en productie-, test- en acceptomgevingen tellen allemaal mee.
De gebruiker van de koppeling werkt met filterautorisatie in plaats van menurechten en krijgt alleen de connectoren uit de app connector. Een app connector die zes maanden of langer niet is gebruikt, wordt geblokkeerd.
Limieten en meldingen
AFAS noemt geen vast aantal aanroepen per minuut. Wel gelden grenzen per aanroep: maximaal 75 MB, een time-out van ongeveer 15 minuten en standaard 100 records. De API werkt synchroon, dus de verbinding blijft open tot het antwoord er is, en AFAS raadt aan grote datasets met filters over meerdere aanroepen te verdelen. Daarnaast geldt een fair-use-regel: haal je elke minuut dezelfde grote hoeveelheid gegevens op, dan neemt AFAS contact met je op.
Webhooks bestaan bij AFAS alleen voor dossieritems, reacties en workflows. Voor orders en voorraad vraag je dus op wat er is aangemaakt of gewijzigd, en dat is ook wat AFAS zelf aanraadt. Aan de Shopify-kant garandeert Shopify de levering van webhooks niet en raadt het aan niet alleen daarop te vertrouwen. Daarom ontdubbelen we meldingen en draait er een controleslag die vergelijkt wat Shopify en AFAS weten.
Zeven valkuilen, en hoe we ze voorkomen.
De meeste problemen met AFAS zitten niet in de techniek, maar in licentie, rechten en de manier waarop connectoren zijn ingericht.
Licentie en omgevingen
Connectoren werken niet met een inkijklicentie, je hebt een volledige Profit-licentie nodig. Het aantal omgevingen is begrensd en test- en acceptomgevingen tellen mee, dus een extra testomgeving kan tegen die grens aanlopen. We controleren dit voordat we bouwen.
Tokens en secrets verlopen
Bestaande classic tokens verlopen op 1 mei 2027. Een koppeling die daarvan afhangt, valt dan stil. Ook bij OAuth verloopt iets: vanaf Profit 9 krijgt een client secret een geldigheidsduur, standaard 180 dagen. We bouwen op OAuth en plannen het vernieuwen in.
De connectorgebruiker
De gebruiker van de koppeling heeft filterautorisatie nodig en geen menurechten. Een app connector die zes maanden of langer niet is gebruikt, wordt geblokkeerd, en IP-beperkingen geven een 403-fout.
Connectoren moeten beschikbaar zijn
Alleen connectoren uit de app connector zijn bereikbaar, en sommige bestaan pas na activering, zoals die voor ordermanagement, voorraad en meerdere magazijnen. We controleren dat vooraf met je beheerder.
Orders zonder regels worden geweigerd
Een verkooporder zonder orderregels en zonder bijbehorende offerte weigert AFAS. Voorraadvragen worden automatisch beantwoord, en bij strikte voorraad met te weinig voorraad is het antwoord nee. We houden daar rekening mee.
Paginering en tijden
Paginering met skip en take vraagt om een sortering. Een 500-fout bij een UpdateConnector betekent een validatiefout. En de Z achter een datum-tijd negeer je, want AFAS rekent in Amsterdamse tijd.
Grote aanroepen
Een aanroep mag maximaal 75 MB zijn, met een time-out van ongeveer 15 minuten en standaard 100 records. We halen gegevens in stukken op en houden het aantal gelijktijdige aanroepen laag.
Koppelapp of maatwerk?
Voor AFAS bestaan apps in de Shopify App Store, zoals AFAS Profit Financieel van Gladior en de app "Boekhouding - divers" van Webwinkelfacturen, die onder meer AFAS en AFAS SB ondersteunt. Lees in de beschrijving van een app wat hij precies synchroniseert.
Een koppelapp past als…
- ✓ je één webshop hebt met standaardprocessen
- ✓ je vooral je boekhouding wilt laten vullen
- ✓ je geen maatwerk nodig hebt voor voorraad of prijzen
- ✓ je snel wilt starten met een abonnement
Maatwerk past als…
- ✓ ordermanagement, voorraad en prijslijsten in AFAS leidend zijn
- ✓ je meerdere magazijnen hebt
- ✓ je klantspecifieke prijzen of staffels uit AFAS wilt tonen
- ✓ je eigen processen en workflows hebt
- ✓ je volume piekt en je de belasting wilt bewaken
Lees ook Orders en voorraad snel en betrouwbaar synchroniseren tussen Shopify en AFAS.
Van losse systemen naar één geheel.
Scan en inventarisatie
We brengen je AFAS-omgeving, je licentie, je connectoren en je Shopify-wensen in kaart. Daar komt een vaste scope uit, ook over wie in AFAS wat activeert.
Bouwen en testen
We bouwen de koppeling op OAuth en testen in je testomgeving met lastige scenario's: korting, voorraad die op is, deelzending en retour.
Live en monitoren
Je gaat live zonder verrassingen, vaak samen met een migratie of lancering. Daarna bewaken we de koppeling met logging en meldingen, zodat een mislukte bestelling niet ongemerkt blijft.
Dit hebben we van je nodig
- ✓ Een AFAS-beheerder die een app connector met OAuth inricht en de connectoren beschikbaar stelt
- ✓ Een testomgeving binnen je licentie, bij voorkeur ook een acceptomgeving
- ✓ Welke modules actief zijn: ordermanagement, voorraad en meerdere magazijnen
- ✓ Je artikelen, prijslijsten en btw-groepen, en welk systeem leidend is
Eerlijk over de kosten.
Bij AFAS bestaat het kostenplaatje uit meer dan de bouw. Je hebt een volledige Profit-licentie nodig, test- en acceptomgevingen tellen mee voor het maximum aantal omgevingen van je licentie, en een kant-en-klare app kan een eigen abonnement hebben. Wie zelf een gecertificeerde standaardkoppeling wil aanbieden, doorloopt het AFAS Partnerprogramma, waar volgens AFAS kosten aan verbonden zijn. Wij bouwen koppelingen voor jouw omgeving.
Een eerste ERP-koppeling zit inbegrepen vanaf het pakket Migratie Plus. Een losse koppeling bespreken we na de gratis scan, dan hoor je ook de doorlooptijd.
“De lijntjes zijn kort en Payam communiceert snel en helder. Je wordt als klant goed meegenomen in het gehele ontwikkelproces.”
Alles over de AFAS-koppeling.
Hoe koppel je Shopify aan AFAS?
Via connectoren. Een GetConnector haalt gegevens op en een UpdateConnector voegt toe, wijzigt of verwijdert. Een AFAS-beheerder stelt ze beschikbaar via een app connector. De API is bereikbaar via REST en SOAP.
Is er een kant-en-klare Shopify-koppeling voor AFAS?
Ja. In de Shopify App Store staan onder meer AFAS Profit Financieel van Gladior en de app "Boekhouding - divers" van Webwinkelfacturen, die ook AFAS ondersteunt. AFAS SB, het losse boekhoudpakket, heeft een eigen koppeling die afgeronde Shopify-orders als verkoopjournaalpost importeert en de kopers als klant. Voor een eenvoudige webshop kan een app volstaan.
Wat gebeurt er met classic tokens?
Bestaande classic tokens verlopen op 1 mei 2027, en na 31 augustus 2027 werken app connectoren met een classic token niet meer. Nieuwe koppelingen gebruiken OAuth. Vanaf Profit 9 kun je in een bestaande app connector overstappen. We kijken met je na hoe jouw koppeling is ingelogd.
Heb ik een bepaalde AFAS-licentie nodig?
Ja, een volledige Profit-licentie. Met een inkijklicentie werken de connectoren niet. Het maximum aantal omgevingen hangt af van je licentie, en productie-, test- en acceptomgevingen tellen allemaal mee.
Is er een testomgeving voor AFAS?
AFAS biedt een productie-, test- en acceptomgeving, maar testomgevingen alleen binnen licenties. Je komt eraan via een AFAS-klant voor wie je bouwt, of via het AFAS Partnerprogramma als je zonder klant een koppeling bouwt.
Zijn er limieten op de AFAS-API?
AFAS noemt geen vast aantal aanroepen per minuut. Een aanroep mag maximaal 75 MB zijn, met een time-out van ongeveer 15 minuten en standaard 100 records, en er geldt een fair-use-regel.
Kan AFAS meldingen sturen als er een order verandert?
Webhooks bestaan alleen voor dossieritems, reacties en workflows. Voor orders en voorraad vragen we op wat is aangemaakt of gewijzigd. Daarnaast vertrouwen we nooit alleen op webhooks van Shopify.
Hoe snel is de synchronisatie?
Een nieuwe Shopify-bestelling kunnen we snel doorzetten, omdat Shopify daarvan een melding stuurt. Wijzigingen in AFAS, zoals voorraad, halen we op een vast interval op, want AFAS heeft daarvoor geen webhooks. Welk interval past, spreken we met je af.
Kan Shopify voorraad uit AFAS tonen?
Ja, voor artikelen die voorraad bijhouden. We lezen de voorraad per magazijn uit en zetten die door naar Shopify. Sommige connectoren, zoals die voor voorraad en meerdere magazijnen, moeten in AFAS zijn geactiveerd.
Hoe gaat de koppeling om met B2B-prijzen?
Prijslijsten, klantprijzen en staffels staan in AFAS. In Shopify kun je zonder Shopify Plus maximaal drie actieve B2B-catalogi gebruiken, dus een eigen prijslijst per klant past daar niet altijd. Dat bespreken we in de scan.
Wat is het verschil tussen AFAS Profit en AFAS SB?
AFAS Profit is de techniek achter AFAS ERP, het cloud-ERP van AFAS. AFAS SB is een financieel boekhoudpakket voor onder meer ondernemers, zzp'ers en webshops, met een eigen Shopify-koppeling. Wat past, hangt af van je omvang en wensen.
Shopify & AFAS koppelen?
Vrijblijvend, binnen 2 werkdagen weet je welke koppeling past en hoe de aanpak eruitziet.