Note that there are some explanatory texts on larger screens.

plurals
  1. POHow do I charge someone a variable amount every 2 months without storing CVV code?
    text
    copied!<p>We have a physical product that is shipped every 2, 3, or 4 months depending upon customer preference. In between shipments the user may elect to modify their choices.</p> <p>Before anyone suggests it - I'm pretty sure a recurring billing system (such as Paypal) is not suited to our needs. For two reasons a system like Paypal's does not seem to be ideal .</p> <ul> <li>They only let you do monthly, quarterly, annually. Not every 2 or 3 months. [<a href="https://cms.paypal.com/cms_content/US/en_US/files/developer/PP_PayflowPro_RecurringBilling_Guide.pdf" rel="noreferrer">Paypal API document here</a>]</li> <li>We want the customer to be able to 'ship now' if they want their products early or later than the normal schedule.</li> <li>Since its a physical product we cant split it to be a prorated monthly amount.</li> </ul> <p>I think therefore we will have to rebill using the same mechanism as we do when the initial order is created - with the CC numebr and CVV2 code. But obviously we cant store the CVV2 code for PCI compliance!!</p> <p>I recently came across <a href="http://www.braintreepaymentsolutions.com/" rel="noreferrer">'BrainTrees' payment services</a> - which allow you to create an initial transaction and retrieve a 'token' that represents that credit card number. That token is safe to store because it is useless to a thief. It helps minimize the work needed for PCI compliance. </p> <p>I'm completely fine using BrainTree's solution. It seems to be perfect for what we need - yet it leaves me confused about Paypal's offering. How would I achieve what i am trying to do with any system other than BrainTree without having to store the CVV2 code ?</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload