Can a PNREF from a reference transaction be used as the ORIGID in another reference transaction?

StackOverflow https://stackoverflow.com/questions/12807942

  •  06-07-2021
  •  | 
  •  

Question

I couldn't find a definitive answer from the PayPal docs on this.

According to the docs:

The PNREF returned in the original transaction is valid in reference transactions for 12 months.

I want to avoid requiring my customers re-enter their credit card information every 12 months.

So what I want to do is to do a zero-dollar authorization to store an initial PNREF, and then update the PNREF value for that customer every time they do a reference transaction. So as long as the customer doesn't go for 12 straight months with no transactions, they won't have to re-enter their card information.

Having trouble finding an answer to whether or not that's possible via Google. Does anyone know if you can use the PNREF from a reference transaction as the ORIGID for another reference transaction?

Was it helpful?

Solution

Well I went ahead and tried it out, and I am able to use the PNREF of a reference transaction as the ORIGID in another reference transaction.

Now the million dollar question is, will this still work a year after the zero dollar authorization? Guess I'll let you know in about a year...


One year later...

It's been a year, and this has been working successfully for us. We originally save the customer's credit card info using a zero-dollar authorization (ZDA). Later, we do a reference transaction (call it T1) with the ZDA's PNREF as the new transaction's ORIGID.

Some time later, when the customer wants to do another transaction (call it T2), we use T1's PNREF as the new transaction's ORIGID. We then store T2's PNREF for use on the next transaction. So every time we do a transaction, we store the new PNREF for use on the next transaction.

This is how we've been chaining the transactions, and we have confirmed (ourselves and by a representative over the phone) that as long as 12 months doesn't go by without any transactions, we can keep chaining them indefinitely.

OTHER TIPS

We have the same issue, or wish to do the same thing that Travesty3 had posted, we were pointed to this thread by PayFlow Pro Email Support.

However, before we got that response from their Email Support Team, we had ended up calling PayFlow Pro Phone Support and got the following explanation:

There may not be an easy way to perpetually or "chaining" keep renewing the PNREF. Especially when utilizing the Zero Dollar Authorization (ZDA). While the PNREFs returned by ZDA may work, they only last for a short period of time (+- 14 days). The tech support person who answered our call had consulted a senior tech to confirm this.

Now, apparently PNREFs returned by Delayed Capture or Sale transactions do last 12 months, but these aren't good solutions for us since we don't want to charge the customers' cards without actual purchases.

Yes, you can indeed use the PNREF of a reference transaction (ZDA or not) as the ORIGID for a new reference transaction.

One caveat however, if you're using PayPal Payments Pro (thus; PayPal is set as your processor) then I'll need to do some additional checking on this, as I'm not entirely sure whether it's supported in that scenario.
If you're using Payflow Pro with your own processor, then it's definitely supported.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top