Processori di pagamento: cosa devo sapere se voglio accettare carte di credito sul mio sito web?[Chiuso]

StackOverflow https://stackoverflow.com/questions/51094

  •  09-06-2019
  •  | 
  •  

Domanda

Questa domanda parla dei 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 che ne abbia bisogno negozio numeri di carta di credito per i clienti, così che la soluzione ovvia di affidarsi al processore della carta di credito per fare il lavoro pesante non è disponibile.

Sicurezza dei dati PCI, che apparentemente è lo standard per la memorizzazione delle informazioni sulle carte di credito, ha una serie di requisiti generali, ma come si possono implementare??

E che dire dei venditori, ad esempio Visa, che hanno le proprie migliori pratiche?

È necessario avere accesso tramite telecomando alla macchina?Che ne dici di proteggerlo fisicamente dagli hacker nell'edificio?O anche cosa succederebbe se qualcuno mettesse le mani sui file di backup che contengono i file di dati del server SQL?

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

Mancia: Se ottieni un account commerciante, dovresti negoziare che ti addebitino "interchange-plus" invece di prezzi a scaglioni. Con i prezzi scaglionati, ti addebiteranno tariffe diverse in base al tipo di visto/MC utilizzato, ad es.ti fanno pagare di più per le carte con grandi premi associati.Interchange più fatturazione significa che paghi al processore solo ciò che Visa/MC gli addebita, più una tariffa fissa.(Amex e Discover addebitano le proprie tariffe direttamente ai commercianti, quindi ciò non si applica a tali carte.Troverai che le tariffe Amex sono nell'ordine del 3% e Discover potrebbe essere fino all'1%.Visa/MC è nell'ordine del 2%). Questo servizio dovrebbe condurre la negoziazione per te (Non l'ho usato, questo non è un annuncio pubblicitario e non sono affiliato al sito web, ma questo servizio è molto necessario.)

Questo post del blog fornisce a riepilogo completo della gestione delle carte di credito (specificamente per il Regno Unito).


Forse ho formulato male la domanda, ma sto cercando suggerimenti come questi:

  1. Utilizzo SecurID O eToken per aggiungere un ulteriore livello di password alla casella fisica.
  2. Assicurati che la scatola si trovi in ​​una stanza dotata di serratura fisica o combinazione di codice.
È stato utile?

Soluzione

Ho affrontato questo processo non molto tempo fa con un'azienda per cui lavoravo e ho intenzione di ripeterlo presto con la mia attività.Se hai qualche conoscenza tecnica di rete, non è poi così male.Altrimenti ti conviene utilizzare Paypal o un altro tipo di servizio.

Il processo inizia ottenendo un file conto commerciante configurato e legato al tuo conto bancario.Potresti voler verificare con la tua banca, perché molte delle principali banche forniscono servizi commerciali.Potresti riuscire a ottenere affari, perché sei già un loro cliente, ma in caso contrario, puoi guardarti intorno.Se prevedi di accettare Discover o American Express, questi saranno separati, perché forniscono i servizi commerciali per le loro carte, senza possibilità di aggirare questo problema.Ci sono anche altri casi speciali.Questo è un processo di candidatura, sii preparato.

Successivamente vorrai acquistare un Certificato SSL che puoi utilizzare per proteggere le tue comunicazioni quando i dati della carta di credito vengono trasmessi su reti pubbliche.Ci sono molti venditori, ma la mia regola pratica è sceglierne uno che in un certo senso sia un marchio.Più sono conosciuti, più probabilmente il tuo cliente ne avrà sentito parlare.

Successivamente vorrai trovare a casello stradale 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 del gateway Internet con cui comunicherai.La maggior parte dei fornitori fornisce la comunicazione HTTP o TCP/IP con la propria API.Elaboreranno i dati della carta di credito per tuo conto.Due venditori lo sono Autorizza.Net E Payflow Pro.Il collegamento che fornisco di seguito contiene ulteriori informazioni su altri fornitori.

E adesso?Per cominciare ci sono linee guida su ciò che la tua applicazione deve rispettare per trasmettere le transazioni.Durante il processo di configurazione di tutto, qualcuno esaminerà 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 termini di utilizzo e documentazione politica su quali informazioni vengono utilizzate dall'utente per.Non rubarlo da un altro sito.Inventane uno tuo, assumi un avvocato se necessario.La maggior parte di queste cose rientrano nel collegamento PCI Data Security fornito da Michael nella sua domanda.

Se prevedi di memorizzare i numeri della carta di credito, è meglio essere preparati a mettere in atto alcune misure di sicurezza internamente per proteggere le informazioni.Assicurati che il server su cui sono archiviate le informazioni sia accessibile solo ai membri che devono accedervi.Come ogni buona sicurezza, fai le cose a strati.Più strati metti in atto, meglio è.Se vuoi puoi usare la sicurezza del tipo portachiavi, come ID sicuro O eToken per proteggere la stanza in cui si trova il server.Se non puoi permetterti il ​​percorso del portachiavi, utilizza il metodo delle due chiavi.Consenti a una persona che ha accesso alla stanza di firmare una chiave, che va insieme a quella che già porta con sé.Avranno bisogno di entrambe le chiavi per accedere alla stanza.Successivamente proteggi la comunicazione con il server con policy.La mia politica è che l'unica cosa che comunica in rete sia l'applicazione e che le informazioni siano crittografate.Il server non dovrebbe essere accessibile in nessun'altra forma.Per i backup, utilizzo truecrypt per 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 si trovino i dati, devono essere crittografati.Assicurarsi che tutti i processi per ottenere i dati siano dotati di tracce di controllo.usa i log per l'accesso alla sala server, usa le telecamere se puoi, ecc...Un'altra misura è crittografare le informazioni della carta di credito nel database.Ciò garantisce che i dati possano essere visualizzati solo nella tua applicazione dove puoi imporre chi vede le informazioni.

Io uso pfsense per il mio firewall.Lo eseguo da una scheda Compact Flash e ho configurato due server.Uno è per il failover per la ridondanza.

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

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

Altri suggerimenti

Poniti la seguente domanda: perché vuoi memorizzare i numeri delle carte di credito in primo luogo?È probabile che tu non lo faccia.In effetti, se tu Fare conservali e riesci a farne rubare uno, potresti incorrere in gravi responsabilità.

Ho scritto un'app che memorizza i numeri delle carte 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!) del CC# e archivialo nel tuo database.(Suggerirei le 8 cifre centrali.) Utilizzare un metodo di crittografia avanzato e una chiave segreta.
  • Spedisci il resto del CC# a chiunque elabori le tue transazioni (probabilmente a te stesso) con l'ID della persona da elaborare.
  • Quando effettuerai l'accesso in un secondo momento, digiterai l'ID e la parte inviata per posta del CC#.Il tuo sistema può decrittografare l'altra parte e ricombinarla per ottenere il numero completo in modo da poter elaborare la transazione.
  • Infine, elimina il record online.La mia soluzione paranoica era sovrascrivere il record con dati casuali prima della cancellazione, per eliminare 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.Credetemi, vale la pena stare tranquilli.

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, crea un segmento di rete separato per qualunque server sarà dedicato alla memorizzazione delle informazioni CC (solitamente server DB).Isolare i dati il ​​più possibile e garantire 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 consentire allo stesso account che può cercare informazioni generali nel database di cercare informazioni CC.
  • Non mantenere il database CC sullo stesso server fisico del tuo server web.
  • Non consentire traffico esterno (Internet) nel segmento di rete del database CC.

Esempio di cosa fare:

  • Utilizza un account database separato per interrogare le informazioni CC.
  • Non consentire tutto il traffico tranne quello richiesto al server del database CC tramite firewall/elenchi di accesso
  • Limitare l'accesso al server CC a un gruppo limitato di utenti autorizzati.

Vorrei aggiungere un commento non tecnico a cui potresti voler pensare

Molti dei miei clienti gestiscono siti di e-commerce, tra cui un paio che hanno negozi moderatamente grandi.Entrambi, anche se potrebbero certamente scegliere di non implementare un gateway di pagamento, prendono il numero cc, lo archiviano temporaneamente crittografato online e lo elaborano manualmente.

Lo fanno a causa dell'elevata 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 sicuramente più tempo e in un caso hanno un dipendente che non fa altro che elaborare le transazioni, ma il costo per pagare il suo stipendio è apparentemente inferiore al loro esposizione se hanno appena trasmesso i numeri CC tramite un gateway online.

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

MODIFICARE:E da quando ho creato questa risposta vorrei aggiungere un avvertimento 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 dati della carta sono stati memorizzati crittografati, l'accesso al sito web è avvenuto tramite SSL e i numeri sono stati cancellati immediatamente dopo l'elaborazione.Sicuro, secondo te?

No: un computer della rete è stato infettato da un trojan con registrazione delle chiavi.Di conseguenza sono stati identificati come autori di numerose falsificazioni di carte di credito e di conseguenza sono stati colpiti da una grossa multa.

Di conseguenza, ora Mai consigliare a chiunque di gestire autonomamente le carte di credito.Da allora i gateway di pagamento sono diventati molto più competitivi ed economici e le misure antifrode sono migliorate.Adesso il rischio non vale più la pena.

Potrei eliminare questa risposta, ma penso che sia meglio lasciarla modificata come ammonimento.

Tieni presente che utilizzare SSL per inviare un numero di carta da un browser a un server è come coprire il numero della tua carta di credito con il pollice quando consegni la carta a un cassiere in un ristorante:il pollice (SSL) impedisce agli altri clienti del ristorante (la Rete) di 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 qualsiasi cosa con quella carta.L'accesso al numero di carta salvato può essere bloccato solo dalla sicurezza sul server web.Ciò significa che la maggior parte dei furti di carte in rete non avvengono durante la trasmissione, ma attraverso la scarsa sicurezza del server e il furto dei database.

Perché preoccuparsi della conformità PCI??Nella migliore delle ipotesi risparmierai una frazione dell'1% sulle spese di elaborazione.Questo è uno di quei casi in cui devi essere sicuro che questo sia ciò che vuoi fare con il tuo tempo, sia all'inizio dello sviluppo che nel tempo per stare al passo con i requisiti più recenti.

Nel nostro caso, aveva più senso utilizzare un gateway compatibile con l'abbonamento e associarlo a un account commerciante.Il gateway compatibile con l'abbonamento ti consente di saltare tutta la conformità PCI e non fare altro che elaborare la transazione correttamente.

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

Assicurati di avere un controllo sul lavoro extra e sul budget richiesti per PCI.Il PCI potrebbe richiedere ingenti costi di audit esterni e impegno/supporto interno.Siate inoltre consapevoli delle multe/sanzioni che vi possono essere imposte unilateralmente, spesso estremamente sproporzionate rispetto all'entità del "reato".

C'è molto nell'intero processo.Il modo più semplice per farlo è utilizzare servizi simili a PayPal, in modo da non gestire mai i dati della carta di credito.A parte questo, ci sono un bel po' 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 con le persone che emettono il tuo ID commerciante per aiutarti a impostare il processo.

Come altri hanno già detto, il modo più semplice per entrare in quest'area è con l'uso di PayPal, Pagamento con Google O Nochex.Tuttavia, se intendi realizzare una quantità significativa di affari, potresti voler cercare "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 standard come Intershop (perché ne ho scritti alcuni).Oltre a ciò, stai cercando un'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 considerarlo se non prendi un valore di $ 100.000 al mese).

Lavorando dal primo all'ultimo, i costi/benefici consistono nel fatto che le prime opzioni sono molto più facili (più veloci/meno costose) da impostare, a condizione che si paghino spese di gestione piuttosto elevate per ogni transazione.quelli successivi sono molto più costosi da impostare ma pagherai meno nel lungo periodo.

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

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