Boekhouding & administratie

AFAS Profit-koppeling laten maken

Ik koppel AFAS Profit aan je webshop, CRM, planning of eigen software via de Profit API, op een App Connector in jouw eigen omgeving. Orders, relaties, medewerkers en uren lopen automatisch over, en de koppeling draait op OAuth, zodat het einde van de classic tokens hem niet raakt.

Alle integraties

Zo loopt de data

voorbeeldopzet

Sync-log, zoals je hem in het logboek terugziet (voorbeeld)

Webshoporders gaan als verkooporder naar Profit, relaties blijven gelijk met het CRM, medewerkers gaan van Profit naar de planning en dossieritems komen via een webhook binnen in je eigen app.
  • Order, wordt Verkooporder: van Webshop naar AFAS Profit, direct, via webhook.
  • Organisatie, Persoon: tussen CRM en AFAS Profit, in beide richtingen, periodiek opgevraagd.
  • Medewerker, Verlof: van AFAS Profit naar Planning, periodiek opgevraagd.
  • Dossieritem: tussen Eigen app en AFAS Profit, in beide richtingen, direct, via webhook.

Kort antwoord

Werkgebied: Nederland · Bijgewerkt op door Alisina Nawabi

Wat het is
Een AFAS Profit-koppeling verbindt Profit met je andere systemen via de API van AFAS. Een App Connector in jouw omgeving bepaalt welke GetConnectors de koppeling mag lezen en welke UpdateConnectors hij mag schrijven: relaties, orders, facturen, medewerkers, uren en dossieritems.
Voor wie
Organisaties op AFAS Profit met een webshop, CRM, planning of eigen app ernaast, en softwarebedrijven die AFAS in hun eigen product willen ondersteunen. Ook als je bestaande koppelingen nog op een classic token draaien.
Doorlooptijd
Een eerste koppeling tussen twee systemen staat meestal binnen 2 weken live. Meer objecten, richtingen of administraties kosten meer tijd; dat staat vooraf in de offerte.
Prijsindicatie
vanaf €4.000 voor een basisopzetEen basisopzet is één koppeling tussen twee systemen, gebouwd, getest en gedocumenteerd. Meer objecten, richtingen, administraties of uitzonderingen maken het groter. Je krijgt vooraf een vaste prijs.

Welke data synchroniseer ik?

Zo richt ik het meestal in. De tabel is ook het startpunt van de intake: jij bepaalt per object de richting en de bron.

Welke data de koppeling synchroniseert, in welke richting, wie de bron is en hoe vaak
ObjectRichtingBron van waarheidFrequentie
Organisaties en personen (KnOrganisation, KnPerson)Op relaties zit geen webhook, dus ik vraag wijzigingen op via het audit-veld Gewijzigd op.beide kantenAFAS voor debiteurgegevens, CRM voor contactgegevensElke 15 minuten, plus een nachtelijke controle
Verkooporders (FbSales)naar AFAS ProfitWebshop of eigen systeemDirect na betaling
Facturen en openstaande postenProfit maakt de factuur uit de order. Direct factureren kan ook, als balie- of directfactuur.van AFAS ProfitAFASElk uur
Artikelen en prijzen (FbItemArticle)van AFAS ProfitAFASElk uur of dagelijks
Medewerkers (KnEmployee)In- en uitdiensttreding eerst, zodat accounts op tijd aan en uit gaan.van AFAS ProfitAFAS (Profit HRM)Elke 15 minuten
Uren en kosten (PtRealization)naar AFAS ProfitUrentool of planningDagelijks
Dossieritems en bijlagen (KnSubject)Bijlagen tot 75 MB per aanroep.beide kantenHet systeem waar het item ontstaatDirect via webhook
VerwijderingenProfit verwijdert echt. Ik lees het logboek of vergelijk met een volledige lading, zodat een verwijdering nooit stil verdwijnt.van AFAS ProfitAFASDagelijks

Wat je met een AFAS Profit-koppeling doet

Voor bedrijven die zelf met de software werken, en voor wie er een product op bouwt voor eigen klanten.

  1. Webshoporders als verkooporder in Profit

    Webshop op WooCommerce, Shopify of PrestaShop

    1. Order betaald in de webshop
    2. Debiteur gevonden of aangemaakt
    3. Verkooporder met regels in Profit
    4. Factuur en betaalstatus terug naar de webshop

    Geen orders meer overtypen, en Profit blijft de plek waar prijs, btw en voorraad kloppen.

    Wat de API hiervoor biedt: FbSales maakt verkooporders met regels aan; KnSalesRelationOrg maakt en wijzigt debiteuren. Lezen gaat via GetConnectors die de beheerder in de App Connector zet.

    Lees de uitwerking in de gids
  2. Medewerkers uit Profit HRM naar je andere systemen

    Organisatie met Profit HRM en een planning-, toegangs- of leerplatform

    1. Nieuwe medewerker of wijziging in Profit
    2. Opgehaald via een eigen GetConnector
    3. Account aangemaakt of bijgewerkt in planning en toegang
    4. Uit dienst: toegang op tijd ingetrokken

    HR voert één keer in en de rest volgt, ook bij een uitdiensttreding.

    Wat de API hiervoor biedt: KnEmployee is via de API te lezen, aan te maken en te wijzigen. Wijzigingen vind je met een GetConnector op de audit-velden, want op medewerkers zit geen webhook.

  3. Uren en kosten naar de nacalculatie

    Projectorganisatie met een eigen urentool of planning

    1. Uren geschreven en goedgekeurd
    2. Gekoppeld aan project, medewerker en werksoort
    3. Nacalculatieregel in Profit
    4. Factureren vanuit Profit

    Je factureert uren vanuit Profit zonder exportbestanden en zonder vergeten regels.

    Wat de API hiervoor biedt: PtRealization (nacalculatie) en PtProject (projecten) zijn via UpdateConnectors aan te maken en te wijzigen.

  4. Classic tokens op tijd naar OAuth

    Organisatie met eigen App Connectors van het type Onderhoud door klant

    1. App Connectors met Classic token of Hybride in kaart
    2. Per koppeling de leverancier, het gebruik en het gevolg
    3. OAuth-inrichting getest in de test- of acceptomgeving
    4. Omgezet vóór 1 mei 2027

    Geen koppeling die op een maandagochtend stilvalt omdat een token is verlopen.

    Wat de API hiervoor biedt: Bestaande classic tokens verlopen op 1 mei 2027, en App Connectors met een classic token werken na 31 augustus 2027 niet meer. AFAS zet zijn eigen standaardkoppelingen zelf om.

    Lees de uitwerking in de gids

Wat de API van AFAS Profit ondersteunt

Per object wat er via de API kan. Dit bepaalt wat een koppeling wel en niet kan doen.

Per object: lezen, aanmaken, wijzigen, verwijderen en webhook-ondersteuning in de AFAS Profit-API
ObjectLezenAanmakenWijzigenVerwijderenWebhook
OrganisatiesKnOrganisationVerwijderen kan niet via de connector.jajajaneenee
PersonenKnPersonjajajaneenee
DebiteurenKnSalesRelationOrgjajajaneenee
CrediteurenKnPurchaseRelationOrgjajajaneenee
VerkoopordersFbSalesjajajajanee
Balie- of directfacturenFbDirectInvoicePakbon en factuur in één, ook creditfacturen.jajajajanee
Financiële mutatiesFiEntriesVerwijderen alleen als de boeking niet is afgeletterd.jajaneedeelsnee
Financiële facturenFiInvoiceAlleen bepaalde velden zijn te wijzigen.janeedeelsneenee
MedewerkersKnEmployeeEen medewerker met een contract verwijder je pas na het contract.jajajadeelsnee
LooncomponentenHrCompMutjajajajanee
VerlofHrAbsencejajajajanee
ProjectenPtProjectjajajajanee
NacalculatiePtRealizationjajajadeelsnee
ArtikelenFbItemArticleEen gebruikt artikel blokkeer je in plaats van het te verwijderen.jajajadeelsnee
InkoopordersFbPurchjajajajanee
AbonnementenFbSubscriptionjajajajanee
DossieritemsKnSubjectBijlagen haal je op met de SubjectConnector.jajajajaja
Reacties op dossieritemsKnSubjectReactionjajaneejaja
WorkflowactiesKnSubjectWorkflowReactionjajaneeneeja

ja kan via de APIdeels kan met beperkingennee kan niet

Techniek en deadlines

De feiten waar een koppeling op rust, met de bron erbij. En wat er de komende tijd verandert.

API
REST (JSON) en SOAP (XML), met dezelfde mogelijkheden. Elke omgeving heeft een eigen adres: {nummer}.rest.afas.online voor productie, met resttest en restaccept voor de test- en acceptomgeving.
Connectoren
GetConnectors lezen, UpdateConnectors schrijven met POST, PUT en DELETE. Welke GetConnectors er zijn, bepaalt de beheerder van de omgeving. AFAS publiceert OpenAPI-specificaties van alle standaardconnectoren.
Authenticatie
OAuth (op basis van OAuth 2.1) is de standaard: client credentials voor server-naar-server, authorization code met PKCE als een gebruiker inlogt. Een access token is 1 uur geldig, een refresh token in totaal maximaal 30 dagen. Vanaf Profit 9 zet je een bestaande App Connector om naar OAuth en verloopt een client secret standaard na 180 dagen.
Testen
Geen gratis sandbox. Naast productie heeft een omgeving meestal een test- en een acceptomgeving; sleutels gelden per omgeving. Met AFAS Connect test je GetConnector-aanroepen op je eigen omgeving. Een omgeving met demodata hoort bij het partnerprogramma.
Limieten
Geen vaste limiet per minuut, wel fair use: AFAS spreekt dagelijks de tien zwaarste gebruikers aan en kan een GetConnector blokkeren. Per aanroep maximaal 75 MB en 900 seconden. Een GetConnector geeft standaard 100 regels per pagina en de querystring mag maximaal 2.049 tekens lang zijn.
Webhooks
Sinds Profit 8, alleen op dossieritems, reacties en workflowtaken. Alleen via HTTPS, ondertekend met HMAC-SHA256, en je endpoint moet binnen 2 seconden antwoorden. Al het andere vraag je op via de audit-velden.
Omgevingen en administraties
Elke omgeving krijgt een eigen App Connector en eigen sleutels. Binnen één omgeving onderscheid je administraties met het veld UnId.
Beveiliging
TLS 1.2 is verplicht. AFAS publiceert vaste IP-adressen per omgevingstype, en op een App Connector kun je IP-restricties zetten. AFAS raadt per externe applicatie een eigen App Connector, gebruikersgroep en systeemgebruiker aan.
Kosten bij AFAS
Bouwen op de API vraagt geen certificering, en de systeemgebruiker van een App Connector kost geen licentieplaats. Certificering van een standaardkoppeling kost een partnerlicentie vanaf 155 euro per maand.
Hosting
AFAS Online draait in datacenters van Leaseweb in Schiphol-Rijk en Haarlem, met back-ups in Frankfurt. Het platform heeft ISO 27001:2022 en een ISAE 3402 type II-verklaring.
Versies
AFAS brengt twee Profit-versies per jaar uit, rond juni en november, en zet AFAS Online binnen 3 maanden over. Een koppeling moet dus met de nieuwste en de vorige versie werken. Profit 9 staat gepland voor de winter van 2026.

Deadlines en wijzigingen

Wat de leverancier heeft aangekondigd, en wat het voor een bestaande koppeling betekent.

  1. komt eraan

    Bestaande classic tokens van AFAS verlopen

    Koppelingen die nog op een bestaand classic token draaien, stoppen op 1 mei 2027. AFAS heeft die datum verschoven van 15 februari naar 1 mei. Tot 31 augustus kun je tijdelijk een nieuw classic token met een beperkte geldigheid maken, maar de echte oplossing is OAuth.

  2. komt eraan

    Laatste dag voor App Connectors met een classic token

    Vanaf 1 september 2027 werkt geen eigen App Connector met een classic token meer. App Connectors van het type Hybride blijven in gebruik, maar de classic tokens erin moet je overzetten. AFAS zet zijn eigen standaardkoppelingen zelf om; eigen App Connectors van het type Onderhoud door klant zijn aan jou.

App, iPaaS of maatwerk?

Niet elke koppeling hoeft maatwerk te zijn. Zo kies je de route die past.

Gecertificeerde standaardkoppeling

Past als: Het partnernetwerk van AFAS telt ruim 250 koppelingen. Voor gangbare software bestaat dus vaak al een gecertificeerde standaardkoppeling.

Grens: Je volgt de logica van de leverancier. Eigen velden, uitzonderingen of een proces dat net anders loopt, lukken vaak niet.

Zapier, Make of n8n

Past als: Voor losse, eenvoudige stappen, zoals een melding bij een nieuw dossieritem of een nieuwe relatie doorzetten.

Grens: Elke stap kost credits, en paginering, fair use, de overstap naar OAuth en foutafhandeling regel je zelf. Voor orders en geld is dat kwetsbaar.

Maatwerk op de Profit API

Past als: Als er orders, geld of personeelsgegevens doorheen gaan, als je eigen GetConnectors en velden hebt, of als je AFAS in je eigen product inbouwt.

Grens: Een hogere eenmalige investering dan een standaardkoppeling, en iemand moet hem onderhouden. Dat kan ik zijn, maar het hoeft niet.

Standaard-app, iPaaS of maatwerk voor AFAS Profit?

Bestaat er al een app in de marktplaats die precies doet wat je met AFAS Profit wilt?

Zo pak ik het aan

Vier stappen, met een vaste prijs vooraf. Een basisopzet begint vanaf €4.000.

  1. 1

    Dag 1

    Intake

    Een kort gesprek over je systemen, je proces en wat er misgaat. Ik vul samen met jou de sync-tabel in: welk object, welke richting, wie de bron is en hoe vaak.

  2. 2

    Binnen een paar dagen

    Vaste offerte

    Je krijgt een voorstel met scope, vaste prijs en planning. Geen uurtje-factuurtje: je weet vooraf wat het kost en wat je krijgt.

  3. 3

    Week 1-2

    Bouwen en testen

    Ik bouw de koppeling op jouw eigen account en test met echte voorbeelden, inclusief de randgevallen: creditnota's, dubbele records, een API die even niet antwoordt. Een eerste koppeling staat binnen 2 weken live.

  4. 4

    Daarna

    Live en beheer

    De koppeling gaat live met monitoring en een foutenlijst die je kunt inzien. Je krijgt documentatie en een overdracht. Onderhoud kan, maar hoeft niet bij mij.

Veilig, en van jou

Hoe ik met je toegang omga, en waarom de koppeling op jouw account draait.

Ik vraag nooit om een AFAS-wachtwoord of een beheerdersaccount.

  • De koppeling krijgt een eigen App Connector met een eigen systeemgebruiker en gebruikersgroep. Jouw beheerder zet erin wat hij mag, en niets meer.
  • Filterautorisatie bepaalt welke records er terugkomen, ook binnen een toegestane GetConnector.
  • OAuth in plaats van een vast token, met IP-restricties op de App Connector als je dat wilt.
  • Sleutels staan versleuteld, in jouw omgeving of op een Europese server. Data gaat rechtstreeks tussen jouw systemen en AFAS.

Wie beheert de koppeling

De koppeling draait op jouw account, niet op dat van mij. Ik bouw, documenteer en onderhoud hem; jij houdt het eigendom en de toegang.

Account
De koppeling draait op een App Connector in jouw eigen AFAS-omgeving, van het type Onderhoud door klant. Jouw beheerder maakt hem aan en bepaalt welke connectoren erin staan. Een certificering is daarvoor niet nodig.
Sleutels
Client ID, client secret en eventuele tokens staan in jouw omgeving. Jij kunt de App Connector op elk moment blokkeren of de toegang intrekken in Profit.
Goedkeuring door de leverancier
Bouw je een standaardkoppeling voor meerdere AFAS-klanten en wil je in het overzicht van AFAS, dan certificeert AFAS die koppeling. Dat traject en de partnerlicentie lopen op jouw naam; ik bouw de koppeling zo dat hij aan de eisen voldoet.
  • Jouw account en jouw app-registratie bij de leverancier. Ik verkoop geen eigen koppel-abonnement en zit er niet tussen.
  • Jij bent eigenaar van de code en de documentatie. Stop je met mij, dan kan een andere ontwikkelaar verder.
  • Bouw je zelf een product voor jouw klanten? Dan draait het op jouw toegang en, waar de leverancier dat vraagt, op jouw certificering.

Onderhoud en monitoring

Een koppeling is pas af als je merkt dat er iets misgaat voordat je klant het merkt.

Foutenlijst met herkansing
Wat niet lukt, verdwijnt niet. Het komt in een wachtrij met de reden erbij en wordt opnieuw geprobeerd, met steeds langere tussenpozen.
Geen dubbele of gemiste records
Elke boeking krijgt een vaste sleutel, zodat een herhaalde poging nooit een tweede factuur of order maakt.
Alarm bij stilte
Komt er een tijd geen data binnen terwijl dat wel zou moeten, dan krijg je een melding. Een stilgevallen koppeling merk je zo voordat je klant belt.
Logboek
Per record zie je wanneer het ging, wat er ging en wat het andere systeem antwoordde. Handig voor je boekhouder en voor jezelf.
Klaar voor het einde van de classic tokens
Ik bouw op OAuth. Draait een bestaande koppeling nog op een classic token, dan zet ik hem om vóór 1 mei 2027 en test ik dat eerst in je test- of acceptomgeving.
Niet op slot door stilte
AFAS blokkeert App Connectors die 6 maanden niet zijn gebruikt. Een koppeling die maar een paar keer per jaar draait, krijgt een controle, zodat hij niet ongemerkt op slot gaat.
Netjes binnen fair use
Ik lees in pagina’s met een vaste sortering, alleen wat sinds de vorige keer is gewijzigd, en met weinig gelijktijdige aanroepen. Zo kom je niet op de lijst van zwaarste gebruikers.
Nieuwe Profit-versies eerst op Accept
AFAS brengt twee versies per jaar uit. Ik test de koppeling op je acceptomgeving zodra daar een nieuwe versie staat, voordat productie volgt.

Verder lezen

Mijn gidsen en artikelen die dieper ingaan op AFAS Profit.

AFAS Profit koppelen: welke connector je nodig hebt en welke route overblijft
Gids
Uitgebreide gids16 min

4 aug 17:00

AFAS Profit koppelen: welke connector je nodig hebt en welke route overblijft

Certificering bij AFAS is een leveranciersprogramma, geen toestemming om te koppelen. Welke connector bij welke stroom hoort, wat de poort echt eist, en de drie routes die daaronder overblijven, met prijzen.

AFAS laat classic tokens verlopen op 15 februari 2027: zo weet je welke koppeling van jou omvalt
Gids
Uitgebreide gids14 min

7 sep 09:00

AFAS laat classic tokens verlopen op 15 februari 2027: zo weet je welke koppeling van jou omvalt

Iedereen noemt 31 augustus 2027, maar de classic tokens die vandaag in jouw AFAS Profit-omgeving draaien stoppen op 15 februari. Zo vind je in een middag welke koppeling erop zit en wat je per regel doet.

AFAS-WooCommerce-koppeling kiezen: bewijs klant, btw en creditnota
Gids
Uitgebreide gids18 min

29 okt 09:00

AFAS-WooCommerce-koppeling kiezen: bewijs klant, btw en creditnota

Laat AFAS-WooCommerce-leveranciers dezelfde proef draaien met klantmatching, btw, dubbele webhooks, time-outs en creditnota’s. Koop pas als de werkelijk opgeslagen klant, bedragen en status terugleesbaar zijn.

B2B WooCommerce aan AFAS koppelen: bewijsflow van prijs tot payout
Gids
Uitgebreide gids17 min

30 okt 09:00

B2B WooCommerce aan AFAS koppelen: bewijsflow van prijs tot payout

Test een B2B-order in WooCommerce en AFAS op klantgroep, klantspecifieke prijs, btw, goedkeuring, retour, payout en boeking. Met één bewijsflow ontdek je wat de koppeling werkelijk opslaat en hoe zij herstelt na een time-out.

PrestaShop aan AFAS koppelen: betalingen, payouts en gecontroleerde vrijgave
Gids
Uitgebreide gids19 min

5 okt 09:00

PrestaShop aan AFAS koppelen: betalingen, payouts en gecontroleerde vrijgave

PrestaShop, je betaalprovider en AFAS verwerken ieder een ander deel van je geldstroom. Leer orders, betaalstatus, payout, fees, refunds en chargebacks met vaste sleutels te koppelen en pas na een proefbatch gecontroleerd vrij te geven.

AFAS-inkooporders inrichten: van bestelvoorstel naar menselijke vrijgave
Gids
Uitgebreide gids18 min

6 okt 09:00

AFAS-inkooporders inrichten: van bestelvoorstel naar menselijke vrijgave

Richt in AFAS Profit een veilige inkooporderflow in van aanvraag en bestelvoorstel naar procuratie, menselijke vrijgave en herstel bij een onzekere write. Voor de proefbatch krijg je ook meetpunten en een concreet herstelpad.

Andere koppelingen

Werk je met meer tools? Combineer AFAS Profit met je andere systemen en zie hoe er één workflow van ontstaat.

FAQ

Veelgestelde vragen over de AFAS Profit-koppeling

Antwoorden op wat het vaakst gevraagd wordt over AFAS Profit koppelen.

Klaar om AFAS Profit te koppelen?

Vertel me welke systemen je gebruikt en wat er nu misgaat. Ik denk mee en zeg eerlijk wat er kan, vrijblijvend.

Bekijk alle integraties

Liever eerst zelf kijken waar de winst zit? Doe de gratis automatiseringsscan