-
- Downloads
Log all stripe errors.
Usually when we setup staging and test sites, we set the Stripe payment processor keys to use the test keys for both test payments and "live" payments. This lets us test things more realisticly. This caused a problem with the Stripe extension where it was it was sending 'livemode' => true along with the 'create_plan' API call. This was causing the API call to fail with "Received unknown parameter: livemode", but because stripeCatchErrors ignores most errors the code was actually failing later on. To make problems with the Stripe API calls easier to debug in the future, we added some code to log all the exceptions when making Stripe calls and make sure that Civi crashes when these calls fail. That way the user knows that something went wrong with his transaction and he can inform the website owner. Sometimes, though we do expect an error from Stripe (like in the case where a subscription plan already exists, but it isn't in the local civicrm_stripe_subscriptions table). For that I've added an ignores parameter to the stripCatchErrors method that can be used to tell it to ignore very specific error messages, but still crash if we get an unexpected error.
Loading
Please register or sign in to comment