Catalogus, winkelmand en offerte
Van productkeuze naar een geaccepteerde offerte.
Toegang
Gebruik een sleutel van een gerechtigd, geverifieerd klantbedrijf in Authorization: Bearer …. Vraag alleen de benodigde scopes: catalogue:read, pricing:read, quotes:read en quotes:write. De actuele sleutelvoorwaarden bepalen welke scopes beschikbaar zijn.
Aanpak
- Lees
/commerce/v1/native/catalogueen de/offersvan het gekozen product. - Lees
/commerce/v1/native/basket-addresses. Gebruik de teruggegeven openbare adresreferenties. - Maak een winkelmand via
/commerce/v1/native/baskets, met één bewaardeIdempotency-Keyen de getypeerde aanvraag. - Lees de
/delivery-methodsvan de winkelmand en leg de gekozen/deliveryvast. - Vraag
/baskets/{basket}/quotationaan en lees/quotations/{quotation}. Deze verkorte paden vallen onder/commerce/v1/native. - Accepteer precies die offerte via
/quotations/{quotation}/accept, met de actuele bevestigingsgegevens. - Start, als uw koppeling is toegelaten, de betaling via
POST /commerce/v1/native/quotations/{quotation}/payment. Gebruik{ "revision": "<actuele SHA256-revisie>" }, de scopeorders:writeen één bewaardeIdempotency-Key. Volg uitsluitend de teruggegeven betaaloverdracht. - Lees de bewaarde betaalstatus via
GETop hetzelfde betaalpad, metquotes:read. Deze statuslezing benadert de betaalprovider niet. Een zichtbare route opent geen gesloten betaaltoegang.
Houd rekening met
Bereken geen gezaghebbende pakketprijs of btw in uw client. Een geaccepteerde offerte betekent nog geen betaling of leveranciersbestelling.
Na een fout of time-out
Bewaar per bedoelde opdracht één Idempotency-Key waar vereist, de exacte aanvraag, het bedrijf en de teruggegeven referenties. Lees na een time-out eerst de bewaarde uitkomst. Een nieuwe sleutel kan een tweede handeling starten. Los revisieconflicten en onzekere uitkomsten op vóór een nieuwe opdracht.
401 / 403: herstel de juiste identiteit en bevoegdheid.409: lees de actuele toestand en beoordeel het verschil.429: respecteer de limiet en een eventueleRetry-After.503: de koppeling kan ontbreken of tijdelijk gesloten zijn.
API-contract voor deze taak
/public/v1/openapi/customer-shopping.json
Gebruik de volledige referentie voor de actuele modellen, vereiste headers en operationele beperkingen. Een schema lezen activeert geen betaling, leverancier of service.
Voorbeeld: winkelmand aanmaken
Verstuur naar POST /commerce/v1/native/baskets. Vervang de voorbeelden door referenties die voor dit klantbedrijf zijn teruggegeven. Aantallen zijn decimale strings; de client geeft geen prijs op.
{
"schema_version": "native-basket.v1",
"lines": [
{
"product": "<productreferentie>",
"offer": "<aanbiedingsreferentie>",
"quantity": "2"
}
],
"delivery_address": "<afleveradresreferentie>",
"invoice_address": "<factuuradresreferentie>",
"customer_reference": "ERP-1234"
}Gebaseerd op het vastgelegde Bridge-contract. Controleer bij integratie altijd de actuele referentie en toegangsvoorwaarden.