Utcheckningen fastnar när Authorize.net betalningsmetod används

Den här artikeln innehåller en förklaring och en korrigering av Adobe Commerce 2.3.X-problemet där utcheckningen fastnar om Authorize.net används, med felmeddelandet 'Det går inte att läsa egenskapen 'length' på null' i webbläsarkonsolloggen.

Berörda produkter och versioner

  • Adobe Commerce 2.3.X
NOTE
Adobe Commerce Authorize.Net-betalningsintegreringen har tagits bort sedan 2.3.4 och har tagits bort helt i 2.4.0. Använd ett tillägg som passar dina behov från Adobe Commerce Marketplace i stället.

Problem

Steg som ska återskapas

  1. Konfigurera Authorize.net i Commerce Admin.
  2. Gå till butiken.
  3. Lägg en produkt i kundvagnen och fortsätt till kassan.
  4. Välj Authorize.net som betalningsmetod.
  5. Klicka på Montera order.

Förväntat resultat

Authorize.net iframe läses in.

Faktiskt resultat

Ajax-rotationsrutan visas och sidan läses aldrig in. Följande JS-fel visas i webbläsarkonsolloggen: 'Uncaught TypeError: Cannot read property 'length' of null at b (jstest.authorize.net/v1/AcceptCore.js:1)')

Orsak

En av de vanligaste orsakerna till problemet är att den offentliga klientnyckeln inte har angetts i Authorize.Net-konfigurationen i Commerce Admin.

Lösning

Under Lagrar > Inställningar > Konfiguration > Försäljning > Betalningsmetoder kontrollerar du om värdet har angetts i fältet Offentlig klientnyckel i avsnittet Authorize.net. Om det är tomt anger du nyckelvärdet från ditt Authorize.Net-handelskonto.

Rensa cacheminnet genom att köra ändringarna

bin/magento cache:clean
recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a