StoreKit issue with purchase

I can purchase fine and restore works as well (tested by completely deleting app then re-installing). However, when I install app and then click purchase (previously already purchased) and call SKPaymentQueue.default().add(payment) all screens for purchase come up but no movement to the paymentQueuest function I have being triggered. I cannot see any transaction status change. It is as if it stops. Now of course I am only completing this in sandbox and have not submitted app yet.

I can try exact same steps but then cancel purchase and get the <SKPaymentQueue: 0x28192caa0>: Payment completed with error: Error ....

Again there is not return or function called. I even had to create my own restore process cause the func paymentQueue(_ queue: SKPaymentQueue, updatedTransactions transactions: [SKPaymentTransaction]) {} is never called only the func paymentQueueRestoreCompletedTransactionsFinished(_ queue: SKPaymentQueue) {} when I use SKPaymentQueue.default().add(self)         SKPaymentQueue.default().restoreCompletedTransactions()

Something does not seem correct. Is this due to sandbox and will work if app is in TestFlight and using my real account? not the sandbox?

StoreKit issue with purchase
 
 
Q