Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

_ppcp_target_customer_id sometimes missing, subscription renewals failing #2587

Open
crot4lus opened this issue Sep 11, 2024 · 13 comments
Open

Comments

@crot4lus
Copy link

crot4lus commented Sep 11, 2024

Describe the Bug

We're having an issue where some subscription orders are coming in, but the target customer ID isn't being assigned to the user. As an example, 2 orders came in today - one user who signed up in May created a new subscription and they haven't received a _ppcp_target_customer_id, another user signed up today, created a new subscription and they have a _ppcp_target_customer_id assigned to them.

A number of renewals are sat as Pending Payment, and when I search the PayPal Payments log I can see:

2024-09-09T08:00:38+00:00 Debug GET https://api-m.paypal.com/v3/vault/payment-tokens?customer_id=
Response: Array
(
    [code] => 400
    [message] => Bad Request
)

Response Body: {"name":"INVALID_REQUEST","message":"Request is not well-formed, syntactically incorrect, or violates schema.","debug_id":"63c7ccc8f9c26","details":[{"field":"customer_id","value":"","location":"query","issue":"INVALID_PARAMETER_SYNTAX","description":"the value of a field does not conform to the expected format."},{"field":"customer_id","value":"","location":"query","issue":"INVALID_STRING_LENGTH","description":"the value of a field is either too short or too long."}],"links":[]}

As you can see above, it's attempting to grab the users payment token but doesn't have a customer_id to provide it.

Expected Behavior

Every subscription order user receives a _ppcp_target_customer_id reference so the renewal can go ahead successfully.

Actual Behavior

Some customers are receiving it, some aren't. I've struggled to identify a pattern.

Environment

System status

`

WordPress Environment

WC Version: 9.0.2
Legacy REST API Package Version: The Legacy REST API plugin is not installed on this site.
Action Scheduler Version: ✔ 3.7.4
Log Directory Writable: ✔
WP Version: ❌ 6.4.3 - There is a newer version of WordPress available (6.6.2)
WP Multisite: ✔
WP Memory Limit: 2 GB
WP Debug Mode: –
WP Cron: ✔
Language: en_GB
External object cache: –

Server Environment

Server Info: Apache/2.4.52 (Ubuntu)
PHP Version: 8.3.6
PHP Post Max Size: 256 MB
PHP Time Limit: 0
PHP Max Input Vars: 500000
cURL Version: 7.81.0
OpenSSL/3.0.2

SUHOSIN Installed: –
MySQL Version: 8.0.30
Max Upload Size: 5 MB
Default Timezone is UTC: ✔
fsockopen/cURL: ✔
SoapClient: ❌ Your server does not have the SoapClient class enabled - some gateway plugins which use SOAP may not work as expected.
DOMDocument: ✔
GZip: ✔
Multibyte String: ✔
Remote Post: ✔
Remote Get: ✔

Database

WC Database Version: 9.0.2
WC Database Prefix: wp_
Total Database Size: 1652.35MB
Database Data Size: 844.94MB
Database Index Size: 807.41MB
wp_woocommerce_sessions: Data: 18.02MB + Index: 0.22MB + Engine InnoDB
wp_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_woocommerce_order_items: Data: 7.50MB + Index: 2.50MB + Engine InnoDB
wp_woocommerce_order_itemmeta: Data: 176.45MB + Index: 61.98MB + Engine InnoDB
wp_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_woocommerce_shipping_zone_locations: Data: 0.05MB + Index: 0.05MB + Engine InnoDB
wp_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_woocommerce_payment_tokens: Data: 0.06MB + Index: 0.02MB + Engine InnoDB
wp_woocommerce_payment_tokenmeta: Data: 0.05MB + Index: 0.03MB + Engine InnoDB
wp_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_actionscheduler_actions: Data: 13.23MB + Index: 19.22MB + Engine InnoDB
wp_2_actionscheduler_claims: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_actionscheduler_groups: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_actionscheduler_logs: Data: 8.33MB + Index: 6.94MB + Engine InnoDB
wp_2_commentmeta: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_2_comments: Data: 3.52MB + Index: 3.39MB + Engine InnoDB
wp_2_ewwwio_images: Data: 0.06MB + Index: 0.03MB + Engine InnoDB
wp_2_ewwwio_queue: Data: 0.08MB + Index: 0.05MB + Engine InnoDB
wp_2_frm_fields: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_frm_forms: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_frm_item_metas: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_2_frm_items: Data: 0.02MB + Index: 0.09MB + Engine InnoDB
wp_2_gazchaps_getaddress_io: Data: 0.19MB + Index: 0.00MB + Engine InnoDB
wp_2_independent_analytics_campaign_urls: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_independent_analytics_campaigns: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_independent_analytics_cities: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_independent_analytics_countries: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_independent_analytics_device_browsers: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_independent_analytics_device_oss: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_independent_analytics_device_types: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_independent_analytics_form_submissions: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_independent_analytics_forms: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_independent_analytics_referrers: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_independent_analytics_reports: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_independent_analytics_resources: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_independent_analytics_sessions: Data: 0.02MB + Index: 0.28MB + Engine InnoDB
wp_2_independent_analytics_views: Data: 0.02MB + Index: 0.08MB + Engine InnoDB
wp_2_independent_analytics_visitors: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_independent_analytics_wc_orders: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_options: Data: 6.02MB + Index: 0.67MB + Engine InnoDB
wp_2_pmxe_exports: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxe_google_cats: Data: 0.39MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxe_posts: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxe_templates: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxi_files: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxi_hash: Data: 0.28MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxi_history: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxi_images: Data: 0.06MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxi_imports: Data: 0.42MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxi_posts: Data: 5.52MB + Index: 0.00MB + Engine InnoDB
wp_2_pmxi_templates: Data: 0.05MB + Index: 0.00MB + Engine InnoDB
wp_2_postmeta: Data: 16.48MB + Index: 23.64MB + Engine InnoDB
wp_2_posts: Data: 1.52MB + Index: 0.89MB + Engine InnoDB
wp_2_pys_stat_landing: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_order: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_product_order: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_traffic: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_utm_campaing: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_utm_content: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_utm_medium: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_utm_source: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_pys_stat_utm_term: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_sbi_feed_caches: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_sbi_feeds: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_sbi_instagram_feed_locator: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_sbi_instagram_feeds_posts: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_sbi_instagram_posts: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_sbi_sources: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_term_relationships: Data: 0.08MB + Index: 0.05MB + Engine InnoDB
wp_2_term_taxonomy: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_termmeta: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_2_terms: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_wc_admin_note_actions: Data: 0.05MB + Index: 0.02MB + Engine InnoDB
wp_2_wc_admin_notes: Data: 0.06MB + Index: 0.00MB + Engine InnoDB
wp_2_wc_category_lookup: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wc_customer_lookup: Data: 0.13MB + Index: 0.11MB + Engine InnoDB
wp_2_wc_delivery_date: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_wc_order_addresses: Data: 1.52MB + Index: 0.78MB + Engine InnoDB
wp_2_wc_order_bundle_lookup: Data: 1.50MB + Index: 1.16MB + Engine InnoDB
wp_2_wc_order_coupon_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_wc_order_operational_data: Data: 0.39MB + Index: 0.23MB + Engine InnoDB
wp_2_wc_order_product_lookup: Data: 6.50MB + Index: 7.63MB + Engine InnoDB
wp_2_wc_order_stats: Data: 0.34MB + Index: 0.31MB + Engine InnoDB
wp_2_wc_order_tax_lookup: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_wc_orders: Data: 1.52MB + Index: 0.95MB + Engine InnoDB
wp_2_wc_orders_meta: Data: 3.47MB + Index: 6.86MB + Engine InnoDB
wp_2_wc_product_attributes_lookup: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_wc_product_download_directories: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_wc_product_meta_lookup: Data: 0.06MB + Index: 0.11MB + Engine InnoDB
wp_2_wc_rate_limits: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_wc_reserved_stock: Data: 0.06MB + Index: 0.00MB + Engine InnoDB
wp_2_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_wccs_cache: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wccs_condition_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_wccs_conditions: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wcpdf_invoice_number: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_woocommerce_api_keys: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_woocommerce_attribute_taxonomies: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_woocommerce_bundled_itemmeta: Data: 1.52MB + Index: 3.03MB + Engine InnoDB
wp_2_woocommerce_bundled_items: Data: 0.08MB + Index: 0.09MB + Engine InnoDB
wp_2_woocommerce_downloadable_product_permissions: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_2_woocommerce_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_woocommerce_order_itemmeta: Data: 35.45MB + Index: 29.86MB + Engine InnoDB
wp_2_woocommerce_order_items: Data: 5.50MB + Index: 2.52MB + Engine InnoDB
wp_2_woocommerce_payment_tokenmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_woocommerce_payment_tokens: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_woocommerce_sessions: Data: 1.02MB + Index: 0.02MB + Engine InnoDB
wp_2_woocommerce_shipping_zone_locations: Data: 0.05MB + Index: 0.05MB + Engine InnoDB
wp_2_woocommerce_shipping_zone_methods: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_woocommerce_shipping_zones: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_woocommerce_tax_rate_locations: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_woocommerce_tax_rates: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_2_wpmailsmtp_debug_events: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wpmailsmtp_tasks_meta: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wt_iew_action_history: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wt_iew_cron: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wt_iew_ftp: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_wt_iew_mapping_template: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_yith_ywpar_points_log: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_2_yoast_indexable: Data: 0.23MB + Index: 0.09MB + Engine InnoDB
wp_2_yoast_indexable_hierarchy: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_2_yoast_migrations: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_2_yoast_primary_term: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_2_yoast_seo_links: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_actionscheduler_actions: Data: 74.13MB + Index: 77.44MB + Engine InnoDB
wp_actionscheduler_claims: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_actionscheduler_groups: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_actionscheduler_logs: Data: 34.08MB + Index: 28.06MB + Engine InnoDB
wp_blogmeta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_blogs: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_cff_facebook_feed_locator: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_cff_feed_caches: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_cff_feeds: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_cff_sources: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_commentmeta: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_comments: Data: 4.52MB + Index: 3.19MB + Engine InnoDB
wp_ctf_feed_caches: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_ctf_feed_locator: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_ctf_feeds: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_ctf_feeds_posts: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_ctf_posts: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_ewwwio_images: Data: 2.52MB + Index: 2.80MB + Engine InnoDB
wp_ewwwio_queue: Data: 1.45MB + Index: 0.27MB + Engine InnoDB
wp_frm_fields: Data: 0.08MB + Index: 0.03MB + Engine InnoDB
wp_frm_forms: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_frm_item_metas: Data: 0.14MB + Index: 0.05MB + Engine InnoDB
wp_frm_items: Data: 0.02MB + Index: 0.09MB + Engine InnoDB
wp_frmpro_copies: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_gazchaps_getaddress_io: Data: 3.02MB + Index: 0.00MB + Engine InnoDB
wp_independent_analytics_campaign_urls: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_independent_analytics_campaigns: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_independent_analytics_cities: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_countries: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_device_browsers: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_device_oss: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_device_types: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_form_submissions: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_independent_analytics_forms: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_referrers: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_reports: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_independent_analytics_resources: Data: 0.20MB + Index: 0.02MB + Engine InnoDB
wp_independent_analytics_sessions: Data: 5.52MB + Index: 33.22MB + Engine InnoDB
wp_independent_analytics_views: Data: 5.50MB + Index: 15.58MB + Engine InnoDB
wp_independent_analytics_visitors: Data: 0.47MB + Index: 0.52MB + Engine InnoDB
wp_independent_analytics_wc_orders: Data: 0.02MB + Index: 0.05MB + Engine InnoDB
wp_links: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_onestock_product_properties: Data: 0.06MB + Index: 0.06MB + Engine InnoDB
wp_onestock_queue: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_onestock_sku_map: Data: 0.05MB + Index: 0.05MB + Engine InnoDB
wp_options: Data: 17.06MB + Index: 6.53MB + Engine InnoDB
wp_pmxe_exports: Data: 2.02MB + Index: 0.00MB + Engine InnoDB
wp_pmxe_google_cats: Data: 0.39MB + Index: 0.00MB + Engine InnoDB
wp_pmxe_posts: Data: 4.52MB + Index: 0.00MB + Engine InnoDB
wp_pmxe_templates: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pmxi_files: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pmxi_hash: Data: 11.52MB + Index: 0.00MB + Engine InnoDB
wp_pmxi_history: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pmxi_images: Data: 0.11MB + Index: 0.00MB + Engine InnoDB
wp_pmxi_imports: Data: 2.52MB + Index: 0.00MB + Engine InnoDB
wp_pmxi_posts: Data: 4.52MB + Index: 0.00MB + Engine InnoDB
wp_pmxi_templates: Data: 0.06MB + Index: 0.00MB + Engine InnoDB
wp_postmeta: Data: 95.52MB + Index: 103.89MB + Engine InnoDB
wp_posts: Data: 9.52MB + Index: 7.27MB + Engine InnoDB
wp_pys_stat_landing: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_order: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_product_order: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_traffic: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_utm_campaing: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_utm_content: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_utm_medium: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_utm_source: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_pys_stat_utm_term: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_registration_log: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_sbi_feed_caches: Data: 0.13MB + Index: 0.02MB + Engine InnoDB
wp_sbi_feeds: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_sbi_instagram_feed_locator: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_sbi_instagram_feeds_posts: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_sbi_instagram_posts: Data: 0.16MB + Index: 0.00MB + Engine InnoDB
wp_sbi_sources: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_sbr_feed_caches: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_sbr_feed_locator: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_sbr_feeds: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_sbr_reviews_posts: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_sbr_sources: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_sby_feed_caches: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_sby_feed_locator: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_sby_feeds: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_searchwp_index: Data: 5.22MB + Index: 11.52MB + Engine InnoDB
wp_searchwp_log: Data: 0.23MB + Index: 0.33MB + Engine InnoDB
wp_searchwp_status: Data: 0.08MB + Index: 0.08MB + Engine InnoDB
wp_searchwp_tokens: Data: 1.52MB + Index: 1.11MB + Engine InnoDB
wp_signups: Data: 0.02MB + Index: 0.06MB + Engine InnoDB
wp_site: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_sitemeta: Data: 2.03MB + Index: 0.03MB + Engine InnoDB
wp_term_relationships: Data: 0.08MB + Index: 0.05MB + Engine InnoDB
wp_term_taxonomy: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_termmeta: Data: 0.17MB + Index: 0.44MB + Engine InnoDB
wp_terms: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_usermeta: Data: 183.58MB + Index: 274.97MB + Engine InnoDB
wp_users: Data: 6.52MB + Index: 9.06MB + Engine InnoDB
wp_wc_admin_note_actions: Data: 0.05MB + Index: 0.02MB + Engine InnoDB
wp_wc_admin_notes: Data: 0.06MB + Index: 0.00MB + Engine InnoDB
wp_wc_category_lookup: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wc_customer_lookup: Data: 5.52MB + Index: 3.97MB + Engine InnoDB
wp_wc_delivery_date: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wc_download_log: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_wc_order_addresses: Data: 2.50MB + Index: 1.70MB + Engine InnoDB
wp_wc_order_bundle_lookup: Data: 3.44MB + Index: 2.81MB + Engine InnoDB
wp_wc_order_coupon_lookup: Data: 0.05MB + Index: 0.03MB + Engine InnoDB
wp_wc_order_operational_data: Data: 1.52MB + Index: 0.44MB + Engine InnoDB
wp_wc_order_product_lookup: Data: 3.48MB + Index: 4.91MB + Engine InnoDB
wp_wc_order_stats: Data: 0.33MB + Index: 0.28MB + Engine InnoDB
wp_wc_order_tax_lookup: Data: 0.20MB + Index: 0.17MB + Engine InnoDB
wp_wc_orders: Data: 3.50MB + Index: 2.34MB + Engine InnoDB
wp_wc_orders_meta: Data: 19.55MB + Index: 33.86MB + Engine InnoDB
wp_wc_product_attributes_lookup: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_product_download_directories: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_product_meta_lookup: Data: 0.06MB + Index: 0.11MB + Engine InnoDB
wp_wc_rate_limits: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_reserved_stock: Data: 1.48MB + Index: 0.00MB + Engine InnoDB
wp_wc_tax_rate_classes: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wc_webhooks: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_wccs_cache: Data: 0.05MB + Index: 0.00MB + Engine InnoDB
wp_wccs_condition_meta: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_wccs_conditions: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wcpdf_invoice_number: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wcs_payment_retries: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_woocommerce_bundled_itemmeta: Data: 1.52MB + Index: 3.03MB + Engine InnoDB
wp_woocommerce_bundled_items: Data: 0.08MB + Index: 0.09MB + Engine InnoDB
wp_wpmailsmtp_debug_events: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wpmailsmtp_tasks_meta: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wt_iew_action_history: Data: 0.41MB + Index: 0.00MB + Engine InnoDB
wp_wt_iew_cron: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wt_iew_ftp: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_wt_iew_mapping_template: Data: 0.02MB + Index: 0.00MB + Engine InnoDB
wp_yith_ywpar_points_log: Data: 0.31MB + Index: 0.00MB + Engine InnoDB
wp_yoast_indexable: Data: 0.34MB + Index: 0.23MB + Engine InnoDB
wp_yoast_indexable_hierarchy: Data: 0.06MB + Index: 0.05MB + Engine InnoDB
wp_yoast_migrations: Data: 0.02MB + Index: 0.02MB + Engine InnoDB
wp_yoast_primary_term: Data: 0.02MB + Index: 0.03MB + Engine InnoDB
wp_yoast_seo_links: Data: 0.02MB + Index: 0.03MB + Engine InnoDB

Post Type Counts

acf-field: 523
acf-field-group: 15
attachment: 1251
custom_css: 1
customize_changeset: 1
cwginstocknotifier: 104
frm_form_actions: 4
frm_styles: 1
nav_menu_item: 18
oembed_cache: 6
page: 22
post: 148
product: 151
product_variation: 4
retailer: 192
revision: 1109
shop_coupon: 9305
shop_order_placehold: 7371
wp_navigation: 1
ywpar-level-badge: 1
ywpar-redeeming-rule: 1

Security

Secure connection (HTTPS): ✔
Hide errors from visitors: ✔

Active Plugins (47)

Smash Balloon Custom Facebook Feed: by Smash Balloon – 4.2.5
Custom Twitter Feeds: by Smash Balloon – 2.2.2
Feeds for YouTube: by Smash Balloon YouTube Team – 2.2.2
Klaviyo: by Klaviyo
Inc. – 3.3.5

Metorik Helper: by Metorik – 2.0.2
WooCommerce.com Update Manager: by Automattic – 1.0.3
Woo All Products For Subscriptions: by Woo – 5.0.6
WooCommerce Extended Coupon Features PRO: by Soft79 – 3.3.3
PDF Invoices & Packing Slips for WooCommerce: by WP Overnight – 3.8.6
WooCommerce Subscriptions: by WooCommerce – 6.6.1
WP All Export Pro: by Soflyy – 1.8.8
WP All Import Pro: by Soflyy – 4.8.10
WP All Export - WooCommerce Export Add-On Pro: by Soflyy – 1.0.9
WP All Import - ACF Add-On: by Soflyy – 3.3.8
WP All Import - User Import Add-On Pro: by Soflyy – 1.1.8
WP All Import - WooCommerce Import Add-On Pro: by Soflyy – 4.0.0
YITH WooCommerce Points and Rewards Premium: by YITH – 4.7.0
Independent Analytics: by Independent Analytics – 2.7.3
WooCommerce: by Automattic – 9.0.2
Advanced Custom Fields PRO: by WP Engine – 6.3.5
Woo Product Bundles: by Woo – 6.22.6
Classic Widgets: by WordPress Contributors – 0.3
SearchWP: by SearchWP – 4.3.15
SearchWP WooCommerce Integration: by SearchWP – 1.3.12
Yoast Duplicate Post: by Enrico Battocchi & Team Yoast – 4.5
Formidable Forms: by Strategy11 Form Builder Team – 6.11.2
Smash Balloon Instagram Feed: by Smash Balloon – 6.3.1
Back In Stock Notifier for WooCommerce | WooCommerce Waitlist Pro: by codewoogeek – 5.4.0
Formidable Forms Pro: by Strategy11 – 6.11.2
ACF Content Analysis for Yoast SEO: by Thomas Kräftner
ViktorFroberg
marol87
pekz0r
angrycreative
Team Yoast – 3.1

Yoast SEO: by Team Yoast – 23.2
WooCommerce Xero Integration: by WooCommerce – 1.7.57
GazChap's WooCommerce getAddress.io Postcode Lookup - ODN: by Gareth 'GazChap' Griffiths – 3.2.1
Discount Rules and Dynamic Pricing for WooCommerce: by Discount Team – 8.8.0
Index WP MySQL For Speed: by Oliver Jones
Rick James – 1.4.18

Post Types Order: by Nsp Code – 2.2.6
Feedoptimise: by Feedoptimise – 1.1.29
PixelYourSite PRO: by PixelYourSite – 9.10.6.1
WP Mail SMTP: by WP Mail SMTP – 4.1.1
Central Stock for WooCommerce: by Inpsyde GmbH – 2.1.0
WP 2FA - Two-factor authentication for WordPress: by Melapress – 2.8.0
EWWW Image Optimizer: by Exactly WWW – 7.8.0
WooCommerce PayPal Payments: by WooCommerce – 2.9.0
User Switching: by John Blackbourn – 1.8.0
WooCommerce Stripe Gateway: by WooCommerce – 8.6.1
Awin - Advertiser Tracking: by awinglobal – 1.2.0

Settings

API Enabled: –
Force SSL: –
Currency: GBP (£)
Currency Position: left
Thousand Separator: ,
Decimal Separator: .
Number of Decimals: 2
Taxonomies: Product Types: bundle (bundle)
external (external)
grouped (grouped)
simple (simple)
subscription (subscription)
variable (variable)
variable subscription (variable-subscription)

Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog)
exclude-from-search (exclude-from-search)
featured (featured)
outofstock (outofstock)
rated-1 (rated-1)
rated-2 (rated-2)
rated-3 (rated-3)
rated-4 (rated-4)
rated-5 (rated-5)

Connected to WooCommerce.com: ✔
Enforce Approved Product Download Directories: ✔
HPOS feature enabled: ✔
Order datastore: Automattic\WooCommerce\Internal\DataStores\Orders\OrdersTableDataStore
HPOS data sync enabled: –

Logging

Enabled: ✔
Handler: Automattic\WooCommerce\Internal\Admin\Logging\LogHandlerFileV2
Retention period: 30 days
Level threshold: –
Log directory size: 457 MB

WC Pages

Shop base: #6 - /our-products/
Basket: #7 - /basket/
Checkout: #8 - /checkout/
My account: #9 - /my-account/
Terms and conditions: ❌ Page not set

Theme

Name: Bespoke (Parent)
Version: 1.0
Child Theme: ❌ – If you are modifying WooCommerce on a parent theme that you did not build
personally we recommend using a child theme. See: How to create a child theme

WooCommerce Support: ✔

Templates

Overrides: THEME/woocommerce/archive-product.php version - is out of date. The core version is 8.6.0
THEME/woocommerce/cart/cart-empty.php
THEME/woocommerce/cart/cart.php
THEME/woocommerce/cart/proceed-to-checkout-button.php
THEME/woocommerce/checkout/form-checkout.php
THEME/woocommerce/checkout/thankyou.php
THEME/woocommerce/content-product.php version - is out of date. The core version is 3.6.0
THEME/woocommerce/content-single-product.php
THEME/woocommerce/emails/email-footer.php
THEME/woocommerce/loop/loop-end.php version - is out of date. The core version is 2.0.0
THEME/woocommerce/loop/loop-start.php version - is out of date. The core version is 3.3.0
THEME/woocommerce/loop/pagination.php version - is out of date. The core version is 3.3.1
THEME/woocommerce/myaccount/dashboard.php
THEME/woocommerce/myaccount/form-edit-account.php version 7.0.1 is out of date. The core version is 8.7.0
THEME/woocommerce/myaccount/form-edit-address.php
THEME/woocommerce/myaccount/form-login.php
THEME/woocommerce/myaccount/form-lost-password.php version 7.0.1 is out of date. The core version is 9.0.0
THEME/woocommerce/myaccount/form-reset-password.php
THEME/woocommerce/myaccount/lost-password-confirmation.php
THEME/woocommerce/myaccount/my-account.php
THEME/woocommerce/myaccount/my-address.php version 2.6.0 is out of date. The core version is 8.7.0
THEME/woocommerce/myaccount/my-orders.php
THEME/woocommerce/myaccount/navigation.php version 2.6.0 is out of date. The core version is 9.0.0
THEME/woocommerce/myaccount/orders.php
THEME/woocommerce/myaccount/payment-methods.php version 7.8.0 is out of date. The core version is 8.9.0
THEME/woocommerce/myaccount/view-order.php
THEME/woocommerce/notices/error.php
THEME/woocommerce/notices/notice.php
THEME/woocommerce/notices/success.php
THEME/woocommerce/order/order-details-customer.php version 5.6.0 is out of date. The core version is 8.7.0
THEME/woocommerce/order/order-details.php version 8.5.0 is out of date. The core version is 9.0.0
THEME/woocommerce/single-product/add-to-cart/simple.php
THEME/woocommerce/single-product/add-to-cart/variable.php
THEME/woocommerce/single-product/add-to-cart/variation-add-to-cart-button.php
THEME/woocommerce/single-product/tabs/tabs.php

Outdated Templates: ❌

					Learn how to update

Subscriptions

WCS_DEBUG: ✔ No
Subscriptions Mode: ✔ Live
Subscriptions-core Library Version: 7.4.2
Subscriptions Template Theme Overrides: THEME/woocommerce/myaccount/related-orders.phpversion 1.0.0 - Migrated from WooCommerce Subscriptions v2.6.2 is out of date. The core version is 7.3.0 - Migrated from WooCommerce Subscriptions v2.6.2
THEME/woocommerce/myaccount/related-subscriptions.phpversion 1.0.0 - Migrated from WooCommerce Subscriptions v2.6.0 is out of date. The core version is 7.3.0 - Migrated from WooCommerce Subscriptions v2.6.0
THEME/woocommerce/myaccount/subscription-details.php
THEME/woocommerce/myaccount/subscription-totals-table.php
THEME/woocommerce/myaccount/subscription-totals.php
THEME/woocommerce/myaccount/view-subscription.php ❌ Learn how to update

Subscription Statuses: trash: 48
wc-active: 145
wc-cancelled: 43
wc-expired: 4
wc-on-hold: 42
wc-pending: 43
wc-pending-cancel: 11

WooCommerce Account Connected: ✔ Yes
Active Product Key: ✔ Yes
Custom Retry Rules: ❌ Yes
Custom Retry Rule Class: ✔ No
Custom Raw Retry Rule: ✔ No
Custom Retry Rule: ✔ No
Retries Migration Status: ✔ Completed
Report Cache Enabled: ✔ Yes
Cache Update Failures: ✔ 0 failure

Store Setup

Country / State: United Kingdom (UK)

Subscriptions by Payment Gateway

Stripe: trash: 13
wc-active: 53
wc-cancelled: 3

other: trash: 31
wc-cancelled: 5
wc-expired: 4
wc-on-hold: 7
wc-pending: 2

PayPal: trash: 4
wc-active: 92
wc-cancelled: 35
wc-on-hold: 35
wc-pending: 41
wc-pending-cancel: 11

Payment Gateway Support

Stripe: products
refunds
tokenization
add_payment_method
subscriptions
subscription_cancellation
subscription_suspension
subscription_reactivation
subscription_amount_changes
subscription_date_changes
subscription_payment_method_change
subscription_payment_method_change_customer
subscription_payment_method_change_admin
multiple_subscriptions

PayPal: products
refunds
tokenization
add_payment_method
subscriptions
subscription_cancellation
subscription_suspension
subscription_reactivation
subscription_amount_changes
subscription_date_changes
subscription_payment_method_change
subscription_payment_method_change_customer
subscription_payment_method_change_admin
multiple_subscriptions
gateway_scheduled_payments

Product Bundles

Database Version: 6.22.6
Loopback Test: ✔
Template Overrides: THEME/woocommerce/single-product/add-to-cart/bundle-add-to-cart-wrap.php
THEME/woocommerce/single-product/add-to-cart/bundle.php
THEME/woocommerce/single-product/bundled-item-image.php
THEME/woocommerce/single-product/bundled-item-optional.php
THEME/woocommerce/single-product/bundled-item-quantity.php
THEME/woocommerce/single-product/bundled-item-title.php
THEME/woocommerce/single-product/bundled-product-simple.php

WooCommerce PayPal Payments

Onboarded: ✔
Shop country code: GB
WooCommerce currency supported: ✔
Advanced Card Processing available in country: ✔
Pay Later messaging available in country: ✔
Webhook status: ✔
PayPal Vault enabled: ✔
ACDC Vault enabled: –
Logging enabled: ✔
Reference Transactions: ✔
Used PayPal Checkout plugin: –
Subscriptions Mode: PayPal Vaulting

Admin

Enabled Features: activity-panels
analytics
product-block-editor
coupons
core-profiler
customize-store
customer-effort-score-tracks
import-products-task
experimental-fashion-sample-products
shipping-smart-defaults
shipping-setting-tour
homescreen
marketing
mobile-app-banner
navigation
onboarding
onboarding-tasks
product-custom-fields
remote-inbox-notifications
remote-free-extensions
payment-gateway-suggestions
shipping-label-banner
subscriptions
store-alerts
transient-notices
woo-mobile-welcome
wc-pay-promotion
wc-pay-welcome-page

Disabled Features: minified-js
new-product-management-experience
pattern-toolkit-full-composability
product-pre-publish-modal
settings
async-product-editor-category-field
launch-your-store
product-editor-template-system

Daily Cron: ✔ Next scheduled: 2024-09-12 11:15:20 +01:00
Options: ✔
Notes: 84
Onboarding: skipped

All Products for Woo Subscriptions

Template Overrides: –

Action Scheduler

Canceled: 2
Oldest: 2024-08-16 16:04:44 +0100
Newest: 2024-08-28 12:31:28 +0100

Complete: 209,113
Oldest: 2024-08-11 17:24:17 +0100
Newest: 2024-09-11 17:23:31 +0100

Failed: 118
Oldest: 2024-03-15 15:16:05 +0000
Newest: 2024-09-08 09:00:34 +0100

Pending: 176
Oldest: 2024-09-11 17:28:06 +0100
Newest: 2024-10-27 08:00:00 +0000

Status report information

Generated at: 2024-09-11 17:23:59 +01:00
`

@SethTurin
Copy link

I can confirm this is an issue. I'm seeing the exact same thing. As this error is creating a problem with collecting money, I ask that it be marked as urgent.

@moritz76
Copy link

I can also confirm the problem. I only receive the first payment. The customer_id is not stored in the database ether in the Paypal vault.

This affects my business greatly as no second payment is made.

@SethTurin
Copy link

I can also confirm the problem. I only receive the first payment. The customer_id is not stored in the database ether in the Paypal vault.

This affects my business greatly as no second payment is made.

By any chance, are you using cartflows?

@moritz76
Copy link

No, I don't use cartflows

@SethTurin
Copy link

For me the problem was that cartflow was using Javascript to manage the forms, but the PayPal plugin was also using Javascript to manage the forms. The solution was to write some custom Javascript that dealt with the conflict.

@moritz76
Copy link

Okay, thanks for the tip!

I noticed that for every new order with paypal payment I find this message in the woocommerce log:
No PayPal order ID found in order #22000 meta.

I think this could be the main reason?

@perrelet
Copy link

perrelet commented Oct 28, 2024

Wow. Reporting same issue here.

Is there really no way of recovering customer_id?

@SydeKrystian Going to need some input here, this is a nightmare. 🧨

@SydeKrystian
Copy link
Collaborator

Hello @perrelet

We suggest you contact us directly for further assistance. We may need to examine your system report or logs to better understand what’s happening. You can open a ticket with our service desk. Here’s how you can request support: Request Support. Please make sure to include the URL of this thread in your ticket for reference.

Kind regards,
Krystian

@SethTurin
Copy link

Wow. Reporting same issue here.

Is there really no way of recovering customer_id?

@SydeKrystian Going to need some input here, this is a nightmare. 🧨

As someone who dealt with the nightmare, I'll save you the anxiety. You can dig through the account meta to see if it's there, but if it didn't get recorded, then there's no way to recover it (aside from having the customer purchase again).

In my case it was a separate plugin causing the issue. Not necessarily woocommerce paypal payment's fault, but it sucks that I didn't find out until a bunch of payments started failing.

The failure is how the Javascript on the client side manages the payment form, which leaves a lot of room for these kinds of bugs. If you have any theme or plugin that does anything at all with the payment form, it's probably the culprit.

@perrelet
Copy link

@SethTurin Thanks for your input and sharing more, indeed the checkout in question is heavily customized. Just checked the db and couldn't fetch any customer_id meta.

Could you share which js file you are referring to and where it failed specifically?

Thanks in advance!

@SethTurin
Copy link

SethTurin commented Oct 29, 2024 via email

@SydeKrystian
Copy link
Collaborator

Hello @perrelet

To check the ppec_customer_id value for customers, please refer to the example video provided here: Example Video. This video demonstrates how to locate the specific identifier that PayPal uses to manage tokens.

In the latest versions of the PayPal Payments plugin, the "token migration" process will automatically run. This feature pulls new tokens for all stored customer IDs and saves them directly in the wp_woocommerce_payment_tokens table within WooCommerce. There’s no need for a separate actions to handle this migration, as re-onboarding the plugin can re-trigger this process, syncing tokens from PayPal's database into your WooCommerce database.

If you still cannot retrieve the customer_id meta, and it does not appear in this updated table, then unfortunately, it means there may be no stored token available to retrieve for that customer.

Kind Regards,

Krystian

@perrelet
Copy link

perrelet commented Nov 1, 2024

@SydeKrystian Thanks for you help.

The video appears to show meta_values's being updated in wp_usermeta where meta_key = ppcp_customer_id or ppcp_guest_customer_id. It's not clear from the video, what logic the user is following to update these values though. The video begins with rows 1, 2, 10 and 11 being highlighted. Then:

  • A prefix of prefix DE- is added to row 1
  • Rows 10 and 11 see the cf prefix replaced with US
  • Whilst row 2 is left unchanged.

Am I missing something?

Unfortunately the database in question doesn't appear to have these values. Is there really no way of recovering them from paypal (i.e via the paypal api)?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants