Formålet med StoreOrder-metoden er at kunne gemme en virtuel ordre/forsendelse i skyen og genbruge dataene i andre nShift Ship-installationer uden at skulle sende alle data via andre systemer.
StoreOrder-metoden er tilgængelig via Shipment Server. Den gemmer forsendelsesdata som JSON, som derefter kan hentes senere, når det er nødvendigt. Løsningen er især nyttig, hvis du bruger ShipAdvisor 2.0 i en checkout-løsning og producerer forsendelser via nShift On-premises, f.eks. har en Klarna-integration. Data kan derefter importeres ubesværet ved hjælp af OrderId i importfilen.
Lær om følgende emner i denne artikel:
- Brug med ShipAdvisor 2.0
- Brug med nShift Checkout
- Shipment Server forespørgsel og svar eksempler
- Opsætning i nShift On-premises
Brugstilfælde - ShipAdvisor 2.0
Denne sektion vil beskrive et typisk brugstilfælde for StoreOrder-funktionaliteten.
Du er en kunde, der har en webshop og en checkout-løsning, der bruger ShipAdvisor 2.0:
- En forbruger går til checkout i din webshop. En eller flere GetShipAdvise forespørgsler sendes fra din checkout til ShipAdvisor 2.0. (ShipAdvisor bruges til at vise forsendelsesalternativer, leveringstider, priser osv. Læs mere).
- Når forbrugeren har gennemført betalingen, sendes en StoreOrder forespørgsel til Shipment Server for at gemme data om ordren i OrderStorage-webservicen. Du angiver OrderId i forespørgslen, og vi anbefaler at generere en GUID til dette formål. Gem den på ordren i dit ERP/WMS, så du kan importere den til nShift On-premises senere. Hvis du bruger nShifts Klarna-integration i din flow, sker StoreOrder-forespørgslen ved Klarna's "confirm" forespørgsel.
Se eksempel på forespørgsel og svar nedenfor.
- I importfilen, der sendes til nShift On-premises for at producere forsendelsen, skal du inkludere clientId i feltet ShipAdvisor Reference->Reference. Dette vil udløse importen af de gemte ordredata til nShift On-premises. Bemærk, at data i importfilen altid vil overskrive eventuelle gemte data. Hvis det samme felt findes i de data, der er gemt ved hjælp af StoreOrder-metoden, vil det blive overskrevet af dataene i det tilsvarende felt i importfilen.
Eksempel 1: StoreOrder-forespørgslen har værdien “John” i Modtager navn 1. Modtager navn 1 i importfilen har værdien “Bill” => “Bill” vil blive brugt på forsendelsen.
Eksempel 2: StoreOrder-forespørgslen har værdien "John" i Modtager navn 1. Modtager navn 1 i importfilen har ingen værdi => “John” vil blive brugt på forsendelsen.
Brug med Delivery Checkout
Når du gemmer ordren i Delivery Checkout, tildeler du en prepareid til ordren. Denne prepareid bruges derefter til at finde ordren i nShift Ship. Se eksempel på forespørgsel for at oprette forsendelser fra Delivery Checkout.
Gå til Delivery Checkout dokumentation
Shipment Server forespørgsel og svar eksempel
HTTP-metode: POST
Content-Type: multipart/form-data.
Orderid i options skal være en af følgende:
- prepareid fra nShift Checkout
- tms_reference fra Klarna
Eksempel på forespørgsel: StoreOrder
{
"data": {
"Kind": 1,
"Addresses": [
{
"Kind": 1,
"Name1": "Test Name1",
"Street1": "Test Address 1",
"PostCode": "11825",
"City": "Stockholm",
"Phone": "004612341234",
"Mobile": "004612341234",
"Email": "noreply@dmain.com",
"Attention": "Test Attention",
"CountryCode": "SE"
}
],
},
"options": {
"OrderId": "9f8dc56b-5c33-4bfe-9d41-6a49a5f705cd"
},
"key": "sample",
"actor": "1234",
"command": "StoreOrder"
}
Svar:
Bemærk: Varelinjeinformation håndteres ofte på lageret. Det anbefales derfor ikke at gemme nogen varelinjeinformation (Shipment.Lines) i OrderStorage. At gemme dette og importere varelinjedata vil medføre dublerede varelinjer på forsendelsen.
{
"clientId": "3200123456",
"orderGuid": "5e9dc1ae-d170-455e-8305-fd489b1e5ea3",
"responseStatus": {
"code": "Success",
"messages": []
}
}
“clientId” skal bruges i ShipAdvisor Import opsætningselementet - se næste sektion for flere detaljer.
Vi anbefaler, at du ikke gemmer afsender og linjer i OrderStorage. Linjer gemt i OrderStorage vil blive tilføjet til forsendelsen ved import af varelinjer.
Eksempel:
- Du gemmer en linje i StoreOrder med 1 pakke, 2 kg.
- Efter pakning sender dit ERP/WMS 1 pakke, 0,5 kg via Import, vil du ende med 1 forsendelse med 2 pakker på 2 og 0,5 kg.
Når du bruger Import, skal du angive en transportørkode, der svarer til ProdCSid i StoreOrder.
Eksempel på forespørgsel: SubmitShipment
{
"Kind": 1,
"ActorCSID": "1234",
"OrderNo": "SomeOrderNumber",
"ProdConceptID": 1782,
"References": [
{
"Kind": 12,
"Value": "SomeReference"
}
],
"Lines": [
{
"PkgWeight": 2000,
"Height": "150",
"Length": "150",
"Width": "150",
"References": [
{
"Kind": 23,
"Value": "Hats"
}
],
"PkgVol": 0,
"GoodsTypeKey1": "",
"Pkgs": [
{
"ItemNo": 1
}
]
}
]
}
Opsætning i nShift On-premises
I nShift On-premises åbner du opsætningselementet under Opsætning > ShipAdvisor Import.
Client ID under fanen ShipAdvisor 2 skal være installations-ID'et på den aktør, som ShipAdvisor 2.0 bruger.
I din Import Opsætning skal du inkludere feltet ShipAdvisor Reference->Reference og bruge dette til at inkludere OrderId i din importfil.