Specter - lagersaldo - Så här fungerar lagersaldosynkroniseringen i Specter
Introduktion
För att lagersaldosynkronisering mellan Specter och WooCommerce ska fungera behöver du aktivera funktionen Specter lagersynkonisering i Specter-modulen.
Detta gör du genom att navigerar till → WooCommerce → Specter → Connector Settings och klickar därefter på knappen Activate Automatic Stock Synchronization.
Ny produkt i WooCommerce
När du skapar en ny produkt i WooCommerce (där artikelnumret inte redan existerar i Specter) och har produktsynkronisering WooCommerce till Specter aktiverad så skickas lagersaldot med till Specter. Därefter kan du inte göra justeringar i lagersaldot från webbutiken. Detta måste göras från Specter eftersom Specters system är styrande/master för lagersaldohantering.
Ny order i WooCommerce
När en ny order skapas i WooCommerce så justerar WooCommerce lagersaldot per automatik.
Samtidigt som en order rapporteras till Specter ändras lagersaldot i Specter på de produkter som fanns med i ordern. Denna ändring rapporteras omgående tilllbaka till WooCommerce och lagersaldot uppdateras i WooCommerce. Om allt fungerar som det ska så sker här egentligen ingen ändring av lagersaldot i WooCommerce eftersom WooCommerce själv redan har justerat ner lagersaldot i enlighet med innehållet i ordern.
Lagersaldoändring i Specter
I Specter kan du justera lagersaldot på en produkt, endera genom en inleverans eller genom en Saldo- / Prisjustering. Detta gör du genom att:
- Logga in i ditt konto hos Specter och därefter navigera till → Lager → Lager och där välj Inleverans eller Saldo- / Prisjustering.
- Sök efter den artikel du vill ändra.
- Ändra det antal du gjort en inleverans på alternativt det antal som ska finnas i lager (beroende på om du gjort en inleverans alternativt saldojustering).
- Klicka på Spara.
Tänk på att antalet artiklar som finns i lager inte nödvändigtvis är det samma som antalet disponibla artiklar (lagersaldot som visas i webbutiken).
Exempelvis – du har 10 produkter i lager av ett artikelnummer. Samtidigt har du 2 st artiklar som är köpta (och finns som ordrar i Specter) men som ännu inte är skickade till kund. Då kommer antal i lager fortfarande att vara 10 men antalet disponibla produkter att vara 8.
Schemalagda uppdateringar för att undvika timeout
Om det återrapporterade antalet artiklar som ska uppdateras är fler än 100 st så delas uppdateringen upp i batcher om 100 st. Rent konkret innebär det att
- Lagersaldot uppdateras på 100 st artiklar.
- Ett nytt jobb schemaläggs att utföras om 5 sekunder.
- Nästa 100 st artiklar uppdateras.
- Ett nytt jobb schemaläggs att utföras om 5 sekunder.
- Så här fortsätter uppdateringen tills att samtliga produkter har gåtts igenom och uppdaterats.
Under tiden batch-uppdateringen pågår sparas samtliga återstående artikelnummer (samt respektive lagersaldo) i options-tabellen i databasen.
Köp av en produkt i fysisk butik
Om du har en fysisk butik och använder dig av Specters Butikskassa då ska lagersaldot synka mellan fysisk butik och webbutik.
- När ett köp görs via butikskassan rapporteras lagersaldoändringen till Specter.
- I samma sekund skickas en signal från Specter till webbutiken om att en ändring har skett i systemet.
- Webbutiken mottar denna signal och svarar först med ett 200 OK http-svar och skickar därefter omgående en förfrågan om att få information om alla produkter där en lagersaldoändring har gjorts.
- Specter skickar ut denna information till webbutiken.
- Webbutiken tar emot informationen, processar den och avslutar därefter med att skicka tillbaka ett så kallat bachnummer (ett löpnummer) till Specter som bekräftelse på att ändringen är genomförd i det egna systemet.
Vad händer när synken inte fungerar?
Alltid problem
Blockerade anrop
Om lagersaldot aldrig uppdateras i WooCommerce i samband med att du gör ändringar i Specter så beror detta troligtvis på att anropen från Specter blockeras av din webbserver. Det kan röra sig om brandväggar, cache-plugin eller säkerhetsplugin (Wordfence, iThemes Security etc). Testa att avaktivera den här typen av plugin vid felsökning för att se om det gör någon skillnad.
HTTPS-problem
Den version av Specters API som Specter-pluginet kommunicerar med har ibland ett problem med kommunikationen mellan Specter och webbutiken om webbutiken använder https (med TLS v1.2+).
Om du har aktiverat synkronisering av lagersaldo, produktdata eller orderstatus och du upplever att synken inte fungerar alls, då kan Specter hjälpa dig att manuellt konfigurera ditt konto så att det fungerar.
Kontakta i så fall Specters kundtjänst på support@specter.se och be dem att konfigurera ert konto så att det fungerar med https ihop med Krokedils Specter-plugin.
Följande URL'er gäller för synkronisering:
- Lagersaldosynk: dindoman.se/?wc-specter-callback=specter-stocksync
- Artikelsynk: dindoman.se/?wc-specter-callback=specter-productsync
- Orderstatussynk: dindoman.se/?wc-specter-callback=specter-ordersync
Tillfälliga problem
Om det är så att synken vanligtvis fungerar men någon gång skulle missa (exempelvis om din webbutik tillfälligt ligger nere), så fungerar det på följande sätt:
- Lagersaldot ändras på en artikel i Specter. Denna artikel flaggas då upp i Specter som att en ändring har gjorts på den.
- En signal skickas ut till webbutiken om att det finns ändringar i Specter.
- Om webbutiken tillfälligt ligger nere eller om kommunikationen avbryts mitt i synken så är artikeln fortfarande flaggad som ändrad i Specter.
- Nästa gång en ändring görs i Specter (troligtvis på en annan artikel) skickas en ny signal till webbutiken om att en ändring skett. När webbutiken då hämtar info från Specter om ändringarna så skickas info över om både den första artikeln och den artikel som nyss ändrades.
- När webbutiken slutfört uppdateringen i sitt system skickas ett batchnummer över som bekräftelse på att uppdateringarna är klara. Artiklarna avmarkeras nu i Specter och ligger nu inte längre med i den lista över artiklar som behöver uppdateras i webbutiken.