The Foxy forums are on the move!

We're in the process of moving our forums over to a new system, and so these forums are now read-only.
If you have a question about your store in the meantime, please don't hesitate to reach out to us via email.

Feature Request: Fallback Card Processer

Within FoxyCart it is possible to add multiple card payment processors using the Payment Sets option. For example we have BlueSnap and PayPal Payments Pro.

Sometimes when a customer transaction is declined by one processor it can be due to a technical issue. We then (utilising Payment/template sets) send the customer and alternative link to make payment using a different card gateway configured under a different payment set.

I think it would be good if we could configure FoxyCart to process cards under multiple payment providers. So configure a primary and secondary processor. If the primary fails try the secondary automatically.

This can reduce customer friction and improve conversions.
  • fc_marijafc_marija FoxyCart Team
    Hi @andygambles -

    Thanks for the feedback on that ― sounds like that could be something beneficial. I've created a ticket to run it past the team here.
    edited June 2019
    Big second on this. UltraCart has this feature, from whom we are considering to switch over to Foxy, but the rotating gateways is a huge pro in their favor
  • brettbrett FoxyCart Team
    @TLCGC, is your use case for failing over or just to spread transactions across multiple gateways for other reasons?

    @andygambles, could you clarify a bit about your use case as well? When you say failures due to technical issues, do you mean one-off errors, or situations where a gateway might go down (and shouldn't be used)? I'm love to know what errors you're taking this action for.

    Some quick thoughts:

    * Using the API currently, you could monitor for errors and change the payment set associated with a template set, to effectively failover in the case of a service interruption at one gateway. That wouldn't be the automatic approach you mentioned, though @andygambles.

    * Would this be something where you'd want to immediate (and transparently) reattempt for all errors, or just if the response matches/doesn't-match certain strings (like how our subscription dunning reattempt functionality works)?

    One related area that we've also thought about is the ability to force certain payment methods (like PayPal only) in certain circumstances (like suspected fraud, order thresholds, IP country/proxy status). So if a certain criteria is met, change the payment set to one that only contains PayPal (as PayPal's generally more secure than credit card payments). Different use case, but I think it's related.
    Hi @brett , our use case is both - for fallback upon fails, and also to spread out as default. Even more, UltraCart can set which default gateway at the product level.
  • My use case would be any failure retry the alternative gateway. So specify a gateway priority. All should be transparent to the customer. They hit submit and the request is processed via the gateways.

    We are finding some customers get rejected by BlueSnap due to fraud filters but accepted by PayPal Pro.

    A bonus could be ability to route by customer country but we can manage this with template sets although not as smoothly as if configurable in the backend.
  • fc_adamfc_adam FoxyCart Team
    @andygambles, @TLCGC,

    Thanks for the additional details!

    @TLCGC, in relation to this portion:
    Even more, UltraCart can set which default gateway at the product level.
    We support similar functionality via our template sets functionality. You can specify a template set with your product add to cart link/form, and that will dictate what set of payment options will be available for the customer.

    A cart can only have a single template set though, so you couldn't mix different template sets in the same cart - but you could use it to set specific products to only support a specific set of payment options for the customer.
Sign In or Register to comment.