Merchant Security Updates: Learn how security upgrades may affect your integration at the 2017-2018 Merchant Security Roadmap Microsite
PayPal-Apps.com will be permanently unavailable starting December 1, 2017. PayPal-Apps.com will be permanently unavailable starting December 1, 2017. We will review all Adaptive products applications submitted prior to December 1, 2017 according to the existing approval process.If an application has been submitted and you need to check the status, please contact your Account Manager. If you are unsure who your Account Manager is, please Contact Us. We are working on an improved solution for our Adaptive Payments customers in 2018. Check the MTS community page for updates and questions, here All other applications can be created on Developer.PayPal.com.
We offer subscriptions and use Reference Transactions to bill them. Each month we send the goods and afterwards we bill the customers.
Sometimes it's not possible to bill a customer and PayPal shows the error "10417" (https://developer.paypal.com/docs/classic/api/errors/#10417). This is obviously bad because we already packed the goods and it's not possible to cancel the shipping.
What's the supposed way for us to handle this?
I think one way to prevent this is that we get an IPN message when it won't be possible to bill the customer anymore. A few times we got an IPN message with the cryptic code "mp_2004", but not always and we never got a message saying it's possible to bill the customer again.
So when shipping goods before completing payments you should be creating Auths as a first step, even before shipping. A 10417 error indicates that the buyers funding sources have been declined so if you make an Auth first using the reference Transaction API it will confirm if the payment can be completed.
IPN won't help too much to be honest as 10417 can happen even on agreements that have not been cancelled, 10417 can happen on a billing agreement on day 1, but day 2 it may be ok again (e.g. in that case where the customer frees up some credit on their credit card. )
Thank you for your answer.
So is this the supposed way to do it?
1. The customer starts a subscription.
2. We create an authentication immediately.
3. Once a month when we send the order, we bill the customer and immediately create a new authentication.
But then, with regard to the original problem, what happens when PayPal suspends the user between we set up the authentication and the billing?
Also, is it possible to bill a different amount than the authenticated amount, for example when the customer sent us a message saying he wants a different subscription?