Processori di pagamento - Cosa devo sapere se voglio accettare carte di credito sul mio sito Web? [chiuso]


258

Questa domanda parla di diversi processori di pagamento e di quanto costano, ma sto cercando la risposta a cosa devo fare se voglio accettare pagamenti con carta di credito?

Supponiamo di dover memorizzare i numeri di carta di credito per i clienti, in modo che non sia disponibile l'ovvia soluzione di affidarsi al processore della carta di credito per eseguire il sollevamento di carichi pesanti.

PCI Data Security , che è apparentemente lo standard per l'archiviazione delle informazioni sulla carta di credito, ha una serie di requisiti generali, ma come si possono implementare ?

E i venditori, come Visa , che hanno le loro migliori pratiche?

Devo avere l'accesso con il telecomando alla macchina? Che dire di proteggerlo fisicamente dagli hacker nell'edificio? O anche se qualcuno mettesse le mani sui file di backup con i file di dati del server sql su di esso?

E i backup? Ci sono altre copie fisiche di quei dati in giro?

Suggerimento: se disponi di un account commerciante, dovresti negoziare che ti addebitano "interscambio più" anziché la tariffazione a livelli. Con tariffe a più livelli, ti addebiteranno tariffe diverse in base al tipo di Visa / MC utilizzato, ad es. ti fanno pagare di più per le carte a cui sono state assegnate grandi ricompense. Interscambio più fatturazione significa che si paga al processore solo ciò che Visa / MC addebita loro, oltre a una tariffa fissa. (Amex e Discover addebitano le proprie tariffe direttamente ai commercianti, quindi questo non si applica a quelle carte. Scoprirai che le tariffe Amex sono comprese nell'intervallo del 3% e Discover potrebbe essere inferiore all'1%. Visa / MC è in l'intervallo del 2%). Questo servizio dovrebbe fare la negoziazione per te (non l'ho usato, questo non è un annuncio e non sono affiliato al sito Web,

Questo post sul blog offre una panoramica completa della gestione delle carte di credito (in particolare per il Regno Unito).


Forse ho formulato la domanda in modo sbagliato, ma sto cercando suggerimenti come questi:

  1. Utilizzare SecurID o eToken per aggiungere un livello password aggiuntivo alla casella fisica.
  2. Assicurati che la scatola sia in una stanza con una combinazione di blocco fisico o codice chiave.

1
Questo è stato deprecato da PA-DSS 2.0.

Risposte:


236

Ho attraversato questo processo non molto tempo fa con un'azienda per cui ho lavorato e ho intenzione di ripeterlo presto con i miei affari. Se hai qualche conoscenza tecnica di rete, non è poi così male. Altrimenti starai meglio usando Paypal o un altro tipo di servizio.

Il processo inizia ottenendo un account commerciante configurazione del e legata al tuo conto bancario. Potresti voler verificare con la tua banca, perché molte grandi banche forniscono servizi commerciali. Potresti essere in grado di ottenere offerte, perché sei già un loro cliente, ma in caso contrario, puoi cercare in giro. Se prevedi di accettare Discover o American Express, questi saranno separati, perché forniscono i servizi mercantili per le loro carte, senza aggirare il problema. Ci sono anche altri casi speciali. Questo è un processo di candidatura, preparati.

Successivamente dovrai acquistare un certificato SSL che puoi utilizzare per proteggere le tue comunicazioni per quando le informazioni della carta di credito vengono trasmesse su reti pubbliche. Ci sono molti venditori, ma la mia regola empirica è quella di sceglierne uno che sia un marchio in un certo senso. Meglio sono conosciuti, tanto meglio il tuo cliente ne avrà probabilmente sentito parlare.

Successivamente vorrai trovare un gateway di pagamento da utilizzare con il tuo sito. Anche se questo può essere facoltativo a seconda di quanto sei grande, ma la maggior parte delle volte non lo sarà. Ne avrai bisogno. I fornitori di gateway di pagamento forniscono un modo per comunicare con l'API di Internet Gateway con cui comunicherai. La maggior parte dei fornitori fornisce comunicazioni HTTP o TCP / IP con le loro API. Elaboreranno i dati della carta di credito per tuo conto. Due fornitori sono Authorize.Net e PayFlow Pro . Il link che fornisco di seguito contiene ulteriori informazioni su altri fornitori.

E adesso? Per i principianti ci sono linee guida su ciò che l'applicazione deve rispettare per la trasmissione delle transazioni. Durante il processo di installazione di tutto, qualcuno guarderà il tuo sito o la tua applicazione e si assicurerà che tu stia rispettando le linee guida, come l'utilizzo di SSL e che tu abbia i termini di utilizzo e la documentazione sui criteri su quali informazioni vengono utilizzate dall'utente per. Non rubare questo da un altro sito. Vieni con il tuo, assumere un avvocato se è necessario. Molte di queste cose rientrano nel collegamento PCI Data Security fornito da Michael nella sua domanda.

Se prevedi di memorizzare i numeri di carta di credito, è meglio essere pronti a mettere in atto alcune misure di sicurezza interne per proteggere le informazioni. Assicurarsi che il server su cui sono archiviate le informazioni sia accessibile solo ai membri che devono avere accesso. Come ogni buona sicurezza, fai le cose a strati. Più strati hai messo in atto, meglio è. Se lo desideri, puoi utilizzare la sicurezza del tipo di telecomando , come SecureID o eTokenper proteggere la stanza in cui si trova il server. Se non puoi permetterti il ​​percorso del portachiavi, usa il metodo a due chiavi. Consentire a una persona che ha accesso alla stanza di firmare una chiave, che accompagna una chiave che già portano. Avranno bisogno di entrambe le chiavi per accedere alla stanza. Successivamente si protegge la comunicazione con il server con le politiche. La mia politica è che l'unica cosa che le comunica sulla rete è l'applicazione e che le informazioni sono crittografate. Il server non dovrebbe essere accessibile in nessun'altra forma. Per i backup, utilizzo TrueCryptper crittografare i volumi in cui verranno salvati i backup. Ogni volta che i dati vengono rimossi o archiviati altrove, si utilizza nuovamente TrueCrypt per crittografare il volume su cui si trovano i dati. Fondamentalmente ovunque siano i dati, devono essere crittografati. Assicurarsi che tutti i processi per accedere ai dati siano accompagnati da audit trail. utilizzare i registri per accedere alla sala server, utilizzare le telecamere, se possibile, ecc. Un'altra misura è crittografare le informazioni della carta di credito nel database. Ciò garantisce che i dati possano essere visualizzati nell'applicazione solo dove è possibile imporre chi visualizza le informazioni.

Uso pfsense per il mio firewall. Lo eseguo su una scheda flash compatta e ho due server configurati. Uno è per il failover per la ridondanza.

Ho trovato questo post sul blog di Rick Strahl che mi ha aiutato moltissimo a capire come fare l'e-commerce e cosa serve per accettare le carte di credito attraverso un'applicazione web.

Bene, questa si è rivelata una lunga risposta. Spero che questi suggerimenti siano d'aiuto.


13
Risposta perfetta Spero che altri lo aggiungano.
Michael Pryor,

3
Uno dei migliori che abbia mai visto ... +1
Frederic Morin,

2
@Michael Pryor: se è così perfetto, perché gli altri devono aggiungerlo? Eh ???
Ciambella

17
@donut: poiché il tempo passa e le risposte raramente rimangono statiche.
Tipo anonimo

22

Ponetevi la seguente domanda: perché volete memorizzare i numeri delle carte di credito ? È probabile che tu non lo faccia. In effetti, se si fa loro memorizzare e gestire per avere uno rubato, si potrebbe essere alla ricerca di un po 'di responsabilità seria.

Ho scritto un'app che memorizza i numeri di carta di credito (poiché le transazioni sono state elaborate offline). Ecco un buon modo per farlo:

  • Ottieni un certificato SSL!
  • Crea un modulo per ottenere CC # dall'utente.
  • Crittografa parte (non tutto!) Di CC # e memorizzalo nel tuo database. (Suggerirei le 8 cifre centrali.) Utilizzare un metodo di crittografia avanzato e una chiave segreta.
  • Invia il resto del CC # a chiunque elabori le tue transazioni (probabilmente te stesso) con l'ID della persona da elaborare.
  • Quando accedi in un secondo momento, inserirai l'ID e la parte spedita del CC #. Il sistema può decrittografare l'altra porzione e ricombinarsi per ottenere il numero completo in modo da poter elaborare la transazione.
  • Infine, elimina il record online. La mia soluzione paranoica era quella di sovrascrivere il record con dati casuali prima dell'eliminazione, per rimuovere la possibilità di un ripristino.

Sembra un sacco di lavoro, ma non registrando mai un CC # completo da nessuna parte, rendi estremamente difficile per un hacker trovare qualcosa di valore sul tuo server web. Fidati di me, vale la tranquillità.


1
Guarda il commento che Michael ha lasciato per Sam Wessel qui sotto.
Dale Ragan,

17

Il documento PCI 1.2 è appena uscito. Fornisce un processo su come implementare la conformità PCI insieme ai requisiti. Puoi trovare il documento completo qui:

https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml

Per farla breve, creare un segmento di rete separato per qualsiasi server sarà dedicato alla memorizzazione delle informazioni CC (di solito server DB). Isolare i dati il ​​più possibile e assicurarsi che sia presente solo l'accesso minimo necessario per accedere ai dati. Crittografalo quando lo memorizzi. Non conservare mai i PAN. Elimina i vecchi dati e ruota le chiavi di crittografia.

Esempio da non fare:

  • Non lasciare che lo stesso account che può cercare informazioni generali nel database cerchi CC info.
  • Non conservare il database CC sullo stesso server fisico del server Web.
  • Non consentire il traffico esterno (Internet) nel segmento di rete del database CC.

Esempio Dos:

  • Utilizzare un account di database separato per richiedere informazioni CC.
  • Non consentire tutto il traffico necessario al server di database CC tramite elenchi di firewall / accessi
  • Limitare l'accesso al server CC a un numero limitato di utenti autorizzati.

5
Si noti che i requisiti PCI-DSS si applicano a tutti i sistemi attraverso i quali passano i dati delle carte e non solo dove sono archiviati . Le stesse restrizioni e requisiti di sicurezza si applicano quindi anche al web server / app-server (e ai siti appartenenti a tutti gli altri host su quelle macchine) e a tutti gli altri host sullo stesso segmento di rete di tali macchine.
Cheekysoft,

E se accetti i numeri di carta di credito al telefono o su carta e li digiti sul tuo computer desktop, allora si applicano anche le stesse restrizioni.
Stobor,

15

Vorrei aggiungere un commento non tecnico a cui potresti voler pensare

Molti dei miei clienti gestiscono siti di e-commerce, tra cui una coppia con negozi moderatamente grandi. Entrambi, anche se sicuramente potrebbero implementare un gateway di pagamento non scelto, prendono il numero cc, lo memorizzano temporaneamente crittografato online e lo elaborano manualmente.

Lo fanno a causa dell'alta incidenza di frodi e l'elaborazione manuale consente loro di effettuare ulteriori controlli prima di evadere un ordine. Mi è stato detto che rifiutano poco più del 20% di tutte le loro transazioni - l'elaborazione manuale richiede certamente tempo extra e in un caso hanno un dipendente che non fa altro che elaborare le transazioni, ma il costo del pagamento del suo stipendio è apparentemente inferiore al loro esposizione se hanno appena superato i numeri cc attraverso un gateway online.

Entrambi questi clienti stanno consegnando beni fisici con valore di rivendita, quindi sono particolarmente esposti e per articoli come software in cui una vendita fraudolenta non comporterebbe alcuna perdita effettiva che il tuo chilometraggio potrebbe variare, ma vale la pena considerare sopra gli aspetti tecnici di un gateway online se implementarlo è davvero quello che vuoi.

EDIT: E da quando ho creato questa risposta mi piacerebbe aggiungere una storia di ammonimento e dire che è passato il tempo in cui questa era una buona idea.

Perché? Perché conosco un altro contatto che stava adottando un approccio simile. I dettagli della carta sono stati archiviati crittografati, il sito Web è stato accessibile da SSL e i numeri sono stati eliminati immediatamente dopo l'elaborazione. Sicuro che pensi?

Nessuno: un computer sulla propria rete è stato infettato da un Trojan di registrazione delle chiavi. Di conseguenza, sono stati identificati come la fonte di numerosi falsi di carte di credito con punteggio e di conseguenza sono stati colpiti da una grande multa.

Di conseguenza, ora non consiglio mai a nessuno di gestire da soli le carte di credito. Da allora i gateway di pagamento sono diventati molto più competitivi ed economici e le misure antifrode sono migliorate. Il rischio ora non ne vale più la pena.

Potrei cancellare questa risposta, ma penso che sia meglio lasciarlo modificato come un ammonimento.


1
Questo è un commento davvero utile, qualcosa che non ho mai considerato. Grazie
0plus1

8

Tieni presente che l'utilizzo di SSL per inviare un numero di carta da un browser a un server è come coprire il numero della carta di credito con il pollice quando passi la carta a un cassiere in un ristorante: il tuo pollice (SSL) impedisce ad altri clienti nel ristorante (la rete) dal vedere la carta, ma una volta che la carta è nelle mani del cassiere (un server web) la carta non è più protetta dallo scambio SSL e il cassiere potrebbe fare qualcosa con quella carta. L'accesso a un numero di carta salvato può essere fermato solo dalla sicurezza sul server web. Vale a dire, la maggior parte dei furti di carte in rete non viene eseguita durante la trasmissione, ma viene superata la scarsa sicurezza del server e rubando i database.


È qui che entra in gioco PCI DSS. Ad esempio, non memorizzando il PAN completo sul server.
Martin Clarke,

5

Perché preoccuparsi della conformità PCI ?? Nella migliore delle ipotesi, ti sbarazzerai di una percentuale dello sconto sulle spese di elaborazione. Questo è uno di quei casi in cui devi essere sicuro che questo è ciò che vuoi fare con il tuo tempo sia in fase iniziale di sviluppo che nel tempo, al passo con gli ultimi requisiti.

Nel nostro caso, è stato più sensato utilizzare un gateway abbonato e abbinarlo a un account commerciante. Il gateway di sottoscrizione consente di ignorare tutta la conformità PCI e non fare altro che elaborare la transazione corretta.

Usiamo TrustCommerce come nostro gateway e siamo soddisfatti del loro servizio / prezzo. Hanno un codice per un sacco di lingue che rende l'integrazione piuttosto semplice.


5
Una ragione sarebbe quella di evitare di essere tenuti in ostaggio dal gateway di pagamento, dove se si desidera passare a un altro gateway, il gateway precedente probabilmente non ti darà accesso a tutte le informazioni CC che hanno dei tuoi clienti, costringendoti così a chiedere i clienti per i dettagli CC sull'acquisto con il nuovo gateway di pagamento. Vai al passaggio 1. :)
Zabba,

3

Assicurati di gestire il lavoro extra e il budget richiesti per PCI. Il PCI potrebbe richiedere enormi commissioni di audit esterno e impegno / supporto interno. Sii anche consapevole delle multe / penalità che possono essere unilateralmente inflitte a te, spesso enormemente sproporzionate rispetto alla scala dell '"ofense".


2

C'è molto nell'intero processo. Il modo più semplice per farlo è utilizzare servizi simili a paypal, in modo da non gestire effettivamente i dati delle carte di credito. A parte questo, ci sono un sacco di cose da fare per ottenere l'approvazione per offrire servizi di carte di credito sul tuo sito web. Probabilmente dovresti parlare con la tua banca e le persone che emettono il tuo ID commerciante per aiutarti a impostare il processo.


2

Come altri hanno già detto, il modo più semplice in quest'area è l'uso di Paypal , Google Checkout o Nochex . Tuttavia, se si intende effettuare una notevole quantità di attività, è possibile cercare "l'aggiornamento" a servizi di integrazione del sito di livello superiore come WorldPay , NetBanx (Regno Unito) o Neteller (Stati Uniti) . Tutti questi servizi sono ragionevolmente facili da configurare. E so che Netbanx offre una comoda integrazione in alcune delle soluzioni di carrello della spesa come Intershop (perché ne ho scritti alcuni). Oltre a ciò stai guardando l'integrazione diretta con i sistemi bancari (e i loro sistemi APAX) ma è difficile e a quel punto devi anche dimostrare alle società di carte di credito che stai gestendo i numeri delle carte di credito in modo sicuro (probabilmente non vale la pena considerare se non stai prendendo $ 100.000 al mese).

Lavorando dal primo all'ultimo i costi / benefici sono che le prime opzioni sono molto più facili (più veloci / meno costose) da impostare e ti fanno pagare costi di gestione piuttosto elevati per ogni transazione. quelli successivi sono molto più costosi da configurare ma pagherai di meno nel lungo periodo.

L'altro vantaggio della maggior parte delle soluzioni non dedicate è che non è necessario mantenere sicuri i numeri di carta di credito crittografati. Questo è il problema di qualcun altro :-)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.