Orderrouting är processen för att se till att din order hamnar i rätt lager. Detta görs med hjälp av en konfiguration av "regioner" som sedan kopplas samman med logistikleverantörer och filter.
Obs: Kunder före maj 2024 har vanligtvis en enklare lösning för orderrouting som kallas Product Mapping. Om du är en befintlig kund och inte hittar orderrouting i din app, vänligen kontakta oss för att migrera.
Exempel
I den här artikeln kommer vi att använda den fiktiva e-butiken "Acme AB" som har två lager:
- Ett centrallager i Sverige som kallas "Stockholm"
- Ett nytillkommet lager i USA som heter "New York"
Regioner
En "region" är ett geografiskt område som innehåller ett eller flera län eller områden. Till exempel är "Europeiska unionen" ett område medan "Amerikas förenta stater" är ett land. För närvarande konfigureras regioner endast med hjälp av lands- eller riktnummer, men detta kan ändras senare med mer avancerad filtrering.
Om vi använder vårt exempel och Acme AB vill skicka beställningar för Nordamerika till New York, kan det vara klokt att använda två regioner:
- Nordamerika - betjänas av New York
- Övriga världen - betjänas av Stockholm
Regionen "övriga världen"
Det finns en region som använder en "*" för landskod som kallas "Rest of World" som alltid finns och inte kan raderas. Den används som en "catch-all" om ingen annan region kan matchas för en viss order.
Matchning av order med regioner
Prime Penguin använder mottagaradressens landskod för att välja vilken region en order ska skickas från. Om ingen region matchar kommer regionen "resten av världen" att ta emot ordern.
Prioritet
Regioner matchas i den ordning de visas i användargränssnittet. Om två regioner betjänar samma land kommer den region som står först i listan att väljas för en order.
Exklusivitet
När en region väljs ut för en order är urvalet slutgiltigt. Prime Penguin kommer aldrig att ge samma order till flera regioner.
Aktivering
En region är antingen "aktiv" eller inte aktiv. En icke aktiv region tar inte emot några order.
Regionens logistikleverantörer
När du har anslutit en logistik leverantör kan du associera den leverantören med en region. Varje region kan ha en lista med logistikleverantörer och Prime Penguin kommer att försöka matcha ordern med ett lager i den ordning de är konfigurerade.
Filtrering
För att det ska vara meningsfullt med flera lager i en region kan filter tillämpas. De är enkla orderuttryck som avgör om ett lager kan hantera ordern.
Om du t.ex. vill filtrera bort en logistikleverantör om den inte har lager för att uppfylla ordern, kommer det triviala uttrycket has_stock() att se till att inga order vidarebefordras till den logistikleverantören om den inte kan uppfylla hela ordern. Se artikeln filteruttryck eller exemplet nedan om hur du använder det.
Återgång
Om en region av någon anledning väljs, men Prime Penguin inte kan matcha beställningen med en logistikleverantör (eller om regionerna inte har några logistikleverantörer konfigurerade), kommer beställningen att vidarebefordras tilldropship-logistikleverantören.
Aktivering
En logistikleverantör i en region är antingen "aktiv" eller inte aktiv. En icke aktiv logistikleverantör tar inte emot några order.
Exempel
Om Acme AB är en helt ny kund som inte tidigare har konfigurerat någon orderrouting och vill använda New York för nordamerikanska order, men inte ha alla produkter i lager där, kan de konfigurera sin routing så här.
Regioner
Vi skapar en ny region som heter "North America" som betjänar USA och Kanada. De skulle då ha två regioner som skulle se ut så här:
- Nordamerika - CA, USA - - aktiv
- Övriga världen - * - Dropship - aktiv
De har dropship kartlagt till resten av världen eftersom det är standard för nya Prime Penguin kunder. Om det lämnas så här skulle alla beställningar hamna i dropship eftersom ingen logistikleverantör är kopplad till regionerna.
Logistikleverantörer
Allt utanför USA och CA bör betjänas av Stockholm, så de skulle ta bort dropship och lägga till Stockholm i resten av arbetsregionen. De behöver ingen filtrering eftersom Stockholm kommer att ta alla beställningar från regionen.
Deras regionlista ser nu ut så här:
- Nordamerika - CA, USA - - aktiv
- Övriga världen - * - Stockholm - aktiv
På så sätt skulle alla beställningar till USA eller Kalifornien fortfarande hamna i dropship (eftersom den regionen inte har någon logistikleverantör ännu), men allt annat skulle gå till Stockholm.
Nu kan vi lägga till två logistikleverantörer till den nordamerikanska regionen:
- New York - aktiv -
- Stockholm - aktiv -
Vänster så här skulle alla beställningar eller USA eller CA hamna i New York eftersom Prime Penguin valde lager i den ordning de konfigureras.
Filtrering
Vi vet också att New York inte har alla lager, så vi kan redigera New York och lägga till ett filter (se Testning av orderrouting för mer information):
- har_lager()
Listan över logistikleverantörer ser nu ut så här:
- New York - aktiv - has_stock()
- Stockholm - aktiv -
Hur routingen fungerar
En order till USA
- Prime Penguin försöker matcha ordermottagarens landskod i ordning efter de konfigurerade regionerna och väljer: Nordamerika
- Prime Penguin matchar ordern mot varje lager i Nordamerika, i den ordning de är konfigurerade:
- Om New York har lager för ordern: ordern dirigeras till New York
- Om New York inte har lager för ordern: ordern routas till Stockholm
En för för DE
- Prime Penguin försöker matcha ordermottagarens landskod i ordning efter de konfigurerade regionerna och väljer: Övriga världen
- Prime Penguin matchar ordern mot varje lager i Rest of World, i den ordning de är konfigurerade. Eftersom det bara finns ett lager utan filter: ordern dirigeras till Stockholm