Hello,
Thank you for reaching out to us, we are here to help.
A payment method is only vaulted when a payment is made (an actual transaction) from the customer account to the merchant account. In the case that you have a trial period, during this free trial, no payment is made, so no payment method will be shown in the account overview under “Payment Methods”.
This seems the intended behavior for us, please let me know if you don’t agree or have another idea about this.
Kind regards,
Joost
Thanks for your reply!
On my site, there is a 7-day free trial, and after that, an actual transaction also happened after 7 days. Still, it is not showing the PayPal payment method under “Payment Methods”.
Here is the screenshot: https://prnt.sc/9qLRNqxwE-Ya
Hello @yuvrajsinh2211
I have experienced this situation in the past, but the payment method not showing up in the account page, does not mean the payment method is not saved. This saved method is done on PayPal server, so it could be that it does exist. I found out that you can verify the payment method being available, by testing another payment and checking if the PayPal button has the drop-down option available. This indicates that the payment method is available. If you want to test this for customers, you could use a user-switching plugin to see if this shows up for them.
Did any user run into any failures or issue because of this problem?
Kind regards,
Joost
Thanks for your reply!
Yes, I know that when a user tries to purchase another product, the PayPal button has a drop-down option available with email.
But it is not showing the PayPal payment method under “Payment Methods”.
I want it to display on the account page.
If I make a payment using sandbox details, then it shows the payment method under “Payment Methods”.
Here is the screenshot: https://prnt.sc/h5CSbCxS5RFi
Why is it not working for live payments?
Hello @yuvrajsinh2211
I have discussed this a bit further with my team, and the logic behind this situation is that the saved payment method is only shown in the my-account section when the vault.payment-token.created
webhook arrived and was handled.
So, we would expect that your webhooks might not fully function, so this would be the first item to investigate. There are 2 webhook tools/buttons available in the bottom of the “Connection” tab in the settings page. You can use both “Simulate” and “Resubscribe” to test and correct the webhooks (if needed).
Alternatively, one way to get already saved payment methods visible there is to trigger the payment token migration. This requires a small plugin and the manual removal of an option in the DB. We are working on this, and hope to have something available for you early next week.
However, checking the functioning of the webhooks would be the priority activity to perform.
Kind regards,
Joost
Hello there,
I finally (sorry for the wait) have got the plugin that should be able to correct the tokes in the background, you can download it here.
In order to make this work, you would need to delete the ppcp_payment_tokens_migration_initialized
option in the wp_options
table and then activate the token migration plugin. It can be deactivated again after a few seconds.
After this, when checking the PayPal Payments logs, the token migration should have started and show up in the logs. The plugin will then call the PayPal API to get a payment token for every user with a customer_id
to be displayed in the my-account section.
In some cases, it can help to use this filter as well because empty meta keys will be skipped by default:
add_filter( 'ppcp_skip_payment_tokens_empty_key_migration', '__return_false' );
It may not be desirable for every user to use this filter. This issue has some context on why we ended up skipping empty meta keys by default.
If you have any more questions, please let us know.
I will mark this thread as resolved, but will still receive a notification in case you reply to this comment.
Kind regards,
Joost