Les problèmes de carte de crédit sont soumis à des exigences strictes (google «PCI Compliance») concernant le stockage des données de carte de crédit.
Il y a au moins une passerelle de paiement qui vous permet de sous-traiter les choses de la conformité: http://www.braintreepaymentsolutions.com/
La dernière fois que je regardais, vous pouvez exécuter une transaction initiale, et récupérer un jeton. Ce jeton peut être utilisé pour faire des frais futurs contre la carte, mais seulement par vous. Les gars de la passerelle de paiement prennent soin de stocker les données de carte de crédit réelles. Autant que je sache (et je ne fais pas beaucoup de traitement de carte), c'est probablement la meilleure solution si vous devez faire des frais arbitraires contre la même carte.
Si tout ce dont vous avez besoin est une charge récurrente (un montant fixe à intervalles réguliers), la plupart des passerelles de paiement (authorize.net vient à l'esprit) peuvent être configurées pour cela. À la fin de la journée, si vous n'avez pas besoin d'un budget particulièrement important, il est préférable de sous-traiter le stockage de la carte. Le faire vous-même est trop une responsabilité. (Editer: Pour stocker des choses en session - oui, vous pouvez probablement vous en passer, mais vous devriez probablement l'éviter.) Faites juste votre auth initial/capture in-process lorsque l'information CC est soumise.)
Authorize.net a une belle API de charge récurrente. En utilisant maintenant. Et oui, nous laissons le stockage de nos numéros de cartes de crédit à Authorize.net. WAY trop d'exposition légale autrement. –
Lorsque vous choisissez une passerelle pour stocker vos données de carte de crédit, gardez à l'esprit que la plupart des fournisseurs de services ne vous renverront pas vos données si vous voulez partir. Nous (Braintree) avons commencé une norme de portabilité des données de carte de crédit pour résoudre le problème http://bit.ly/a2uEvm. –