nShift Checkout API is een integratieservice voor communicatie tussen nShift Checkout en je webshop. De nShift Checkout API gebruikt een REST API-framework voor communicatie met JSON als datadrager en biedt verschillende functies.
Om aan de slag te gaan met de API, moet je de onderstaande stappen doorlopen, of je kunt direct naar de technische documentatie gaan hier.
- Client ID en secret aanmaken
- Een token aanvragen
- Een sessie aanmaken
- Endpoint voor leveringsopties aanroepen
- Een gedeeltelijke zending aanmaken
- API-documentatie
1. Client ID en secret aanmaken
Begin met het aanmaken van de Client ID en secret die nodig zijn voor authenticatie.
- Log in op nShift Portal met je eigenaar-gebruiker.
- Klik linksboven op Settings en navigeer naar API Configuration > Client.
- Klik op de pagina Clients op de knop Add.
- Vul Display name en Description in. Kies een naam en beschrijving waarmee je de token later gemakkelijk kunt herkennen. Vink het vakje Enable aan om de token direct te activeren. (Je kunt de token later op elk moment activeren of deactiveren).
- Kies Public checkout API onder Allowed Scopes; dit zijn de API’s waarvoor je toegang nodig hebt.
- Klik op Save. Je Client ID en Client Secret worden nu gegenereerd en op het scherm weergegeven. Belangrijk: De Client Secret is niet meer beschikbaar nadat je de pop-up sluit, dus zorg ervoor dat je deze kopieert.
- Klik op Close. De Client ID wordt nu weergegeven op de pagina Clients. Je kunt op elk moment op een Client ID klikken om deze te bewerken of verwijderen, of om deze te activeren/deactiveren.
2. Een token aanvragen
Gebruik je Client ID en Client Secret om een toegangstoken te genereren. Dit doe je door een POST-aanvraag te sturen naar het volgende endpoint:
https://account.nshiftportal.com/idp/connect/token
Voorbeeld:
POST https://account.nshiftportal.com/idp/connect/token
Cache-Control: no-cache
Content-Type: application/x-www-form-urlencoded
client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=client_credentials
Als de aanvraag geldig is en de client correct is geconfigureerd, ontvang je een JSON-response:
{
"access_token": "some-real-token-data-dskjfhsuijkdhfgjkasjdgfhqoeiefoiknsoidfgvoiltgjvpdrofjmwpkldujrftvoifgkhbnilsakjprotglijkqp2owrlfjkvmowrifgho2qw9ouejifpe9rodtuj3-0porfij9odtujgw0etioyh",
"expires_in": 3600,
"token_type": "Bearer"
}De bearer token is één uur geldig.
3. Een sessie aanmaken
Gebruik de bearer token om het sessie-endpoint van nShift Checkout aan te roepen. Stuur een POST-aanvraag naar:
https://www.nshiftportal.com/checkout/options/v1/sessions/{checkoutConnectionId}
Gebruik de Connection ID als path-parameter. Ga naar Connections in het bovenste menu en zoek je Connection ID in de lijst. (Lees meer over Connections hier).
De POST-call maakt een sessie aan die 4 uur geldig is, tenzij deze in die periode wordt gebruikt. De sessie bevat informatie uit je checkout-configuratie, bijvoorbeeld afzendergegevens. Als je wilt wijzigen welke Checkout-configuratie je gebruikt om leveringsopties op te halen, kun je eenvoudig wijzigen naar welke configuratie de connection ID verwijst.
Om te wijzigen naar welke Checkout-configuratie een connection ID verwijst, ga je naar Connections in het bovenste menu en klik je op de connection die je wilt wijzigen. Kies een andere Checkout in de dropdownlijst Configuration en klik op Save.
4. Endpoint voor leveringsopties aanroepen
Met behulp van de session ID kun je een POST-call doen naar het endpoint voor leveringsopties:
https://www.nshiftportal.com/checkout/options/v1/shipping-options/{sessionId}
De request body van het endpoint voor leveringsopties bevat informatie over de ontvanger, het pakket/de pakketten en andere aanvullende gegevens die van invloed kunnen zijn op beschikbare leveringsopties. De response bevat een lijst met beschikbare leveringsopties. Als je de nShift Checkout-widget gebruikt, moeten deze gegevens aan de juiste methode worden doorgegeven om de leveringsopties weer te geven.
5. Een gedeeltelijke zending aanmaken
Wanneer je eindklant een leveringsoptie heeft geselecteerd, kun je een gedeeltelijke zending aanmaken in je Book and Print-platform (nShift Delivery, nShift Ship of nShift Transsmart).
Doe een POST-call naar:
https://www.nshiftportal.com/checkout/shipments/v1/shipments
Voor meer informatie, zie de API-documentatie.
De request body van deze call bevat de session ID, de geselecteerde ID van de leveringsoptie en andere informatie over de zending, zoals de order-ID, die dient als unieke identificatie om de gedeeltelijke zending in het Book and Print-platform terug te vinden. De request body bevat ook informatie over de ontvanger. Je kunt sommige ontvangersgegevens wijzigen (sommige waarden, zoals postcode, kunnen niet worden gewijzigd vanwege hun invloed op beschikbare leveringsopties).
De call resulteert in een aangemaakte gedeeltelijke zending in het Book and Print-platform voor de geselecteerde leveringsoptie. Om de gedeeltelijke zending om te zetten naar een daadwerkelijke zending, moet je de bijbehorende endpoints aanroepen in de betreffende Book and Print-platforms.
API-documentatie
Onze technische API-documentatie is hier beschikbaar: