Feature Requests
Share ideas, discuss and vote on requests from other users in community

Multiple Credit Card Support

Sean shared this idea 1 year ago

I know this idea was declined 4 years ago, but I'd like to try it again.

1. If you use WHMCS to bill for a variety of services beyond just hosting you clients might demand the ability to use different cards and payment options/ product or service. For example, they might want to charge hosting services to one card. But one off items would get charged on another.

2. A credit card on file might be maxed out one month and a client would prefer to add another card, without necessarily ditching the details of the card they want to use.

3. It's also just plain convenient to be able to store a few cards on file and chose when and how to use them.

The way it stands now, each time you want to use a new card, you have to lose the details of the card on file. It just creates a bit more work for the client.

Comments (24)


I was advised to add my comments here as it addresses an additional issue that is related to this (thankfully) upcoming function. Currently, the Manage Credit Card screen is at the mercy of the last method used to pay an invoice. Even though there is only a single actual credit card method (in this case, using Quantum Vault which is the only visible method to the client), if a mail in payment (check payment set via admin) is used to pay the most recent invoice and if the payment method on a client's account is set to default set per order, the MCC screen will show the WHMCS-generated MCC screen allowing them to enter credit card details directly into the database. This not only adds full cc details to the database, but it also gives the impression to the client that they have updated their credit card when they have not.

The full details and steps of this issue are in this feature request: https://requests.whmcs.com/topic/when-using-quantum-vault-prevent-erroneous-display-of-the-whmcs-generated-manage-credit-card-screen


Having multiple gateways is a good idea too. For me, it was more important to have multiple cards under one gateway (stripe). If the solution looked like one card/gateway it wouldn't be useful to me and probably too complex for my clients.


Agreed with @Sean. Especially because Stripe is now a core WHMCS module - I think it seems reasonable to add the option to allow clients to store more than one card on file - through Stripe. I'm sure this would then lead to functionality/structure that other gateways could use to store payment methods the same way.

I guess this could be accomplished in an additional table, for example tblpaymentmethods - where all tokens would be stored (instead of in tblclients>gatewayid).

Then, this table would have columns like:

ID client_id payment_method gateway_id

1 205 Stripe cus_182938393839383

2 206 QuantumVault skiw0202339393

And so on? This way, this could be leveraged throughout the admin/client area to choose which Payment method + card to be assigned to a service / invoice, because you should no longer be able to set just a payment method by itself.