When storing a card on file using the Beanstream API, the action currently happens in the _submit form handler function, which means if something goes wrong at Beanstream, it's too late to tell Drupal about it. So if there's an error, the user won't necessarily see it, but just gets redirected back to the user/cards page.

I believe the correct solution, which I'll have a patch for shortly, is to shift the Beanstream API calls up to the validate handler function, so that errors can be caught at that stage.

Comments

spiderman’s picture

spiderman’s picture

Status: Active » Fixed

I've rolled this into production after some testing of the various code paths, and everything appears to be ok, so I'm going to commit in preparation for rolling a fresh release.

  • spiderman committed 541bdf7 on 7.x-2.x
    Issue #2480501 by spiderman: Catch validation errors from Beanstream and...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.