Registrarsi su un sito a pagamento con una carta di credito

0

Sto costruendo un sito web basato su abbonamento che deve accettare pagamenti ricorrenti. Il concetto è molto simile a quello di Netflix, ma c'è anche una variazione tra i due.

  1. Quando un utente tenta di registrarsi, chiedere le informazioni sulla propria carta di credito e verificare se il CC è valido. Assicurati anche che nessuna carta di credito sia collegata a più di un utente, quindi ci sarà una mappatura uno-a-uno tra un nome utente e una carta di credito (anche uno-a-molti va bene). Se un nuovo utente tenta di registrare un CC che è già stato memorizzato, la registrazione fallisce.
  2. Offri all'utente un periodo di prova di 30 giorni. Non caricarli se non vogliono continuare il loro servizio
  3. Altrimenti caricali

Come potrei ottenere questo? Sta cercando i dati della carta di credito per vedere se è già nel sistema considerato OK? Ho svolto ricerche su PayPal e Authorize.net, ma non sono ancora sicuro di poter fare tutto quanto sopra utilizzando un gateway di terze parti.

Inoltre, il controllo della validità della carta di credito (non parlando di controllo algoritmico) costa? Non voglio pagare ogni volta che uno spammer o un bot tenta di registrare una carta non valida. Questo potrebbe essere estremamente costoso.

Sono disposto a sottopormi all'esame della conformità PCI.

    
posta Mark13426 23.06.2012 - 20:54
fonte

2 risposte

2

Imo, questa domanda non appartiene esattamente qui, ma hey siamo persone utili, giusto?

Come posso verificare la validità di una carta senza fare un addebito? Non c'è modo, ma l'addebito può sempre essere rimborsato. Ad esempio, ciò che molte aziende come AreaNet fanno è che un addebito di 0,01 $ viene effettuato sulla carta di credito, e quindi l'addebito viene rimborsato. Questo può essere fatto automaticamente usando generalmente le API del gateway di pagamento bancario. Poiché stiamo programmando solo per rimborsare tutti i pagamenti di $ 0,01, non è una minaccia alla sicurezza che qualcuno può sfruttare e ci aiuta anche a confermare la carta.

Cercare se è attualmente utilizzato? Mentre molte aziende sono note per farlo, lo fanno memorizzando le informazioni della carta di credito dei loro clienti in formato testo. Non farlo. Utilizzare un buon algoritmo di crittografia non divulgato con la chiave univoca per utente. Tuttavia, prima di questo, ricorda di memorizzare un hash SHA della password vero / originale in una colonna di mirror accanto alle password crittografate. Se l'algoritmo di crittografia è una variante personalizzata, allora ancora meglio!

Ogni volta che si desidera verificare se una carta è stata registrata in precedenza, eseguire l'hash dell'input ed eseguire una semplice query "WHERE" nella colonna equivalente dell'hash della tabella CC. Ogni volta che si desidera utilizzare il CC, utilizzare l'algoritmo di crittografia insieme alla chiave per decrittografarlo e ottenere le informazioni corrette.

    
risposta data 24.06.2012 - 06:49
fonte
-1

La procedura che usiamo:

Per prima cosa controlla che una carta sia valida, puoi eseguire la verifica della carta quando la memorizzi.

La verifica della carta si basa su una serie di valori nominali (ad es. $ 1) Autorizzazioni e di solito vengono seguiti da una richiesta di annullamento.

Per assicurarti che questa carta di credito non esista già nel vault, puoi passare l'opzione a "Fail on Duplicate" quando lo memorizzi.

    
risposta data 05.07.2012 - 23:28
fonte

Leggi altre domande sui tag