CRYPTOGRAM_3DS 指代币卡。也就是说,已添加并存储在您的 Android 设备上的卡片。这些卡可用于通过触碰付款在店内(而非应用内)付款。
如果您只使用CRYPTOGRAM_3DS,这意味着它目前只能在用户保存了标记卡的 Android 设备上运行。
我将以下示例放在一起进行演示(确保您在具有适当卡的 Android 设备上进行测试):https://jsfiddle.net/w5ptorbd/
<script src="https://unpkg.com/@google-pay/button-element@2.x/dist/index.umd.js"></script>
<google-pay-button environment="TEST"></google-pay-button>
const button = document.querySelector('google-pay-button');
button.paymentRequest = {
apiVersion: 2,
apiVersionMinor: 0,
allowedPaymentMethods: [
{
type: 'CARD',
parameters: {
allowedAuthMethods: ['CRYPTOGRAM_3DS'],
allowedCardNetworks: ['MASTERCARD', 'VISA'],
},
tokenizationSpecification: {
type: 'PAYMENT_GATEWAY',
parameters: {
gateway: 'example',
gatewayMerchantId: 'exampleGatewayMerchantId',
},
},
},
],
merchantInfo: {
merchantId: '12345678901234567890',
merchantName: 'Demo Merchant',
},
transactionInfo: {
totalPriceStatus: 'FINAL',
totalPriceLabel: 'Total',
totalPrice: '100.00',
currencyCode: 'USD',
countryCode: 'US',
},
};
button.addEventListener('loadpaymentdata', event => {
console.log('load payment data', event.detail);
});
button.addEventListener('readytopaychange', event => {
console.log('ready to pay change', event.detail);
});