Kort antwoord
Bij een PIM-koppeling met AFAS Profit blijft AFAS eigenaar van itemcode, artikelgroep, eenheid, barcode, prijzen en voorraad. Het PIM-systeem leest die gegevens via een eigen GetConnector en verrijkt ze met teksten, specificaties, vertalingen en media. Terugschrijven gaat via de UpdateConnector FbItemArticle. Gebruik voor nieuwe koppelingen OAuth, want classic tokens werken na 31 augustus 2027 niet meer.
Bij een PIM-koppeling met AFAS Profit blijft AFAS de bron voor de administratieve artikeldata: itemcode, artikelgroep, eenheid, barcode, prijzen en voorraad. Het PIM-systeem leest die gegevens via een eigen GetConnector en voegt teksten, specificaties, vertalingen en media toe. Moet er iets terug naar AFAS, dan gaat dat via de UpdateConnector FbItemArticle. Richt nieuwe koppelingen in met OAuth, omdat classic tokens na 31 augustus 2027 niet meer werken.
AFAS Profit is een veelgebruikt ERP-systeem in Nederland en België, met order- en voorraadbeheer naast financiën en HR. De API is opgebouwd rond connectoren die de AFAS-beheerder zelf inricht. Dat geeft de organisatie veel controle over welke data de koppeling ziet. Het algemene onderscheid tussen beide systemen staat in PIM vs ERP.
Welke artikeldata blijft in AFAS Profit?
De OpenAPI-specificatie Artikelen van AFAS beschrijft wat een artikel in Profit bevat. Kernvelden van FbItemArticle zijn de itemcode (ItCd, maximaal 40 tekens), de omschrijving (Ds), de extra omschrijving (DsEx), de artikelgroep (Grp), de basiseenheid (BiUn), het artikeltype (VaTp), de barcode (BaCo) met het type barcode (VaBc, onder meer EAN8, EAN13 en EAN14), artikeldimensies (StD1, StD2) en een verrekenprijs.
Rond het artikel liggen aparte connectoren voor eenheden per item, samenstellingen, partij- en serienummers, verkoopprijzen en kostprijzen. Dat is data die verkooporders, inkoop, voorraadwaardering en facturatie sturen, en die hoort in AFAS.
Welk systeem beheert welke velden?
| Gegeven | Eigenaar | AFAS-veld of connector |
|---|---|---|
| Itemcode | AFAS Profit | ItCd |
| Korte omschrijving voor documenten | AFAS Profit | Ds |
| Artikelgroep | AFAS Profit | Grp, Profit_ArticleGroups |
| Basiseenheid, eenheden per item | AFAS Profit | BiUn, FbUnitBasicItem |
| Barcode (EAN/GTIN) | AFAS Profit of PIM, kies één bron | BaCo, Profit_Barcode_per_Item |
| Artikeldimensies (maat, kleur) | AFAS Profit, afgestemd met PIM | StD1, StD2, FbUpdateAdB |
| Verkoopprijs, kostprijs | AFAS Profit | FbSalesPrice, FbCostPrice |
| Voorraad per locatie | AFAS Profit | Profit_Stock |
| Marketingtitel, lange beschrijving | PIM-systeem | Niet in AFAS |
| Technische specificaties per familie | PIM-systeem | Eventueel enkele vrije velden |
| Vertalingen voor webshop en kanalen | PIM-systeem | Vertaalde omschrijvingen in AFAS alleen voor documenten |
| Afbeeldingen en documenten | PIM- of DAM-systeem | Profit_Article_image alleen als bron |
Het algemene patroon voor deze verdeling staat in PIM en ERP koppelen: datastromen en eigenaarschap.
Vertaalde velden en vrije velden
FbItemArticle accepteert vertaalde omschrijvingen per taalcode, bijvoorbeeld Ds_1043 voor Nederlands, Ds_2067 voor Vlaams, Ds_1036 voor Frans en Ds_2057 voor Engels. Die vertalingen zijn bedoeld voor orderbevestigingen, pakbonnen en facturen. Uitgebreide productcontent per taal en kanaal beheert u in het PIM-systeem, volgens meertalige productdata beheren.
AFAS-beheerders kunnen vrije velden toevoegen in de meeste tabellen van Profit. Een nieuw vrij veld is direct beschikbaar in de UpdateConnector en herkenbaar aan een GUID; in een eigen GetConnector kan de beheerder het veld opnemen. Gebruik vrije velden voor administratieve kenmerken. Een volledig productdatamodel met tientallen attributen per familie hoort in het PIM-systeem.
Hoe werken GetConnector en UpdateConnector?
- App connector inrichten. De AFAS-beheerder maakt een app connector voor de koppeling en voegt de benodigde connectoren toe.
- Eigen GetConnector maken. AFAS raadt aan altijd een nieuwe GetConnector te maken, met alleen de velden die de koppeling nodig heeft, een filter en de naam van de koppeling in de omschrijving. Standaardconnectoren zoals Profit_Article bevatten veel overbodige velden die alleen extra belasting geven.
- Ophalen met skip en take. Een GetConnector geeft standaard 100 records (skip 0, take 100). Sorteer altijd met orderbyfieldids; AFAS adviseert integervelden omdat die de snelste index hebben.
- Velden ontdekken. Met een metainfo-aanroep (/metainfo/get/{connector}) haalt u velden, veldtypen, labels en lengtes op, inclusief codetabellen.
- Terugschrijven. De UpdateConnector FbItemArticle ondersteunt POST, PUT en DELETE. AFAS valideert de inhoud vóór verwerking en geeft bij een validatiefout HTTP 500.
De REST-URL heeft de vorm https://{omgevingsnummer}.rest.afas.online/ProfitRestServices/connectors/{connector}. Voor test- en acceptatieomgevingen gebruikt AFAS resttest en restaccept.
Volumes en limieten
AFAS geeft een vuistregel: aantal kolommen maal aantal regels onder 150.000 per aanroep, met een goede aanroep binnen 1.000 milliseconden. Bij een skip boven 100.000 wordt de snelheid volgens AFAS meestal onacceptabel; deel dan op met filters, bijvoorbeeld per artikelgroep, en doe maximaal vijf gelijktijdige aanroepen. De parameterstring van de URL is begrensd op 2.049 tekens. Een 'get all' met skip en take op -1 raadt AFAS sterk af.
Welke integratiepatronen en syncrichting kiest u?
U kunt een standaardconnector, een iPaaS of maatwerk op de Profit API gebruiken. In de geverifieerde integratiegegevens van PIM-leveranciers op pimsysteem.nl noemt geen enkele leverancier een gedocumenteerde standaardconnector voor AFAS Profit. Reken daarom met een koppeling via iPaaS of maatwerk, en vraag leveranciers naar een werkende AFAS-referentie. Het overzicht van leveranciers staat bij de PIM-leveranciers.
Basisgegevens gaan van AFAS naar het PIM-systeem als delta. Filter de GetConnector daarvoor op een wijzigingsdatum, zodat elke run alleen gewijzigde artikelen ophaalt. AFAS biedt webhooks voor dossieritems en workflows, en noemt in de documentatie geen webhook op artikelwijzigingen. Voor artikelen werkt u dus met geplande ophaalrondes, bijvoorbeeld elk uur of elke nacht.
Prijs en voorraad gaan rechtstreeks van AFAS naar de webshop. Terugschrijven naar AFAS beperkt u tot afgesproken velden, zoals een GTIN die in het PIM-systeem is vastgesteld.
Welke valkuilen ziet u in AFAS-koppelingen?
- Classic token in nieuwe koppelingen. Bestaande classic tokens verlopen op 1 mei 2027 en app connectoren met een classic token werken na 31 augustus 2027 niet meer. Bouw met OAuth.
- Standaard-GetConnector gebruiken. Te veel velden vertragen elke aanroep en belasten de AFAS-omgeving. Laat de beheerder een eigen GetConnector maken.
- Paginering zonder sortering. Zonder orderbyfieldids kan de volgorde per aanroep verschillen, met ontbrekende of dubbele artikelen als gevolg.
- Omschrijving als marketingtekst. De omschrijving in AFAS staat op orders en facturen. Gebruik in het PIM-systeem een eigen titel- en beschrijvingsveld.
- Afhankelijkheid van één beheerder. De koppeling werkt alleen zolang de GetConnector, app connector en filters ongewijzigd blijven. Leg de inrichting vast in de integratiedocumentatie.
Voor een mkb-organisatie die AFAS gebruikt en twijfelt over de stap naar PIM, helpt PIM voor het mkb.
Belangrijkste punten
- AFAS Profit blijft eigenaar van itemcode, artikelgroep, eenheden, barcode, prijzen en voorraad; het PIM-systeem beheert content, specificaties, vertalingen en media.
- Laat de AFAS-beheerder een eigen GetConnector per koppeling maken, met alleen de benodigde velden en een filter.
- Gebruik skip, take en orderbyfieldids volgens de vuistregels van AFAS, en deel grote sets op met filters.
- Schrijf alleen afgesproken velden terug via de UpdateConnector FbItemArticle.
- Bouw nieuwe koppelingen met OAuth; classic tokens werken na 31 augustus 2027 niet meer.
Veelgestelde vragen
Wat is een GetConnector in AFAS Profit?
Een GetConnector is een endpoint waarmee een externe applicatie records uit de Profit-database ophaalt. Een AFAS-beheerder stelt de GetConnector zelf samen en bepaalt welke velden en records erin zitten. AFAS raadt aan voor elke koppeling een eigen GetConnector aan te maken, met alleen de benodigde velden en een filter, en die toe te voegen aan de app connector van de koppeling.
Hoe schrijft een PIM-systeem artikelgegevens terug naar AFAS Profit?
Via de UpdateConnector FbItemArticle. Met POST maakt u een artikel aan, met PUT wijzigt u het en met DELETE verwijdert u het op basis van de itemcode. De connector ondersteunt onder meer omschrijving, extra omschrijving, artikelgroep, eenheid, barcode, artikeldimensies en vertaalde omschrijvingen per taal, zoals Nederlands, Vlaams en Frans.
Hoe meldt een koppeling zich aan bij de AFAS Profit API?
OAuth is de aanbevolen standaard voor alle nieuwe koppelingen. Volgens de AFAS API-documentatie verlopen bestaande classic tokens op 1 mei 2027 en werken app connectoren met een classic token na 31 augustus 2027 niet meer. Vanaf Profit 9 zet u een bestaande app connector om naar OAuth zonder een nieuwe connector aan te maken.
Hoeveel artikelen kan een GetConnector per aanroep ophalen?
Standaard geeft een GetConnector 100 records per aanroep, met skip 0 en take 100. AFAS geeft als uitgangspunt dat het aantal kolommen maal het aantal regels onder 150.000 blijft. Sorteer altijd met orderbyfieldids, anders kunnen records ontbreken of dubbel voorkomen. Bij een skip boven 100.000 wordt de snelheid volgens AFAS meestal onacceptabel.