merchant - Mejores prácticas para tomar y almacenar información de tarjetas de crédito con PHP
stripe php bindings (1)
Los problemas de tarjetas de crédito tienen requisitos estrictos (google "Cumplimiento de PCI") sobre el almacenamiento de datos de tarjetas de crédito.
Hay al menos una puerta de enlace de pago que le permite tercerizar el cumplimiento: http://www.braintreepaymentsolutions.com/
La última vez que miré, puedes ejecutar una transacción inicial y recuperar un token. Ese token se puede usar para hacer cargos futuros contra la tarjeta, pero solo tú. Los chicos de la pasarela de pago se encargan de almacenar los datos reales de la tarjeta de crédito.
Por lo que sé (y no hago un montón de procesamiento de tarjetas), esta es probablemente la mejor solución si necesita realizar cargos arbitrarios contra la misma tarjeta.
Si todo lo que necesita es un cargo recurrente (un monto fijo a intervalos regulares), la mayoría de las pasarelas de pago (se le ocurre a authorize.net) pueden configurarse para esto.
Al final del día, si no está lidiando con un presupuesto particularmente grande, es mejor que externalice el almacenamiento de la tarjeta. Hacerlo usted mismo es una gran responsabilidad.
(Editar: en cuanto a almacenar cosas en la sesión, sí, probablemente puedas salirte con la tuya, pero probablemente deberías evitarlo. Solo tienes que hacer tu auth / captura inicial en proceso cuando se envíe la información del CC).
¿Debo usar sesiones para los primeros pasos (validación, revisión de compra) y luego ingresar la información en la base de datos en el envío final?
¿Podrían las galletas ser capturadas y transformarse en una demanda? ¿Es muy arriesgado?
¿Tendría que proteger mi db de forma especial si almacenara números de tarjetas de crédito?
Todas y cada una de las recomendaciones y experiencias personales son bienvenidas.