PayPal and WooCommerce Subscriptions both keep a record of your store’s subscriptions. As a result, the status of these subscriptions needs to be synchronised with PayPal.
On occasion, store managers may find that when a customer or store manager suspends or cancels a subscription in the store the status change is not reflected at PayPal. Similarly, if a customer changes the payment method or switches a subscription that was originally purchased at PayPal, the original subscription may not be cancelled at PayPal.
This guide covers potential issues that prevent Subscriptions from synchronising with PayPal.
Incorrect PayPal API Signature
To communicate with PayPal, WooCommerce Subscriptions needs your PayPal account’s API Signature. You can learn how to find and where to enter your credentials for this in the PayPal configuration guide.
You PayPal API credentials can be incorrect for a number of reasons:
- Your API Signature may be for a PayPal Sandbox account but the PayPal Sandbox is disabled in your WooCommerce settings. Or you may be using a live PayPal account’s API Signature with PayPal Sandbox enabled.
- Missing characters – sometimes PayPal API Signatures include special characters which may be missed when it is copied. Be sure to check that all the characters are entered in your WooCommerce settings page.
- PayPal provides two forms of API credentials – API Certificate and API Signature. You must use an API Signature with Subscriptions. An API Certificate will not work.
PayPal API credentials notice
PayPal does not provide a way to verify you API Credentials when they are first entered into WooCommerce. Instead, if a request to suspend or cancel a subscription fails due to invalid credentials, it will keep a record of the profile ID that could not be changed and display this notice.
To hide the notice, you must update your PayPal API Credentials.
Old PayPal accounts
Subscriptions created with PayPal accounts that were registered before 2009 can not be synchronised with your store. PayPal doesn’t publish documentation on this issue, but we have anecdotally discovered this via customer’s facing this issue, and information provided by PayPal Merchant Technical Services.
If you have an old PayPal account, check the PayPal Subscription ID value for your subscriptions. Normal IDs will start with an uppercase “I
” followed by numbers and letters, e.g. I-nnnnnnnnnnnnnn
. Subscriptions created with old PayPal accounts start with an uppercase “S
” instead, e.g. S-nnnnnnnnnnnnnn
.
To check the PayPal Subscription ID value for your subscriptions:
- Go to the WooCommerce > Edit Subscription for a subscription using PayPal Standard as the payment method
- Check the PayPal Subscription ID value displayed under the Subscription Data > Billing Details section
If your store’s PayPal Subscriber IDs start with an S, neither you nor your customers will be able to cancel or suspend the subscription in WooCommerce.
To address this issue, you will need to contact PayPal Merchant Technical Services and notify them that your account is still using out of date subscription IDs and request they update your account.
Out-of-date subscription ID notice
If PayPal returns a subscription ID with an uppercase “S”, e.g. S-nnnnnnnnnnnnnn, then Subscriptions will display the out-of-date account notice at the top of the admin area.
Once you have followed the advice above and contacted PayPal Merchant Technical services, you can safely dismiss the notice and it will never be displayed again.