Я использую API подписки WooCommerce https://prospress.github.io/subscriptions-rest-api-docs/#update-a-subscription, чтобы обновить статус подписки пользователя с активной на «ожидание-отмена». Все работает и статус пользователя меняется на сайт. Но когда наступает срок оплаты, Woocommerce не превращает подписку в «отмененную».
Вот мой код
$woocommerce = new Client(
'https://example.com', 'ck_xxxxxxxxxxxxxxxxxx', 'cs_xxxxxxxxxxxxxxxxxxxxx', [
'wp_api' => true,
'version' => 'wc/v1',
]
);
try {
$subscription = $woocommerce->get('subscriptions/' . $subscription_id);
$next_payment_date = $subscription->next_payment_date;
$end_date = date("Y-m-d H:i:s", strtotime("+2 hour", strtotime($next_payment_date)));
$data = [
'status' => 'pending-cancel',
'end_date' => $end_date
];
$woocommerce->put("subscriptions/$subscription_id", $data);
} catch (HttpClientException $e) {
$msg = $e->getMessage() . ' ' . $e->getRequest() . ' ' . $e->getResponse();
echo $msg;
}