Transaction ID Life Cycle for Roku In-Channel Purchases
Suppose I have a monthly In-channel purchase (ICP) subscription transaction with an ID like: 025b48e1-5174-6343-94e2-a1e30817b458. Later, if my server calls the Roku Web service and finds out that the expiration date on the transaction has passed, can I assume that the transaction/subscription for that ID is permanently canceled? If the credit card has failed, is possible for that transaction (025b48e1-5174-6343-94e2-a1e30817b458) might later get updated to be in good standing?
Put another way, I'd like to know if canceled or failed transactions, which I store in my database, should just be marked as canceled and not checked again, of should I keep checking to see if I should allow the customer to continue accessing his/her subscription? For other payment processors, once a profile is "canceled," it permanently goes away. For those processors, a brand new transaction must be established. I want to know if I should include business login in my code that can revive a payment profile (i.e., the same transaction ID) when the user is paying via a Roku in-channel purchase.
Re: Transaction ID Life Cycle for Roku In-Channel Purchases
Ok, so I had to write this down as it was told to me, let me know if you need anything clarified:
"Web API: Developer can use transaction id to verify that transaction is still active. Using the API they can give us latest or original transaction id and find out if it is valid
Push notifications: On developer website, you can enroll in new push notifications feature and we will tell them every event that happens and reference original transaction.
If subscription cancelled and expired, and user starts a new subscription there will be a new transaction id. We also provide an account identifier that can be used to link user account to new transaction.
When use signs up in your transact flow are make sure you are set up to identify the user so you can correlate the transactions with the account identifier. "