[Nederlands / NL] | [English / EN]
API Endpoints
Asperion heeft voor de ondersteuning van software van partners een API beschikbaar.
Deze API en documentatie is bedoeld voor software ontwikkelaars die hun commerciële software willen koppelen met Asperion.
Hierbij een overzicht van alle beschikbare endpoint met de mogelijkheden en onmogelijkheden.
Verder is deze documentatie aangevuld met extra informatie, waar je rekening kunt houden tijdens het gebruik van deze API.
Voor meer algemene informatie over deze API en de autorisatie via oAuth zie: Asperion REST API
Verdere technische informatie is te vinden in de online Swagger docs: https://api-sandbox.asperion.nl/swagger/
Administrations / Administraties
/v1/administrations (readonly)
Lijst met beschikbare administraties (tenants) en Detail informatie over een administratie.
Een gebruiker heeft toegant tot 1 of meer administraties.
Na het ophalen van een accesstoken is de standaard administratie van de klant geselecteerd.
Je kunt gegevens van een andere administratie (Tenant) ophalen door in de header een parameter mee te geven X-TenantId.
Approvalroutes / Accorderingsroutes
Lijst met beschikbare accorderingsroutes. Als deze optie is ingeschakeld in de administratie, is dit een verplichte optie bij het aanmaken van Inkoopfacturen (Purchase Invoices).
Dit is de lijst met beschikbare routes voor de geselecteerde administratie.
Articles / Artikelen
/v1/articles (read/write)
Artikelen beheer. Met dit endpoint kunnen artikel overzichten worden opgehaald en artikelen worden aangemaakt en bijgewerkt.
Attributen zoals de actuele voorraad (currentStock), kunnen niet worden aangepast, dit heeft ook boekhoudkundige gevolgen. Dit kan enkel via de Asperion Applicatie.
Indien er gebruik wordt gemaakt van handels toepassingen in Asperion (inTrade pakket) kan de voorraad worden aangepast door nieuwe orders aan te maken via het endpoint: /v1/SalesOrderWithLines/
Attribuut "SalesTypeId" (VerkoopsoortId) verwijst naar de verkoopsoorten. (Zie endpoint: /v1/salestypes)
Dit bepaald de grootboekrekening waar verkopen van dit artikel op worden geboekt.
Costcenters / Kostenplaatsen
/v1/costcenters(readonly)
Lijst met beschikbare kostenplaatsen, te gebruiken bij facturen of journaalposten indien de administratie kostenplaatsen gebruikt.
CostUnits/ Kostendragers
/v1/costunits (readonly)
Lijst met beschikbare kostendragers, te gebruiken bij facturen of journaalposten indien de administratie kostendragers gebruikt.
Countries / Landen
/v1/countries (readonly)
Lijst met beschikbare landen, te gebruiken bij het aanmaken van debiteur/crediteur stamgegevens of (concept)facturen.
Alleen landen in deze lijst beschikbaar worden ondersteund door Asperion.
Creditors / Crediteuren
/v1/creditors
Beheer van crediteuren (Leveranciers). Te gebruiken voor het ophalen van crediteur informatie, aanmaken of bijwerken van crediteurinformatie.
o.a. ook nodig voor het aanmaken van een inkoopfactuur (purchase invoice).
Een crediteur moet lid zijn van een crediteursoort attr: creditorKindId. (zie endpoint: creditorkinds)
Creditorkinds / Crediteursoort
/v1/creditorkinds (readonly)
Typering / groep van een crediteur. Bepaald o.a. in Asperion de tegenrekening waarop de crediteurboeking wordt geboekt in het grootboek.
Een crediteur/creditor heeft een verplicht crediteursoort.
Debtors / Debiteuren
/v1/debtors (read/write)
Beheer van debiteuren/opdrachtgevers. Te gebruiken om debiteur informatie op te halen, aanmaken of bewerken van debiteurinformatie.
a.o. ook nodig voor het aanmaken van een verkoopfactuur (SalesInvoice / DraftSalesInvoice) of Verkooporder (SalesOrderWithLines)
Een debiteur moet lid zijn van een debiteursoort. (zie debtorkinds)
Debtors - Mandates / Incasso Mandaten
/v1/debtors/{debtorId}/mandates (read/write)
Beheer van SEPA incasso mandaten.
Mandaten zijn nodig voor het genereren van incasso opdrachten in Asperion.
Extra atentie voor de volgende velden:
- IBAN
Wordt overgenomen uit de betreffende debiteur. - typeId
1 = Eenmalig Machtiging , 2 = Doorlopende Machtiging - sddType
1 = Core Incasso, 2 = B2B Incasso
PUT endpoint geschikt voor het updaten van de signdate.
Debtorkinds / Debiteursoorten
/v1/debtorkinds(readonly)
Typering / groep van een debiteur. Bepaald o.a. in Asperion de tegenrekening waarop de debiteurboeking wordt geboekt in het grootboek.
Een debiteur/debtor heeft een verplicht debiteursoort.
DraftSalesInvoices / Conceptfacturen
/v1/draftsalesinvoices(read/write)
Conceptfacturen (Module Facturatie). Aanmaken en bewerken van facturen in Asperion module Facturatie. Als facturen hier worden aangemaakt, kunnen deze vanuit Asperion definitief worden gemaakt en voorzien van een factuurnummer en layout. Dit endpoint maakt de factuur header. Factuurregels worden aangemaakt via endpoint: /v1/draftsalesinvoices/{invoiceId}/lines
Om facturen aan te maken incl alle regels in een post, zie endpoint: draftsalesinvoiceswithlines
Factuurregels:
De factuurregels kunnen de typen: (bookingType) "A" = Artikel, "V" = Verkoopsoort, "G" = Grootboekrekening of "T" = Tekst bevatten.
- BookingType "A"
Indien het veld bookingType "A" = Artikel wordt gebruikt is het veld ArticleSku (Artikelnummer) ook verplicht. - BookingType "V"
Indien het veld bookingType "V" = Verkoopoort wordt gebruikt is het veld salesTypeId (VerkoopsoortId) ook verplicht.
De beschikbare SalesTypes / verkoopsoorten kunnen worden opgehaald via het endpoint: /v1/SalesTypes (GET) - BookingType "T"
Het bookingType "T" = Tekst is voor additionele tekstregels. Er zijn verder geen verplichte andere opties.
Deze regels zijn alleen voor tekst bedoeld. Opgegeven prijzen, Aantallen etc. worden niet doorberekend in het factuurtotaal.
- BookingType "G"
Indien het veld bookingType "G" = Grootboekrekening wordt gebruikt is het veld ledgerAccountId (GrootboekrekeningId) ook verplicht.
De beschikbare LedgerAccounts / grootboekrekeningen kunnen worden opgehaald via het endpoint: /v1/LedgerAccounts (GET).
Let op! Het type grootboekrekening. Hier kunnen alleen de grootboekrekeningen voor verkopen worden gebruikt. Gebruik filter type op het endpoint ledgeraccounts op : 9 "Turnover". (Zie ook endpoint: ledgeraccounts)
DraftSalesInvoicesWithLines / Conceptfacturen (incl factuurregels)
/v1/draftsalesinvoiceswithlines (read/write)
Conceptfacturen (Module Facturatie). Aanmaken van facturen in Asperion module Facturatie incl. alle regels. Zo kan een conceptfactuur in een keer worden aangemaakt. Zie ook endpoint: draftsalesinvoices
Files/ Bestanden
/v1/files (readonly)
Downloaden van PDF files op basis van het id. Zoals de scan van de inkoopfactuur (purchaseinvoice).
InboxFiles
/v1/inboxfiles (POST / GET)
InboxFiles zijn de centrale lijst met documenten die nog verwerkt moeten worden in de administratie.
Deze inboxfiles kunnen (scans van) inkoop-, verkoopfacturen of bonnetjes zijn voor verdere verwerking in Asperion.
Downloaden van PDF files uit de inboxfile lijst op basis van het id. (GET)
Toevoegen van PDF files aan de inbox. max. 5mb (POST)
Journals / Dagboeken
/v1/journals (readonly)
Dagboeken in gebruik in de Administratie. Dit kan worden gebruikt voor het ophalen van de beschikbare dagboeken.
o.a. nodig bij het aanmaken van journaalposten (JournalEntries)
Er zijn verschillende typen dagboeken beschikbaar. (M = Memoriaal, K = Kas)
Journalentries / Journaalposten
/v1/journalentries (read/write)
/v1/journalentrieswithlines (read/write)
Endpoint voor het aanmaken van Journaalposten en journaalpostregels.
Journaalposten komen als concept in Asperion klaar te staan voor verwerking.
Een journaalpost bevat altijd een geldige:
- Boekperiode (Bookyear en Bookperiod).
- Dagboek (JournalId). Zie endpoint: Journals
- Boekstuknummer: (sourceDocumentNumber)
Verder kar er een omschrijving (Description) zoals "Kasboek Jun. 2021"en een Datum (Date) optioneel worden meegegeven.
Het aanmaken van journaalposten is beperkt tot de typen: Memoriaal en Kas.
Memoriaal journaalposten (regels) moeten altijd in balans zijn. (Debet bedrag = Creditbedrag)
Kas journaalposten moeten worden voorzien van een begin- en eindsaldo. (openingBalance / closingBalance) verschil tussen deze saldo's moeten als regel(s) worden aangemaakt.
LedgeraccountClassifications / Grootboekrekeningschema
/v1//v1/ledgeraccountclassifications (readonly)
Rekeningschema structuur. Grootboekrekeningen en verdichttingstructuur van de administrtie incl RGS codering.
Gebruik bij rapportagesoftware zoals PowerBI rapportage, voor het ophalen van de schema en verdichtingstructuur. Zoor de rapportages zie endpoint: LedgerGrouped
Ledgeraccounts / Grootboekrekeningen
/v1/ledgeraccounts (readonly)
/v1/ledgeraccounts/{id} (readonly)
Lijst met beschikbare grootboekrekeningen in de administratie. Of de details van een grootboekrekening zoals de omschrijving, Type, RGS code etc.
Een grootboekrekening heeft een bepeeld type. Om te kunnen filteren voor de toepassing.
Filter on Type
- 1 = BalanceSheetOther (Balans)
- 2 = ProfitAndLossOther (Winst- en verlies)
- 3 = CashRegister (Kasboek)
- 4 = Bank (Bank)
- 5 = Giro (Bank)
- 6 = Sales (Debiteuren)
- 7 = Purchase (Crediteuren)
- 8 = SuspenseAccount (Kruisposten)
- 9 = Turnover (Verkoop / Omzet)
- 10 = Costs (Kosten / Inkoop)
- 12 = PaymentDifferenceDiscount (Betalingsverschillen)
- 13 = NeutralAccount (Balans Neutraal)
- 14 = VatAccount (BTW rekeningen)
- 15 = ResultAccountAnnualClose (Resultaten / Jaarovergang)
LedgerAccountTypes / Grootboekrekeningtypes
/v1/ledgeraccounttypes (readonly)
/v1/ledgeraccounttypes/{id} (readonly)
Lijst met beschikbare grootboekrekeningtypen. Zie ook endpoint: Ledgeraccounts.
LedgerGrouped / Grootboekrapportage
/v1/ledgergrouped (readonly)
Lijst met saldo per grootboekrekening voor een opgegeven periode (bookyear = verplicht). Extra opties om te kunnen groeperen op dagboek etc.
Dit is voor het exporteren van boekings data uit Asperion voor een administratie voor het gebruik in rapportagesoftware of andere toepassingen.
Verder zijn er een aantal velden beschikbaar om de resultaten op te filteren.
Een belangrijke is het Filter op BalanceOrProfitLoss
- B = Balance (Balans Rekeningen)
- P = ProfitLoss (Winst- en Verliesrekeningen)
OutstandingPurchaseInvoices / Openstaandeposten Inkoop
/v1/outstandingpurchaseinvoices (readonly)
Lijst met de openstaande inkoopfacturen uit de geselecteerde administratie.
Inclusief de informatie van de factuur (Openstaand Bedrag, Datum, Leeftijd en Dagen Vervallen) en informatie over de crediteur. (Naam, Nummer en ID)
Verder zijn er een aantal velden beschikbaar om de resultaten op te kunnen filteren.
OutstandingSalesInvoices / Openstaandeposten Verkoop
/v1/outstandingsalesinvoices (readonly)
Lijst met de openstaande verkoopfacturen uit de geselecteerde administratie.
Inclusief de informatie van de factuur (Openstaand Bedrag, Datum, Leeftijd en Dagen Vervallen) en informatie over de debiteur. (Naam, Nummer en ID)
Verder zijn er een aantal velden beschikbaar om de resultaten op te kunnen filteren.
Paymentconditions / Betaalcondities
/v1/paymentconditions (readonly)
Betalingscondities beschikbaar in de administratie.
Te gebruiken bij de DraftSalesInvoice, DraftSalesInvoiceWithLines, SalesInvoices en SalesInvoicesWithLines
PaymentMethod / Betaalmethodes
/v1/paymentmethod (readonly)
Lijst met beschikbare betaalmethodes.
Te gebruiken bij de DraftSalesInvoice en DraftSalesInvoiceWithLines.
Voorbeelden: IDEAL, PayPal, Op Factuur, Bol.com, Creditcard etc.
PurchaseInvoices / Inkoopfacturen
/v1/purchaseinvoices (read/write)
/v1/purchaseinvoiceswithlines (read/write)
Aanmaken op ophalen van inkoopfacturen uit de administratie.
Los aanmken van de kop en factuurregels via endpoint /v1/purchaseinvoices
Of de complete factuur incl. regels via endpoint: /v1/purchaseinvoiceswithline
Dit endpoint wordt gebruikt voor het toevoegen van inkoopfacturen die al zijn gecodeerd in een ander pakket. Dus reeds zijn voorzien van het juiste grootboekrekening codering, juiste crediteur etc.
De inkoopfacturen worden dan "kant-en-klaar" ingevoerd via deze API.
Zijn er nog geen grootboekrekeningen toegekent, dan zal de factuur via de PDF scan via het endpoint /v1/InboxFiles worden ingelezen.
Via de GET endpoints kan inkoopfactuur detail informatie worden opgehaald.
Er is ook de mogelijkheid om een factuurscan (PDF) toe te voegen aan de inkoopfactuur met het endpoint: /v1/purchaseinvoices/{id}/file [POST]
SalesInvoices / Verkoopfacturen
/v1/salesinvoices (read/write)
/v1/salesinvoiceswithlines (read/write)
Aanmaken op ophalen van verkoopfacturen uit de administratie.
Los aanmken van de kop en factuurregels via endpoint /v1/salesinvoices
Of de complete factuur incl. regels via endpoint: /v1/salesinvoiceswithline
Dit endpoint wordt gebruikt voor het aanmaken van verkoopfacturen die al zijn gecodeerd in een ander pakket. Dus reeds zijn voorzien van het juiste grootboekrekening codering, juiste debiteur etc.
De verkoopfacturen worden dan "kant-en-klaar" ingevoerd via deze API.
Zijn er nog geen grootboekrekeningen toegekent, dan zal de factuur via de PDF scan via het endpoint /v1/InboxFiles worden ingelezen.
Via de GET endpoints kan verkoopfactuur detail informatie worden opgehaald.
Er is ook de mogelijkheid om een factuurscan (PDF) toe te voegen aan de verkoopfactuur met het endpoint: /v1/salesinvoices/{id}/file [POST]
SalesOrderWithLines/ Verkooporders
/v1/salesorderwithlines (read/write)
Aanmaken en bewerken van verkooporders incl regels.
* Deze zijn alleen van toepassing als de administratie over het inTrade/Handels pakket of de module verkooporder beschikt.
De verkooporder regels kunnen enkel de typen: (bookingType) "A" = Artikel of "T" = Tekst bevatten.
Het betreft hier het endpoint voor het aanmaken van verkooporders, welke is bedoeld voor het uitleveren van bestelde producten.
Een verkooporder moet dan ook uit minimaal 1 regel bestaan met het bookingType "A".
Indien het veld bookingType "A" Artikel wodt gebruikt is het vel ArticleSku (Artikelnummer) ook verplicht.
Het bookingType "T" is voor additionele tekstregels.
SalesTypes / Verkoopsoorten
/v1/SalesTypes (readonly)
Lijst met beschikbare verkoopsoorten uit de administratie. Voor het gebruik in DraftSalesInvoices*, SalesInvoices* endpoints.
VatCodes / BTWCodes
/v1/vatcodes (readonly)
Lijst met beschikbare BTW Codes uit de administratie.
Voor het gebruik in DraftSalesInvoices*, SalesInvoices*, PurchaseInvoices* endpoints.
Gebruik het veld: salesCode (bool) als filter om de verkoop- dan wel de inkoopcodes op te halen.