I'm getting a warning message, on the CiviCRM status page and in the popup that shows status messages on login. It says the Stripe webhook is not configured. But it is, and recurring donations are getting completed.
Edited
Designs
Child items 0
Show closed items
No child items are currently assigned. Use child items to break down this issue into smaller parts.
Linked items 0
Link issues together to show that they're related.
Learn more.
@mattwire the BASE_URL was set to http. Changing to https fixed one problem. The other is to do with multisite, I think. Thank you! Sorry for the delay in getting back to you on this.
On multisite, when you create a payment processor you create it on one site or the other, rather than centrally. But when the Stripe extension checks for whether the webhooks are present, it does not take into account which site they belong to.
E.g. If you have www.siteA.com and www.siteB.com and you have a payment processor configured on site A, you would put this webhook in Stripe:
But when you visit civicrm on site B, you get a warning because the Stripe extension can see that the processor exists but does not take into account which site it is configured on and therefore it complains that you don't have this configured:
Exactly @naomi, it will error on one site or the other depending on the base URL. However, you can use either URL and they will work. I put them all to the network level site so no errors show there.
@naomi@andyburns Thanks for following up with this. I've done some work in a branch which automatically manages the webhooks (creates them if they are missing) - but it probably won't handle this properly yet... I'm intending to include that change in the "Make it Happen" release and will make sure your scenario works by then - I'll ping you here as would appreciate some testing :-)
Just wanted to report with 5.4.1 that now at the parent site of a multisite it is saying 'Stripe Webhook missing! Please visit Fix Stripe Webhook to fix.'. You probably already know this but this is a change from previous behavior where whatever domain was used (parent or child site) the error would only show on the one where the URL was not in the webhook.
Yes, the 'Stripe Webhook missing! Please visit Fix Stripe Webhook to fix.' does not work yet, I did try it and it sure did create a ton of webhooks(Each domain on a multisite got a webhook that used stripe) for each stripe account.
@andyburns Thanks. I don't have any multisite environments to test but I can see it might get confused! I'm going to need your help and @naomi if we are going to resolve this.
I guess we need a check for multisite and a check that the active domain is the same domain as configured for the payment processor. Then we only go ahead with checking / creating webhooks if those two parameters match.
I have 10 stripe processors. I manually have made the webhooks and all use the parent domain. They also work using their site domain. But I picked one way to do and stuck with it. So not sure your second question is valid for me.
Auto-generating webhooks does not work. It creates webhooks for every stripe processor domain, so I had to delete all of those from stripe.
I think that's all it needs as the check should be running once per domain, so only needs to check paymentprocessors for it's own domain when it is being run. Please confirm if this works and I'll add to the next release.
This seemed to work. I did the patch and then went to the parent and a child site. It only showed the error of the live and test processors on that domain. I then did the 'Fix Stripe Webhook' option and it only added the live and test processors on the domain.
It uses %2F instead of a slash, I am assuming this is the behavior you want?
Hi @andyburns Yes the %2F (escaped slash) is the correct way for wordpress (we were previously setting without but have been advised by wordpress experts that we should always escape paths). You should be able to just delete the existing webhooks and they will be recreated by the "fix" form in the extension. Or if you add/update them manually it should stop complaining :-)
@andyburns Could you open a new issue for multisite + cleanurls on wordpress? We may need to change something again to support that.
On the issue please make it clear what the extension wants to set it to and what you think it should be doing.