ERP-koppelvlak Grossier.nu (0.2.0)

Download OpenAPI specification:Download

Het koppelvlak dat het ERP van een grossier aanbiedt en dat het Grossier.nu-platform aanroept.

Dit is de technische beschrijving bij spec.md. Het ERP is de server; het platform is de enige client. Alle paden staan onder /v1.

Conventies

  • Tijdstippen: ISO 8601 met offset of in UTC.
  • Bedragen: decimaal in euro, exclusief btw tenzij anders vermeld.
  • Fouten: altijd een HTTP-foutstatus met application/problem+json (schema Problem).
  • Paginering: limit + cursor in de aanvraag, nextCursor + asOf in het antwoord.
  • X-Request-Id: door het platform meegestuurd, door het ERP overgenomen in antwoord en logging.

Drie lagen (zie spec.md hoofdstuk 3): minimum (artikelinfo live en idempotent bestellen; zonder dit koppelt het platform niet), full (het volledige koppelvlak, aanbevolen) en de uitbreidingen (modules, met hun capability-naam). Per operatie staat onder x-module tot welke laag of module hij hoort en onder x-platform-function welke functie van het platform erop steunt. Alles boven het minimum meldt het ERP in GET /capabilities; het platform past zich daarop aan. Idempotentie: platformReference is de sleutel; bestaat die al, dan komt het bestaande object terug (200), ongeacht de inhoud van de nieuwe aanvraag. Het ERP legt vast vóór het antwoordt.

Capabilities

Versie en aanwezige modules.

Versie, aanwezige onderdelen en modules

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "apiVersion": "0.2.0",
  • "implementationVersion": "string",
  • "changelogUrl": "http://example.com",
  • "erpName": "string",
  • "environment": "test",
  • "masterData": {
    },
  • "features": {
    },
  • "modules": {
    },
  • "limits": {
    }
}

Vestigingen

Filialen of magazijnen van de grossier.

Vestigingen van de grossier

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Artikelen

Artikelinfo live en artikelstam in bulk.

Artikelinfo live voor een lijst sleutels

Tot 500 sleutels per aanroep. Het ERP matcht exact: op erpArticleId, anders op ean, anders op articleNumber + brand, anders op articleNumber alleen als dat binnen het ERP uniek is. Nooit op een deel van het nummer.

Elke sleutel komt precies één keer terug, herkenbaar aan requestId. Onbekend = known: false.

Met module pricing en een meegegeven erpCustomerId bevat elk bekend artikel het blok price.

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
erpCustomerId
string

Alleen met module pricing; dan bevat het antwoord per artikel het blok price.

required
Array of objects [ 1 .. 500 ] items

Responses

Request samples

Content type
application/json
{
  • "erpCustomerId": "string",
  • "keys": [
    ]
}

Response samples

Content type
application/json
{
  • "asOf": "2019-08-24T14:15:22Z",
  • "warnings": [
    ],
  • "items": [
    ]
}

Artikelstam, volledig of als delta

Zonder updatedSince de volledige stam, gepagineerd. Met updatedSince alleen rijen die sindsdien gewijzigd zijn, inclusief inactief gemaakte artikelen (active: false). Stabiele sortering op (updatedAt, erpArticleId).

Authorizations:
bearerKey
query Parameters
updatedSince
string <date-time>

Alleen rijen gewijzigd op of na dit tijdstip. Gebruik de asOf van de vorige pagina-reeks.

cursor
string

Ondoorzichtige cursor uit nextCursor van de vorige pagina; draagt positie en de asOf van de eerste pagina. De filters gaan bij elke pagina opnieuw mee. Ongeldig of verlopen = 400 invalid_cursor.

limit
integer [ 1 .. 1000 ]
Default: 500
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "nextCursor": "string",
  • "asOf": "2019-08-24T14:15:22Z",
  • "totalCount": 0,
  • "items": [
    ]
}

Artikel aanleggen of bijwerken vanuit het platform

Sleutel is de artikelsleutel (erpArticleId als bekend, anders EAN of artikelnummer + merk). Bestaat het artikel, dan worden de meegegeven velden bijgewerkt (200); anders aangelegd (201). Idempotent: nogmaals sturen geeft hetzelfde artikel.

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
erpArticleId
string

Als bekend; anders zoekt het ERP op EAN of artikelnummer + merk.

articleNumber
required
string <= 50 characters
brand
required
string <= 80 characters
ean
string or null^[0-9]{8,14}$
description
required
string <= 200 characters
orderUnit
integer >= 1
Default: 1
category
string
vatRate
number
salesPriceGross
number

Bruto adviesprijs, als het platform die kent.

imageUrl
string <uri>
Array of objects

Leveranciers met inkoopprijs; code uit GET /suppliers of de naam zoals het platform hem kent.

Responses

Request samples

Content type
application/json
{
  • "erpArticleId": "string",
  • "articleNumber": "string",
  • "brand": "string",
  • "ean": "string",
  • "description": "string",
  • "orderUnit": 1,
  • "category": "string",
  • "vatRate": 0,
  • "salesPriceGross": 0,
  • "imageUrl": "http://example.com",
  • "suppliers": [
    ]
}

Response samples

Content type
application/json
{
  • "erpArticleId": "string",
  • "articleNumber": "string",
  • "brand": "string",
  • "ean": "string",
  • "description": "string",
  • "orderUnit": 1,
  • "active": true,
  • "replacedBy": "string",
  • "category": "string",
  • "imageUrl": "http://example.com",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Eén artikel op ERP-artikel-id

Authorizations:
bearerKey
path Parameters
erpArticleId
required
string
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "erpArticleId": "string",
  • "articleNumber": "string",
  • "brand": "string",
  • "ean": "string",
  • "description": "string",
  • "orderUnit": 1,
  • "active": true,
  • "replacedBy": "string",
  • "category": "string",
  • "imageUrl": "http://example.com",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Voorraad

Vrije voorraad per vestiging, in bulk.

Vrije voorraad per vestiging, volledig of als delta

Eén rij per artikel per vestiging. quantityFree = fysiek aanwezig min gereserveerd. Een artikel dat op een vestiging op nul staat komt met quantityFree: 0 terug zodat de kopie wordt bijgewerkt. Stabiele sortering op (updatedAt, erpArticleId, branchCode).

Authorizations:
bearerKey
query Parameters
updatedSince
string <date-time>

Alleen rijen gewijzigd op of na dit tijdstip. Gebruik de asOf van de vorige pagina-reeks.

cursor
string

Ondoorzichtige cursor uit nextCursor van de vorige pagina; draagt positie en de asOf van de eerste pagina. De filters gaan bij elke pagina opnieuw mee. Ongeldig of verlopen = 400 invalid_cursor.

branchCode
string
limit
integer [ 1 .. 5000 ]
Default: 2000
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "nextCursor": "string",
  • "asOf": "2019-08-24T14:15:22Z",
  • "totalCount": 0,
  • "items": [
    ]
}

Klanten

Debiteuren van de grossier.

Klanten opzoeken (debiteurnummer, platformreferentie, e-mail) of als delta

Precies één van debtorNumber, platformReference, email of updatedSince. Vergelijking van debtorNumber genormaliseerd (letters en cijfers, hoofdletterongevoelig).

Authorizations:
bearerKey
query Parameters
debtorNumber
string
platformReference
string
email
string <email>
updatedSince
string <date-time>

Alleen rijen gewijzigd op of na dit tijdstip. Gebruik de asOf van de vorige pagina-reeks.

cursor
string

Ondoorzichtige cursor uit nextCursor van de vorige pagina; draagt positie en de asOf van de eerste pagina. De filters gaan bij elke pagina opnieuw mee. Ongeldig of verlopen = 400 invalid_cursor.

limit
integer [ 1 .. 500 ]
Default: 100
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "nextCursor": "string",
  • "asOf": "2019-08-24T14:15:22Z",
  • "totalCount": 0,
  • "items": [
    ]
}

Nieuwe debiteur aanmaken

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
platformReference
required
string <= 64 characters

Idempotentiesleutel.

name
required
string
required
object (Address)
object (Address)
email
required
string <email>
phone
string
vatNumber
string
chamberOfCommerceNumber
string
branchCode
string

Responses

Request samples

Content type
application/json
{
  • "platformReference": "string",
  • "name": "string",
  • "address": {
    },
  • "deliveryAddress": {
    },
  • "email": "user@example.com",
  • "phone": "string",
  • "vatNumber": "string",
  • "chamberOfCommerceNumber": "string",
  • "branchCode": "string"
}

Response samples

Content type
application/json
{
  • "erpCustomerId": "string",
  • "debtorNumber": "string",
  • "platformReference": "string",
  • "name": "string",
  • "address": {
    },
  • "deliveryAddress": {
    },
  • "email": "user@example.com",
  • "phone": "string",
  • "branchCode": "string",
  • "routeCode": "string",
  • "isBlocked": true,
  • "blockReason": "string",
  • "paymentTerms": "account",
  • "creditLimit": 0,
  • "openBalance": 0,
  • "iban": "string",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Garage-inlog valideren

Het platform roept dit alleen aan bij het inloggen. Daarna werkt het op erpCustomerId. Een mislukte inlog is 401 met code: invalid_credentials, geen 200 met een vlag.

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
login
required
string
password
required
string <password>

Responses

Request samples

Content type
application/json
{
  • "login": "string",
  • "password": "pa$$word"
}

Response samples

Content type
application/json
{
  • "erpCustomerId": "string",
  • "debtorNumber": "string",
  • "platformReference": "string",
  • "name": "string",
  • "address": {
    },
  • "deliveryAddress": {
    },
  • "email": "user@example.com",
  • "phone": "string",
  • "branchCode": "string",
  • "routeCode": "string",
  • "isBlocked": true,
  • "blockReason": "string",
  • "paymentTerms": "account",
  • "creditLimit": 0,
  • "openBalance": 0,
  • "iban": "string",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Klant lezen

Authorizations:
bearerKey
path Parameters
erpCustomerId
required
string
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "erpCustomerId": "string",
  • "debtorNumber": "string",
  • "platformReference": "string",
  • "name": "string",
  • "address": {
    },
  • "deliveryAddress": {
    },
  • "email": "user@example.com",
  • "phone": "string",
  • "branchCode": "string",
  • "routeCode": "string",
  • "isBlocked": true,
  • "blockReason": "string",
  • "paymentTerms": "account",
  • "creditLimit": 0,
  • "openBalance": 0,
  • "iban": "string",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Orders

Verkooporders plaatsen en lezen.

Verkooporder plaatsen (idempotent)

platformReference is de idempotentiesleutel.

  • Nieuw: 201 met de aangemaakte, bevestigde order; het ERP legt de order vast vóór het antwoordt.
  • Bestaat al: 200 met de bestaande order, ongeacht de inhoud van de nieuwe aanvraag; het ERP vergelijkt niet.

Een onbekend artikel wijst de order niet af: de regel krijgt status: manual. Met module articles.manage legt het platform het artikel vóór de order aan. Het ERP boekt unitPriceNet zoals meegegeven. Met module pricing mag het corrigeren en meldt het dat met priceCorrected en requestedUnitPriceNet; bij payment.method: online corrigeert het niet. Eigen voorraad wordt gereserveerd op source.branchCode, anders delivery.branchCode, anders de vestiging van de klant.

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
platformReference
required
string <= 64 characters

Idempotentiesleutel; uniek per bestelling.

erpCustomerId
required
string
customerReference
string <= 100 characters

Referentie van de garage of het garagepakket, bijv. een werkordernummer.

remark
string <= 2000 characters
source
string
Enum: "webshop" "integrator" "platform"

Waar de bestelling vandaan komt.

orderedAt
string <date-time>
required
object (Delivery)
required
object (Payment)
required
Array of objects (OrderLineCreate) [ 1 .. 200 ] items

Responses

Request samples

Content type
application/json
{
  • "platformReference": "string",
  • "erpCustomerId": "string",
  • "customerReference": "string",
  • "remark": "string",
  • "source": "webshop",
  • "orderedAt": "2019-08-24T14:15:22Z",
  • "delivery": {
    },
  • "payment": {
    },
  • "lines": [
    ]
}

Response samples

Content type
application/json
{
  • "erpOrderId": "string",
  • "erpOrderNumber": "string",
  • "erpCustomerId": "string",
  • "platformReference": "string",
  • "customerReference": "string",
  • "remark": "string",
  • "source": "webshop",
  • "orderedAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "status": "string",
  • "deliveryStatus": "pending",
  • "isCredit": true,
  • "delivery": {
    },
  • "payment": {
    },
  • "totalNet": 0,
  • "totalGross": 0,
  • "documents": {},
  • "lines": [
    ]
}

Orders van een klant, als delta of met zoekfilter

Twee gebruikswijzen. Delta (updatedSince): over alle klanten, of met erpCustomerId per klant; sortering oplopend op (updatedAt, erpOrderId), sort wordt genegeerd. Zoeken (zonder updatedSince): erpCustomerId verplicht, tenzij op platformReference wordt gezocht; sort naar keuze en totalCount in het antwoord. De zoekfilters werken ook op regelniveau (articleNumber, vehicleRegistration, text). Retouren die via het platform zijn aangemeld staan nooit in deze lijst (zie /returns).

Authorizations:
bearerKey
query Parameters
erpCustomerId
string

Verplicht bij zoeken; optioneel bij een delta of bij platformReference.

platformReference
string
updatedSince
string <date-time>

Alleen rijen gewijzigd op of na dit tijdstip. Gebruik de asOf van de vorige pagina-reeks.

sort
string
Enum: "orderedAt:asc" "orderedAt:desc" "updatedAt:asc" "updatedAt:desc"

Alleen bij zoeken. Standaard orderedAt:desc.

orderNumber
string

Deel van het ordernummer.

articleNumber
string

Artikelnummer op een regel; vergelijking ongevoelig voor hoofdletters, spaties en leestekens.

vehicleRegistration
string

Kenteken of VIN op een regel, zonder leestekens.

text
string

Vrije tekst in omschrijving of referentie.

deliveryStatus
Array of strings (DeliveryStatus)
Items Enum: "pending" "partial" "full" "cancelled"

Eén of meer waarden, kommagescheiden.

cursor
string

Ondoorzichtige cursor uit nextCursor van de vorige pagina; draagt positie en de asOf van de eerste pagina. De filters gaan bij elke pagina opnieuw mee. Ongeldig of verlopen = 400 invalid_cursor.

limit
integer [ 1 .. 500 ]
Default: 100
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "nextCursor": "string",
  • "asOf": "2019-08-24T14:15:22Z",
  • "totalCount": 0,
  • "items": [
    ]
}

Eén order

Authorizations:
bearerKey
path Parameters
erpOrderId
required
string
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "erpOrderId": "string",
  • "erpOrderNumber": "string",
  • "erpCustomerId": "string",
  • "platformReference": "string",
  • "customerReference": "string",
  • "remark": "string",
  • "source": "webshop",
  • "orderedAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "status": "string",
  • "deliveryStatus": "pending",
  • "isCredit": true,
  • "delivery": {
    },
  • "payment": {
    },
  • "totalNet": 0,
  • "totalGross": 0,
  • "documents": {},
  • "lines": [
    ]
}

Facturen

Facturen en creditnota's.

Facturen en creditnota's, per klant of als delta

Met updatedSince is erpCustomerId optioneel (delta over alle klanten); zonder is hij verplicht.

Authorizations:
bearerKey
query Parameters
erpCustomerId
string

Verplicht zonder updatedSince.

updatedSince
string <date-time>

Alleen rijen gewijzigd op of na dit tijdstip. Gebruik de asOf van de vorige pagina-reeks.

unpaidOnly
boolean
Default: false
cursor
string

Ondoorzichtige cursor uit nextCursor van de vorige pagina; draagt positie en de asOf van de eerste pagina. De filters gaan bij elke pagina opnieuw mee. Ongeldig of verlopen = 400 invalid_cursor.

limit
integer [ 1 .. 500 ]
Default: 100
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "nextCursor": "string",
  • "asOf": "2019-08-24T14:15:22Z",
  • "totalCount": 0,
  • "items": [
    ]
}

Factuur- of creditnota-PDF

Authorizations:
bearerKey
path Parameters
erpInvoiceId
required
string
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/problem+json
{
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "code": "validation_error",
  • "requestId": "string",
  • "errors": [
    ]
}

Retouren

Retouraanmeldingen en hun status.

Retour aanmelden (idempotent)

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
platformReference
required
string <= 64 characters
erpCustomerId
required
string
remark
string <= 2000 characters
refundIban
string or null
required
Array of objects (ReturnLineCreate) non-empty

Responses

Request samples

Content type
application/json
{
  • "platformReference": "string",
  • "erpCustomerId": "string",
  • "remark": "string",
  • "refundIban": "string",
  • "lines": [
    ]
}

Response samples

Content type
application/json
{
  • "erpReturnId": "string",
  • "erpReturnNumber": "string",
  • "erpCustomerId": "string",
  • "platformReference": "string",
  • "status": "announced",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "creditNoteNumber": "string",
  • "refundIban": "string",
  • "remark": "string",
  • "lines": [
    ]
}

Retouren, per klant, op platformreferentie of als delta

erpCustomerId is verplicht, behalve met updatedSince (delta over alle klanten) of platformReference.

Authorizations:
bearerKey
query Parameters
erpCustomerId
string
platformReference
string
updatedSince
string <date-time>

Alleen rijen gewijzigd op of na dit tijdstip. Gebruik de asOf van de vorige pagina-reeks.

cursor
string

Ondoorzichtige cursor uit nextCursor van de vorige pagina; draagt positie en de asOf van de eerste pagina. De filters gaan bij elke pagina opnieuw mee. Ongeldig of verlopen = 400 invalid_cursor.

limit
integer [ 1 .. 500 ]
Default: 100
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "nextCursor": "string",
  • "asOf": "2019-08-24T14:15:22Z",
  • "totalCount": 0,
  • "items": [
    ]
}

Eén retour

Authorizations:
bearerKey
path Parameters
erpReturnId
required
string
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "erpReturnId": "string",
  • "erpReturnNumber": "string",
  • "erpCustomerId": "string",
  • "platformReference": "string",
  • "status": "announced",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z",
  • "creditNoteNumber": "string",
  • "refundIban": "string",
  • "remark": "string",
  • "lines": [
    ]
}

Inkoop

Module purchaseOrders.

Leveranciers zoals het ERP ze kent

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Inkooporder per leverancier plaatsen (idempotent)

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
platformReference
required
string <= 64 characters

Idempotentiesleutel, bijv. ':'.

erpOrderId
required
string

De verkooporder waar deze inkoop bij hoort.

supplierCode
required
string
mode
required
string
Enum: "confirmed" "draft"
expectedAtWholesaler
string or null <date-time>
required
Array of objects non-empty

Responses

Request samples

Content type
application/json
{
  • "platformReference": "string",
  • "erpOrderId": "string",
  • "supplierCode": "string",
  • "mode": "confirmed",
  • "expectedAtWholesaler": "2019-08-24T14:15:22Z",
  • "lines": [
    ]
}

Response samples

Content type
application/json
{
  • "erpPurchaseOrderId": "string",
  • "erpPurchaseOrderNumber": "string",
  • "erpOrderId": "string",
  • "platformReference": "string",
  • "supplierCode": "string",
  • "status": "draft",
  • "lines": [
    ]
}

Inkooporders bij een verkooporder

Authorizations:
bearerKey
query Parameters
erpOrderId
string

De verkooporder waar de inkooporders bij horen.

platformReference
string

Terugvinden na een verloren antwoord. Eén van beide parameters is verplicht.

header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ]
}

Routes

Module deliverySchedule.

Routeschema van een klant

Authorizations:
bearerKey
path Parameters
erpCustomerId
required
string
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "erpCustomerId": "string",
  • "routeCode": "string",
  • "routes": [
    ]
}

Exports

Module exports.

Export als bestand starten

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Request Body schema: application/json
required
dataset
required
string
Enum: "articles" "stock"
updatedSince
string <date-time>

Leeg = volledige set.

branchCode
string

Responses

Request samples

Content type
application/json
{
  • "dataset": "articles",
  • "updatedSince": "2019-08-24T14:15:22Z",
  • "branchCode": "string"
}

Response samples

Content type
application/json
{
  • "exportId": "string",
  • "dataset": "articles",
  • "status": "pending",
  • "requestedAt": "2019-08-24T14:15:22Z",
  • "asOf": "2019-08-24T14:15:22Z",
  • "rowCount": 0,
  • "downloadUrl": "http://example.com",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "error": "string"
}

Status en download-URL van een export

Authorizations:
bearerKey
path Parameters
exportId
required
string
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "exportId": "string",
  • "dataset": "articles",
  • "status": "pending",
  • "requestedAt": "2019-08-24T14:15:22Z",
  • "asOf": "2019-08-24T14:15:22Z",
  • "rowCount": 0,
  • "downloadUrl": "http://example.com",
  • "expiresAt": "2019-08-24T14:15:22Z",
  • "error": "string"
}

Testomgeving

Module testing.

Testdata terugzetten naar de beginstand

Authorizations:
bearerKey
header Parameters
X-Request-Id
string <= 64 characters

Correlatie-id van het platform; overnemen in antwoord en logging.

Responses

Response samples

Content type
application/json
{
  • "asOf": "2019-08-24T14:15:22Z"
}

Melding van het ERP aan het platform (module webhooks) Webhook

Het ERP roept de door het platform opgegeven URL aan met een bearer-sleutel die het platform uitgeeft. Het platform antwoordt 200 en haalt daarna zelf de order of factuur op; de melding hoeft geen volledige inhoud te dragen. Bij een niet-200 probeert het ERP later opnieuw.

Authorizations:
bearerKey
Request Body schema: application/json
required
eventId
required
string
type
required
string
Enum: "order.updated" "invoice.created" "return.updated" "stock.updated"
occurredAt
required
string <date-time>
erpCustomerId
string
erpOrderId
string
erpInvoiceId
string
erpReturnId
string

Responses

Request samples

Content type
application/json
{
  • "eventId": "string",
  • "type": "order.updated",
  • "occurredAt": "2019-08-24T14:15:22Z",
  • "erpCustomerId": "string",
  • "erpOrderId": "string",
  • "erpInvoiceId": "string",
  • "erpReturnId": "string"
}