I am working on building our server system to accept users to buy the product through Google Pay.
In our use case, our users will make a payment request (PaymentDataRequest object) to google pay server from mobile app to get the payment token(PaymentMethodTokenizationData object in the response) and mobile app will send it to our backend server and our server will forward this token to the payment gateway for further payment process.
API Reference: https://developers.google.com/pay/api/web/reference/object#PaymentMethodTokenizationData
Tokenization type is set to PAYMENT_GATEWAY
However, we have some security concerns about transmitting the PaymentMethodTokenizationData in our server system.
Since I cannot find any explanation about these questions in the official Google Pay API document, could someone please help me to clarify the following questions?
(1) Does google payment token (PaymentMethodTokenizationData object) represent ‘one tokenized credit card' or 'one-time transaction info'?
(2) Can the same payment token be reused to purchase the product for multiple times without requesting a new token?
(3) Is this payment token restricted to be used only for one specific transaction id? For example, if the token is leaked, is it possible that someone can use it to make another purchase?
(4) Can this payment token only be used by payment gateway to collect money? In other words, except for the payment gateway, there is no one can extract any payment information(credit number, transaction info...) from the token, so we don't need any further secure mechanism to transmit this token on the network.
Thanks