Domanda

Abbiamo un sito commerciale con cui stiamo tentando di configurare 3D Secure (Verified by VISA/Mastercard Securecode).

Utilizziamo DataCash come nostro fornitore di pagamenti.

Stiamo riscontrando il seguente problema:

Ad alcune carte iscritte a questi schemi vengono mostrate con successo le pagine 3D Secure, altre falliscono e parlare con le banche emittenti non è stato d'aiuto poiché ci dicono di non aver visto la transazione.

Stiamo ricevendo messaggi da server come "cap.securecode.com" che indicano:

Non è stato possibile completare l'autenticazione a causa di un errore di sistema.Se ciò accade costantemente, contatta il tuo CSR".

Oppure da "www.securesuite.co.uk":

Non puoi accedere a questa pagina.

Ciò può essere dovuto a uno dei due motivi:

  1. L'FI a cui stai tentando di accedere è disattivato
  2. L'accesso all'IF è limitato a specifici indirizzi IP e il tuo indirizzo non è uno di questi

Qualcun altro ha visto questi errori restituiti dalle banche verificatrici e come posso risolverli?

Sto cercando di ottenere ulteriori dettagli su qualsiasi modello di successi e fallimenti.

È stato utile?

Soluzione

Sembra che si sia verificato un problema con il modulo che stavamo utilizzando per inviare la richiesta ai server 3D Secure:

<form method="post" 
      enctype="multipart/form-data" 
      action="https://[3dSecureServer]">
  <input value="[EncodedRequest]" name="PaReq" type="hidden">
  <input value="[RetailerReference]" name="MD" type="hidden">
  <input value="[RetailerReturnUrl]" type="hidden" name="TermUrl">
  <p>If you do not see your card issuer's instructions, below, 
     please click <input value="Continue" name="TDAction" type="submit"></p>
</form>

Rimozione del enctype L'attributo dal modulo sembra aver risolto il problema: non ha avuto alcun effetto sulle transazioni riuscite e consente anche quelle transazioni che non sono riuscite.

Immagino che questo sia stato preso da un altro codice di esempio.

Altri suggerimenti

Provo a darti qualche informazione aggiuntiva,

Lavoro presso una banca emittente.Se la transazione prevede 3D Secure, il primo passo è l'autenticazione 3D secure e solo dopo l'esito positivo l'autorizzazione.Se la banca emittente ha affidato la gestione del 3D Secure a un'altra organizzazione, è vero che non vedrà mai la transazione in caso di errori 3D Secure.In altre parole, non hanno mai rilasciato un'autorizzazione.Dipende se sono a conoscenza dell'errore 3D Secure.Pertanto, contattare l'emittente probabilmente non aiuterà.

Se ho ragione, hai problemi con più organizzazioni 3D Secure.Se presumo che ogni emittente abbia la propria organizzazione 3d secure, allora avrai problemi con carte di credito di diversi emittenti (hai chiamato securecode e securesuite).Pertanto penso che non abbia nulla a che fare con la carta di credito, ma solo con la tua elaborazione.

Il problema non è completamente nelle mani del tuo processore di pagamento?O forse stai facendo qualcosa di sbagliato nella comunicazione con l'elaboratore dei pagamenti?Si noti che Visa e Mastercard hanno implementato 3D Secure in modo leggermente diverso.

(Domanda forse stupida, ma siete sicuri che le carte con errore siano Visa e Mastercard?Potrebbe essere vero che il cliente utilizza una carta (ad es.JBC) che non è supportato dal tuo processore di pagamento?)

Il 3D secure è un disastro: il tuo sistema di pagamento passerà a uno dei tanti siti a seconda di chi ha emesso la tua carta.Alcuni di questi siti accettano una richiesta GET e altri solo una richiesta POST.Potresti ricevere questo errore se stai inviando un GET anziché un POST.

probabilmente sarà utile a tutti se dico che alcune banche (MPI) restituiscono risposte PaReq con spazi vuoti, quegli spazi vuoti DEVONO essere sostituiti con i segni "+", tieni presente che se stai scrivendo in PHP non puoi semplicemente codificare con urlencode in quanto ciò può interrompere il reindirizzamento stesso dopo aver fornito i dettagli corretti.

saluti K

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top