Mollie订阅WebhookUrl更新报错:调用未定义update()方法求助
问题解决:Mollie订阅Webhook URL更新报错修复
错误原因
你遇到的Fatal error: Uncaught Error: Call to undefined method Mollie\Api\Endpoints\SubscriptionEndpoint::update()错误,核心问题是调用了错误的更新方法。Mollie PHP SDK中,订阅对象自身拥有update()方法,而非通过$mollie->subscriptions端点调用。
修复后的Mollie更新请求代码
替换你原有的mollie_update_subscription方法代码:
public function mollie_update_subscription($customer_id, $subscription_id, $webhook_url){ $mollie = new \Mollie\Api\MollieApiClient(); $mollie->setApiKey(MOLLIE_KEY); // 假设MOLLIE_KEY已在其他位置定义 $message = ""; try { $customer = $mollie->customers->get($customer_id); $subscription = $customer->getSubscription($subscription_id); // 修改订阅属性 $subscription->webhookUrl = $webhook_url; $subscription->description = 'subscription update success'; // 关键修复:调用订阅对象自身的update()方法 $subscription->update(); $message = "<p>Subscription updated: " . $subscription->id . "</p>"; } catch (\Mollie\Api\Exceptions\ApiException $e) { $message = "<div class='alert alert-danger' role='alert'>API call failed: " . htmlspecialchars($e->getMessage()).'</div>'; } return $message; }
额外验证建议
- 确认
MOLLIE_KEY与环境匹配:生产环境用live密钥,测试环境用测试密钥 - 检查填写的
customer_id和subscription_id与Mollie后台记录完全一致 - 验证
webhook_url可被公网访问(Mollie需要正常回调该地址)
内容的提问来源于stack exchange,提问作者Marc de Boer
相关产品推荐
相关产品推荐

