AFAS - Prestashop
Technische documentatie

Redundant uitgevoerd

De middleware servers voor het APIcenter zijn redundant in meerdere datacenters.

AVG proof

Alle logs worden een maximale termijn opgeslagen en kunnen desgewenst verwijderd of niet opgeslagen worden.

Toegang tot APIcenter

Je hebt toegang tot ons APIcenter om de status van de koppeling te monitoren

Technische informatie

In deze documentatie wordt beschreven wat de koppeling tussen Prestashop en AFAS inhoudt, welke gegevens worden uitgewisseld en hoe dit tot stand komt. In de basis is de koppeling zelf een tussenlaag, welke met behulp van instellingen en parameters, verzoeken doet aan zowel AFAS als Prestashop voor bepaalde informatie. De koppeling slaat daarbij zelf geen informatie op, deze wordt alleen verwerkt, voornamelijk relevant in verband met de AVG wetgeving.

Instelling verbinding

Informatie uit AFAS verkrijgen gaat met behulp van connectoren. In de connectoren wordt bepaald welke velden worden uitgelezen om vervolgens te kunnen verzenden naar de Prestashop installatie. De koppeling maakt gebruik van de volgende connectoren, waarbij de connectoren met een extra suffix, kopieën zijn van standaard connectoren met extra velden:

  • Profit_Article_Basic_App
  • Profit_ArticleGroups_Prestashop
  • Profit_Debtor_App
  • Profit_Deliveryaddress
  • Profit_OrgPer_App
  • KnOrganisation (update)
  • KnPerson (update)
  • FbSales (update)
  • KnSalesRelationOrg (update)
  • KnSalesRelationPer (update)


Hoe deze connectoren zijn opgebouwd wordt uitgebreid besproken bij de documentatie van de verschillende functionaliteiten.

Informatie vanuit Prestashop wordt verkregen via de Webservice van (REST) Prestashop. Deze service is instelbaar via een admin account op de Prestashop admin. Hier kunnen de verschillende permissies worden ingesteld afhankelijk van de bestelde koppeling. Deze functionalitieit is alleen beschikbaar vanaf Prestashop 1.6+

Zodra beide verbindingen tot stand zijn gekomen worden deze configuratie opgeslagen op het Dashboard. Dit wordt aangeduid met “APIcenter”. Deze tussenlaag verwerkt alle aanvragen of verzendingen van informatie. Afhankelijk van de gekozen oplossing zijn op het dashboard ook de overige instellingen terug te vinden.

Functionaliteiten

De koppeling bestaat uit 4 onderdelen/modules. Dit zijn;

  • het exporteren van bestellingen
  • het importeren van producten
  • het importeren van klanten
  • het synchroniseren van voorraad.

Daarbij is het financiële systeem AFAS altijd leidend, met uitzondering van de bestellingen. Deze komen binnen op Prestashop.

Exporteren van Bestellingen

Zodra in Prestashop een bestelling binnenkomt wordt de bestelling naar AFAS gestuurd. Periodiek wordt er via een cronjob gecheckt of er nieuwe bestellingen zijn binnengekomen. De gemiddelde snelheid van het verwerken van bestellingen bedraagt 10 bestellingen per 15-30 minuten. Als de server van Prestashop snel genoeg is kan dit opgeschaald worden naar een maximum van 10 bestellingen per 5 minuten. Hieronder een opsomming van de belangrijkste functionaliteiten.

  • Periodieke controle op nieuwe bestellingen via een cronjob.
  • Bestellingen kunnen naar AFAS gestuurd worden als verkooporder of als verkoopfactuur.
  • Producten dienen in AFAS aanwezig te zijn. Match wordt gemaakt met SKU / Artikelnummer. Deze worden als orderregels toegevoegd aan de verkooporder.
  • BTW instellingen worden veelal intern door AFAS geregeld. Alleen de Prestashop instelling inclusief/exclusief kan van invloed zijn.
  • Kortingen worden vanuit Prestashop op de verkooporder meegenomen, de kortingen hoeven niet in AFAS bekend te zijn. (Bijv. bij Kort-daagse kortingsacties). Prijzen op de bestelling van Prestashop zijn leidend en worden door AFAS overgenomen.
  • Bij sprake van verzendkosten worden deze kosten op een product in AFAS geboekt. Het SKU van dit Verzend product kan worden ingesteld  op het dashboard. Ook hier is het bedrag vanuit Prestashop leidend.
  • De klant die de bestelling plaatst wordt aan de hand van het emailadres gematched in AFAS. Als de debiteur al bestaat wordt de verkooporder hieraan toegewezen, zo niet, word er een nieuwe debiteur aangemaakt met de bekende gegevens.
  • Ondersteuning voor zowel factuur- als verzendadres.

Ondersteuning voor filteren op status bestelling (Bijv. alleen betaalde bestelling naar AFAS)

Importeren van producten:

Ook de producten worden geïmporteerd op basis van een periodiek proces. Afhankelijk van de server is de gemiddelde import snelheid rond de 250 producten per uur. De initiële import is dan ook een tijdrovend proces. Echter zodra dit voltooid is, worden alleen producten bijgewerkt die recentelijk zijn gewijzigd of recentelijk zijn toegevoegd. Bij de standaard configuratie zijn de volgende velden gemapped met elkaar. Verdere attributen zijn vrije keus. Attributen met type Ja/Nee, tekst, numeriek, dropdown (vrije tabel), multi- select worden ondersteund.

AFAS Attribuut Prestashop attribuut Type
Itemcode Referentiecode Text
Description Product name (name) Text
Artikelgroep Default category (speciale dropdown)
BTW groep Tax_rules Handmatige mapping (niet standaard invulling)
Basisverkoopprijs Verkoopprijs Numeriek (currency)
Voorraad Quantity* Numeriek
Afbeelding / Bestandsnaam Image_pair Base64_string (image)

Importeren van klanten:

De koppeling biedt ook de mogelijkheid om klanten vanuit AFAS te importeren naar Prestashop. Dit wordt opgeslagen als een User met ‘type C’. Hiervoor worden alleen de algemene gegevens gebruikt aangezien Prestashop niet de velden heeft om alle informatie op te slaan. Denk aan; voornaam, achternaam, adresgegevens, eventueel bedrijfsnaam, emailadres, telefoonnummer. Dit is gebaseerd op de standaard Profit_Debtor connector.

  • DebtorName
  • AddressLine 1/3/4
  • TelNr
  • Email
  • CreateDate
  • DateModified

Voorraadsynchronisatie:

Complete voorraad synchronisatie is niet mogelijk in Prestashop vanwege een limitatie in de Webservice. Bij producten wordt de initiële voorraad geïmporteerd vanuit AFAS. En bij een bestelling wordt de voorraad in AFAS bijgewerkt bij verdere afhandeling van de verkooporder. Nieuwe inkoopvoorraad in AFAS kan alleen niet worden gesynchroniseerd met Prestashop.

Extra instellingen Dashboard (APIcenter)
  • Importeren van producten (her)-uitvoeren vanaf een bepaalde datum.
    In de praktijk hebben servers (Prestashop) en AFAS om de zoveel tijd een storing. Mocht hierdoor een import niet helemaal goed lopen, is met deze instelling het mogelijk om producten vanaf een bepaalde datum opnieuw te laten importeren.
  • Bij het aanmaken van nieuwe debiteuren worden standaardvelden meegestuurd. Betaalconditie (default=14), Verzamelrekening (default=1400), administratie (default=2)
  • Orderoffset
    Het aantal orders dat in eerste instantie genegeerd moet worden.
  • E-mail ontvangen wanneer order niet goed verzonden kan worden.
    Wanneer een order vanuit Prestashop naar AFAS om wat voor reden niet goed in AFAS gezet kan worden, dan ontvang je hiervan een e-mail.