desenv-web-rp.com

Armazenando detalhes do cartão de crédito

Preciso armazenar números de cartão de crédito para cobrança recorrente em nosso comerciante de terceiros.

Há algum padrão que eu cumpra em relação ao armazenamento dos detalhes? Aceitamos cartões de crédito há anos, mas costumávamos descartar os detalhes deles assim que terminávamos. Nossos clientes solicitaram que armazenássemos seus detalhes para que não precisassem pagar manualmente sua taxa de assinatura todos os meses.

Mudar para o Paypal para utilizar suas assinaturas não é uma opção. Temos que armazená-los e preciso garantir que o armazenamento seja seguro!

Utilizamos o MSSQL 2005 para nossos dados e tudo já está SSL.

59
Mark Henderson

Você precisará seguir (conforme a letra) e, de preferência exceder o padrão PCI DSS . Isso não é de forma alguma uma tarefa fácil de realizar, nem deve ser tomada trivialmente.

Eu fortemente recomendo que você encontre um processador de terceiros que possa lidar com isso para você e integrá-lo ao seu sistema de cobrança. Vai muito além de apenas ter SSL e criptografar as informações no banco de dados. Você também deve monitorar o acesso, detectar invasões, instalar sistemas que possam notificar apenas as pessoas afetadas no caso de uma violação (e determinar quais dados podem ter sido comprometidos), etc.

Depois, há acesso físico aos servidores, à rede etc. Isso significa um gabinete bloqueado que não é compartilhado nos servidores que você possui, onde a LAN física também é protegida. A conformidade não será barata nem fácil.

Realmente, gaste todo o esforço possível para descarregar isso para terceiros. A responsabilidade por si só não vale o risco, a menos que você esteja falando de transações que chegam a centenas de milhares de (insira sua moeda aqui) mensalmente. Nesse caso, as taxas que você economiza podem justificar a contratação do talento necessário para implementar e monitorar sistemas que armazenam as informações. Você precisará:

  • Programadores de sistemas (você precisará de ganchos de auditoria no nível do sistema de arquivos e kernel)
  • Gurus de IDS/IPS (a menos que você goste de aprisionar fornecedores)
  • Equipe 24/7/365 para monitorar os alertas gerados a partir dos sistemas projetados pelos especialistas. Essas pessoas não são baratas, tomam a decisão de puxar o plugue de cobrança ou relatar um erro nos algoritmos que você usa.

E, novamente, você pode transferir tudo isso para terceiros, com um preço bastante baixo.

84
Tim Post

Nunca é uma boa ideia armazenar detalhes do cartão de crédito sempre. Você está apenas se preparando para uma queda, qualquer gateway de pagamento decente permitirá que você faça transações recorrentes com um token em que não precisa armazenar os detalhes do cartão de crédito.

22
Whisk

Muitas respostas que você procura podem ser encontradas no site Guia de conformidade do setor de cartões de pagamento . A página Links é particularmente útil.

A melhor sugestão seria permitir que terceiros lidassem com esse armazenamento.

13
Bryson

O seu comerciante de terceiros não inclui a opção de pagamentos contínuos com cartão de crédito - a maioria dos principais aqui no Reino Unido certamente (DataCash, RBS World Pay, etc.).

Basicamente, você envia os Detalhes do cartão uma vez, com uma solicitação de autoridade do CCC (que, se bem me lembro, precisa incluir o cronograma e a quantidade regulares esperados) e, em seguida, você recebe um token de volta. Todos os meses, o que quer que você faça uma pesquisa no comerciante com o token, e eles processam as transações subseqüentes para você - geralmente também há recursos para configurá-las para solicitações variáveis ​​ad-hoc. O principal requisito é notificar o cliente (geralmente pelo menos 10 dias) antes de efetuar o pagamento.

Dessa forma, você não está armazenando os detalhes do CC em nenhum lugar, tudo isso está sendo tratado por pessoas que atenderam aos requisitos.

Isso é semelhante a realizar pré-autorizações em um cartão; portanto, você nunca precisará armazenar o cartão de crédito, apenas um token do comerciante para o qual você pode ligar conforme necessário.

8
Zhaph - Ben Duguid

Temos que armazená-los e preciso garantir que o armazenamento seja seguro!

Uma pergunta: por que?

Só peço isso porque tenho que lidar com PCI, e acompanhá-lo é uma dor. Embora meu trabalho diário nos qualifique como o nível mais baixo para conformidade com PCI, ainda há muito a fazer. Criptografia, considerações de privilégios mínimos, segurança do sistema operacional do servidor, segurança de rede interna, segurança de fronteiras, auditorias de terceiros ... tudo é muito para acompanhar. E isso mesmo conosco, sem armazenar informações de cartão de crédito!

(Nota: Se você está fazendo comércio eletrônico, é necessário estar em conformidade com o PCI, mesmo que não esteja armazenando os dados do CC.

Procure fazer com que seu processador lide com isso. Usamos o Authorize.net e eles têm uma API maravilhosa para que possamos criar nosso próprio front-end personalizado, mas eles cuidam de armazenar e lidar com os pagamentos reais. Se quisermos configurar o faturamento recorrente, eles têm um sistema para armazenar as informações. Honestamente, confio neles mais do que em mim.

4
dragonmantank

Como outras pessoas mencionaram, você está procurando por PCI-DSS. Além disso, como outras pessoas mencionaram, é provável que a conformidade seja proibitivamente cara para sites pequenos.

Mudar para o Paypal para utilizar suas assinaturas não é uma opção. Temos que armazená-los e preciso garantir que o armazenamento seja seguro!

Você pode armazenar localmente um ID que identifique as informações do cartão de crédito do cliente no seu gateway de pagamento. Não tenho certeza se o Paypal oferece essa opção, mas existem outros meios de pagamento.

Lembre-se também de que, mesmo que você não esteja armazenando os dados do cartão de crédito em disco, ainda estará em conformidade com alguns requisitos do PCI-DSS. De longe, a maneira mais fácil de estar em conformidade é não levar nenhum dado de CC (ou seja: postando o formulário de pagamento diretamente no gateway de pagamento).

4
Thiago Figueiro

Serviços como http://chargify.com/ oferecem uma camada extra em cima dos gateways de pagamento existentes. Eles provavelmente oferecerão todo tipo de maneira de armazenar cartões de crédito para você, implementar pagamentos recorrentes e até criar relatórios para você.

Isso permitirá que você contorne todo o problema de responsabilidade e conformidade com o PCI. Uma preocupação que tenho é se um dia você deseja alterar fornecedores, contas de comerciante ou gateways. Como você leva seus 10.000 clientes? Eles entregam um banco de dados de cartões de crédito? O trabalho será feito com um concorrente para transferir as informações do cartão de crédito?

Eu duvido. É provável que você precise solicitar a todos os seus clientes que reenviem as informações de faturamento se alterar os fornecedores. Esse é um pequeno argumento a favor do armazenamento das informações do cartão de crédito. Provavelmente só vale a pena se você tiver muitos clientes e muita receita. Eu ficaria muito curioso em ouvir os pensamentos de outras pessoas sobre esse enigma particular.

3
zaqintosh

Eu não tenho representante suficiente para votar ou comentar ainda, então isso está indo em uma nova resposta. Como zhaph aponto , muitas empresas comerciantes oferecem um sistema de pagamento recorrente, onde tratam do armazenamento para você.

Usamos o Authorize.net para clientes que não desejam usar o Paypal e está funcionando muito bem (nossa única grande reclamação é que a chave da API é redefinida a cada 6 meses e eles não se preocupam em notificá-lo quando isso acontece. página simplesmente para de funcionar). A API deles é baseada em XML e você pode encontrar wrappers para ele em praticamente todos os idiomas.

2
ChiperSoft

Observe que, se você decidir armazenar as informações do cartão de crédito em seu próprio banco de dados, não deverá, em circunstância alguma, armazenar o código de segurança do cartão de 3 dígitos . Fazer isso é estritamente proibido pelas associações de cartões.

BTW, você não precisa do código de segurança do cartão para fazer uma transação. Ele melhora a taxa de detecção de fraudes, mas você não precisa disso se tiver um relacionamento contínuo com o cliente. (E mesmo que você ache necessário, não poderá armazená-lo. Não importa o que aconteça.)

Também apóio as outras recomendações para não armazenar as informações. O Authorize.Net's Customer Information Manager é fácil e barato de usar. Será MUITO MAIS BARATO você usá-lo em vez de incorrer nos custos de PCI inerentes ao armazenamento das informações em seus próprios servidores.

1
Larry K

Se você deseja armazenar cartões de crédito em seu banco de dados, a criptografia é fundamental. Você também vai querer (ou talvez precisar) que terceiros façam testes de conformidade de rotina para garantir que seus sistemas estejam prontos.

1
Milner