När kassan i en webbutik slutar fungera märks det direkt i försäljningen. Kunden fyller i sina uppgifter, klickar på betala, och sedan händer ingenting. Eller så syns ingen betalmetod alls.
Det finns ingen enskild orsak, men de flesta fall går att spåra till några vanliga områden. Den här guiden går igenom dem i en ordning som gör att du snabbt kan utesluta det ena efter det andra.
Börja med att beskriva felet
Skriv ner exakt vad som händer innan du ändrar något. Det gör felsökningen mycket enklare.
- Visas betalmetoderna, eller står det att inga betalmetoder finns?
- Laddar sidan i all oändlighet efter klicket på betala?
- Kommer kunden till betallösningen men tillbaka till ett fel?
- Skapas en order i WooCommerce > Beställningar, och med vilken status?
- Gäller det alla kunder och alla betalmetoder, eller bara en?
Ett bra knep är att själv göra ett köp i ett privat webbläsarfönster, som en vanlig besökare.
Steg 1: Läs loggarna
WooCommerce samlar loggar under WooCommerce > Status > Loggar (på engelska Logs). Där finns bland annat en logg som heter fatal-errors. Den visar allvarliga PHP-fel med tidpunkt, felet, filen och raden där det uppstod. WooCommerce rekommenderar att du tittar där först.
Många betallösningar kan också logga sina egna händelser. Det slår du på under WooCommerce > Inställningar > Betalningar, i inställningarna för den aktuella betalmetoden. Loggarna hamnar sedan under Status > Loggar. WooCommerce rekommenderar att loggningen bara är påslagen medan du felsöker.
Om loggen visar att en betalning startade men aldrig slutfördes har processen avbrutits någonstans på vägen. Det ger en ledtråd om var du ska leta.
Steg 2: Kontrollera betallösningens inställningar
Felaktiga uppgifter för kopplingen mot betalleverantören är en vanlig orsak. Det gäller till exempel API-nycklar, alltså de koder som kopplar butiken till ditt konto hos leverantören.
- Kontrollera att nycklarna i WooCommerce stämmer med dem i ditt konto hos betalleverantören.
- Kontrollera testläget. Många betallösningar har ett test- eller sandlådeläge för provköp. Står det på i en butik som är live går riktiga köp inte igenom som vanligt. Står det av medan du testar med testkort fungerar inte testkorten.
- Om uppgifterna ser rätt ut kan du koppla från betallösningen och koppla in den igen för att förnya anslutningen, enligt WooCommerce felsökningsguide.
- Kontrollera betalaviseringar, ofta kallade webhooks. Det är meddelanden som betalleverantören skickar tillbaka till butiken när en betalning ändrar status. Om de inte når fram kan ordern bli hängande som ”Inväntar betalning” fast kunden har betalat. Vissa leverantörer sätter upp detta automatiskt, andra kräver att du gör det manuellt.
Detaljerna skiljer sig mellan Klarna, Stripe, Swish och andra lösningar. Läs dokumentationen för just din betalmetod, eller kontakta leverantörens support.
Steg 3: Se till att kassan inte cachas
Ett cachetillägg, eller cache hos webbhotellet, sparar färdiga kopior av sidor för att sajten ska gå snabbare. Men varukorgen, kassan och Mitt konto innehåller uppgifter som är unika för varje kund och får inte cachas.
WooCommerce dokumentation säger att följande ska undantas från cache:
- sidorna Varukorg, Kassa och Mitt konto
- WooCommerce-cookies som
woocommerce_cart_hash,woocommerce_items_in_cartochwp_woocommerce_session_
Kontrollera inställningarna i ditt cachetillägg och fråga webbhotellet om de har serverbaserad cache. Töm cachen efter att du ändrat något, och testa igen.
Steg 4: Kontrollera SSL och https
SSL är det som gör att adressen börjar med https:// och att trafiken mellan kunden och butiken är krypterad. WooCommerce skriver att de flesta betallösningar kräver SSL.
- Kontrollera att adressen till kassan börjar med
https://och att webbläsaren inte varnar. - Gå till Inställningar > Allmänt och kontrollera att både WordPressadress (URL) och Webbplatsadress (URL) börjar med
https://. - Varningar om blandat innehåll (mixed content) uppstår när bilder, skript eller stilmallar laddas via
http://på en säker sida. De kan behöva rättas.
Ta en backup först innan du ändrar adresserna under Inställningar > Allmänt. Ett fel där kan göra att du inte kommer in i adminpanelen. Om certifikatet saknas eller har gått ut är det oftast webbhotellet som hjälper dig.
Steg 5: Blockkassa eller klassisk kassa
Nyare WooCommerce-butiker använder ofta en blockbaserad kassa, byggd med WordPress blockredigerare. Alla betallösningar stöder inte den. WooCommerce dokumentation beskriver att en betalmetod som inte är kompatibel kanske inte syns i kassan, och att sidan kan visa att det inte finns några betalmetoder.
Om det är problemet kan du byta tillbaka till den klassiska kassan:
- Öppna sidan Kassa i redigeraren.
- Markera kassablocket i listvyn.
- Välj Omvandla till i blockets verktygsfält och sedan Klassiska kortkoder (på engelska Transform och Classic Shortcode).
- Spara. Gör gärna samma sak med varukorgen, eftersom de två hänger ihop.
Steg 6: Leta efter konflikter
Ett tillägg eller tema som krockar med WooCommerce eller betallösningen kan dölja betalmetoder, stoppa omdirigeringen till betalningen eller få kassan att ladda i all oändlighet. WooCommerce rekommenderar att du testar på en kopia av sajten, en så kallad staging-miljö, så att riktiga kunder inte påverkas.
- Ta en backup först, eller arbeta på en staging-kopia.
- Uppdatera WooCommerce, tillägg och tema, eftersom nyare versioner ibland löser konflikter.
- Byt tillfälligt till ett standardtema, till exempel Storefront eller Twenty Twenty-Five, och testa kassan.
- Inaktivera alla tillägg utom WooCommerce och din betallösning och testa igen.
- Aktivera tilläggen ett i taget och testa efter varje, tills felet kommer tillbaka.
Under WooCommerce > Status finns också en systemrapport (knappen Skaffa systemrapport). Den visar bland annat vilken sida som är inställd som kassa, och om temat har egna, föråldrade kopior av WooCommerce mallfiler. Föråldrade mallar i temat kan vara en orsak till problem i kassan.
Vanliga misstag
- Att ändra direkt i den live butiken. Använd en staging-kopia om du kan.
- Att glömma testläget. Både påslaget i live och avslaget under test ger problem.
- Att bara tömma webbläsarens cache. Cache kan också finnas i ett tillägg, hos webbhotellet eller i ett CDN.
- Att lämna loggningen påslagen. Stäng av den när du är klar.
- Att uppdatera allt utan backup. En uppdatering kan lösa problemet, men också skapa nya.
När ska du ta hjälp?
Ta hjälp om loggen visar PHP-fel i temat eller i egen kod, om ordrar betalas men inte uppdateras, eller om du inte har en staging-miljö att testa i. Får du ett felmeddelande om kritiskt fel, läs Det har uppstått ett kritiskt fel på denna webbplats. Är hela sidan vit, se WordPress visar en vit sida. Om kunder rapporterar konstiga omdirigeringar eller bedrägliga köp kan det i stället vara ett intrång. Läs då Tecken på att din WordPress-sida är hackad.
Behöver du hjälp?
En kassa som inte fungerar kostar pengar varje timme. Jag kan felsöka den åt dig via akut hjälp med WordPress. Priset sätts efter bedömning och du får en offert innan jag börjar, och jag är i regel nåbar även under storhelger, med reservation för sjukdom och andra förhinder.
Källor
- Troubleshoot payment errors – WooCommerce Documentation
- Finding PHP error logs – WooCommerce Documentation
- Configuring caching plugins – WooCommerce Developer Docs
- SSL and HTTPS – WooCommerce Documentation
- Customizing the Cart and Checkout Pages – WooCommerce Documentation
- How to test for conflicts – WooCommerce Documentation
- Understanding the WooCommerce System Status Report – WooCommerce Documentation


