Google Pay
Perché scegliere Google Pay
Google Pay è il sistema di pagamento digitale sviluppato da Google che permette di effettuare pagamenti in modo semplice, veloce e sicuro tramite smartphone (NFC) o sul web, utilizzando i dati della carta salvati nel proprio account Google.
Integrarlo nell'ecommerce amplia le modalità di pagamento disponibili e migliora l'esperienza utente grazie a un checkout rapido e senza frizioni. Elimina la necessità di inserire manualmente i dati della carta e, grazie all'autenticazione già presente sul dispositivo o sull'account Google, i clienti autorizzano i pagamenti in modo immediato con un semplice tap.
Per ulteriori informazioni consulta la documentazione ufficiale Google Pay API
Servizi e funzionalità disponibili tramite integrazione Fabrick
L'integrazione di Google Pay con Fabrick Payment Orchestra mette a disposizione un ecosistema completo di funzionalità per semplificare la gestione delle transazioni e migliorare l'esperienza sia per il venditore che per il cliente.
- Compatibile con app e siti web: supporto sia per app Android che per integrazioni web tramite Google Pay JS API.
- Gestione Payment Token: Fabrick gestisce autonomamente il token di pagamento presentando Google Pay sulla propria pagina, senza sviluppi aggiuntivi lato merchant.
- Fabrick Guaranteed Payments: servizio di prevenzione frodi a supporto dell'esercente (scopri di più).
- Fabrick Advice: servizio di Transaction Risk Analysis (TRA) per usufruire delle esenzioni previste dalla PSD2 (scopri di più).
- Riconciliazione semplificata: gestione dei pagamenti tramite report dedicati (scopri di più).
- Gestione avanzata delle transazioni: supporto a catture e storni parziali o multipli per una gestione flessibile dei pagamenti.
- Supporto multivaluta: compatibilità con diverse valute per transazioni internazionali.
- Supporto circuiti internazionali: Google Pay tramite Fabrick supporta Visa, Mastercard.
Google Pay su Fabrick Payment Orchestra: attivazione e modalità di integrazione
Richiesta di attivazione
Puoi richiedere l'attivazione di Google Pay tramite Fabrick:
- Contattando il tuo referente commerciale
- Contattando l'assistenza al seguente link
Una volta ricevuta la conferma, puoi verificare l'attivazione dalla dashboard:
- Accedi alla Dashboard Fabrick
- Dal menu laterale, seleziona Workspace → Negozi → [Seleziona negozio] → Configurazioni
- Nella lista dei metodi di pagamento, individua Google Pay e verifica che lo stato risulti Attivo

Da questo momento, il tuo e-commerce è pronto per accettare pagamenti Google Pay tramite Fabrick Payment Orchestra.
Tipologie di integrazione
Fabrick offre due modalità di integrazione per utilizzare Google Pay:
-
Integrazione hosted
Integrazioni supportate
✓HPPO✓Pay By Link✓Web Component✓LightboxGoogle Pay viene mostrato direttamente nella pagina di pagamento. Fabrick gestisce autonomamente la visualizzazione del pulsante, la generazione del token e l'intera fase di processamento della richiesta di pagamento. Per le integrazioni tramite Web Component o che utilizzano la WebView è richiesto un passaggio di configurazione aggiuntivo.
-
Integrazione tramite API
Integrazioni supportate
✓API OnlyIn questa modalità Google Pay viene integrato direttamente sul sito o sull'app dell'esercente. Il merchant si occupa dell'implementazione del pulsante di pagamento, della generazione del token e del relativo invio a Fabrick per l'elaborazione della transazione.
Google Pay è supportato dai principali browser moderni, tra cui Chrome, Edge, Firefox e Safari.
Per effettuare i test è necessario un account Google e un dispositivo Android o un browser che supporta Google Wallet.
Per approfondire:
Integrazione hosted
Google Pay viene mostrato direttamente nella pagina di pagamento. Fabrick gestisce autonomamente il pulsante, la generazione del token di pagamento e l'eventuale flusso di autenticazione (SCA).

Quando l'utente seleziona Google Pay, viene aperta nel browser la modale di Google per scegliere la carta con cui completare il pagamento.

Configurazione aggiuntiva per Web Component e WebView
Per queste integrazioni, Google Pay viene eseguito direttamente sul dominio dell'esercente. È richiesto, quindi, di registrare il proprio dominio tramite la Google Pay & Wallet Console e attendere l'approvazione da parte di Google. La procedura è descritta nella guida ufficiale.
Dopo aver ricevuto l'approvazione da parte di Google, per le integrazioni tramite Web Component, comunica il tuo Merchant ID al referente commerciale o all'assistenza per associarlo all'account Fabrick e completare la configurazione.
Se il tuo checkout web è integrato in una WebView Android, sono richieste configurazioni aggiuntive lato app, per questa integrazione non è necessario comunicare a Fabrick il tuo Merchant ID. Consulta la guida ufficiale Google.
Integrazione tramite API
Requisiti per l'attivazione
Per utilizzare l'Integrazione tramite API con Google Pay tramite Fabrick sono necessari:
-
Google Pay & Wallet Console: È necessario registrare un account sulla Google Pay & Wallet Console per gestire l'integrazione, accettare le policy e ottenere il
merchantIdda utilizzare in produzione. -
Accettazione delle policy Google: Tutti gli esercenti devono accettare la Google Pay API Terms of Service e la Google Pay APIs Acceptable Use Policy prima di procedere con l'integrazione.
-
Registrazione del dominio e accesso in produzione: Prima di andare in produzione è necessario registrare il proprio dominio tramite la Google Pay & Wallet Console e attendere l'approvazione da parte di Google. La procedura è descritta nella guida ufficiale.
Attivazione completataDopo aver ricevuto l'approvazione da parte di Google, comunica il tuo Merchant ID al referente commerciale o all'assistenza per associarlo all'account Fabrick e completare la configurazione.
Configurazione del codice JavaScript sul sito
L'integrazione diretta web avviene seguendo la guida ufficiale Google Pay, con alcune impostazioni specifiche per Fabrick descritte nei passi seguenti.
Passo 1 — Configurazione tokenizationSpecification
Impostare gateway su gestpay per indicare a Google Pay di utilizzare Fabrick come gateway di pagamento.
Nel parametro gatewayMerchantId specificare lo shopLogin Fabrick relativo all'ambiente in uso (sandbox o produzione):
"tokenizationSpecification": {
"type": "PAYMENT_GATEWAY",
"parameters": {
"gateway": "gestpay",
"gatewayMerchantId": "GESPAY12345"
}
}
Passo 2 — Reti e metodi di pagamento supportati
Configurare le reti e i metodi di autenticazione supportati da Fabrick tramite i parametri allowedCardNetworks, che definisce i circuiti accettati, e allowedCardAuthMethods, che definisce la modalità di autenticazione. Fabrick supporta entrambe le modalità:
PAN_ONLY— la carta è memorizzata nell'Account Google dell'utente, non sul dispositivo. Google restituisce il PAN con mese e anno di scadenza. La transazione non soddisfa nativamente la SCA: Fabrick eseguirà automaticamente il flusso 3DS come fallback.CRYPTOGRAM_3DS— la carta è tokenizzata sul dispositivo Android tramite Google Wallet. Google restituisce un criptogramma 3DS generato direttamente sul dispositivo, che soddisfa nativamente i requisiti SCA: non sarà necessario gestire il flusso 3DS.
I token CRYPTOGRAM_3DS (DPAN) sono generati esclusivamente su dispositivi Android. Da desktop e da dispositivi iOS Google Pay restituisce sempre token PAN_ONLY (FAQ ufficiale Google).
const allowedCardNetworks = ["MASTERCARD", "VISA"];
const allowedCardAuthMethods = ["PAN_ONLY", "CRYPTOGRAM_3DS"];
Per ulteriori dettagli sui parametri di configurazione consulta la documentazione ufficiale Google.
I due metodi richiedono carte diverse in ambiente di test:
PAN_ONLY— utilizza una carta associata al tuo account Google per i pagamenti online. Sono le carte che vengono mostrate nella finestra di checkout Google Pay da browser. Puoi aggiungerne una direttamente da Chrome: Impostazioni → Compilazione automatica e password → Metodi di pagamento → Aggiungi carta di credito.CRYPTOGRAM_3DS— utilizza una carta tokenizzata su dispositivo Android tramite Google Wallet. Non vengono mostrate nel checkout web: per testarle è necessario effettuare il pagamento da smartphone.
Nota: le carte presenti su payments.google.com sono distinte da quelle abilitate per il checkout web e non vengono mostrate nella finestra di pagamento Google Pay da browser.
Passo 3 — Impostazione ambiente Google Pay
Il parametro environment determina in quale ambiente opera Google Pay. Impostare TEST o PRODUCTION in base all'ambiente in uso:
const paymentsClient =
new google.payments.api.PaymentsClient({ environment: 'TEST' });
// Per l'ambiente di produzione utilizzare: { environment: 'PRODUCTION' }
In ambiente TEST il gatewayMerchantId deve essere valorizzato con lo shopLogin sandbox Fabrick, non con quello di produzione. Il valore va inserito nel Passo 1.
Nota: passare all’ambiente PRODUCTION solo dopo aver completato tutti i test e aver ricevuto le approvazioni da Google.
Passo 4 — Aggiunta del pulsante Google Pay
Aggiungere il pulsante Google Pay alla pagina di checkout rispettando le linee guida di brand Google e le opzioni di personalizzazione disponibili:
function addGooglePayButton() {
const paymentsClient = getGooglePaymentsClient();
const button = paymentsClient.createButton({
onClick: onGooglePaymentButtonClicked,
allowedPaymentMethods: [baseCardPaymentMethod]
});
document.getElementById('container').appendChild(button);
}
Passo 5 — Definizione dei dati di pagamento richiesti
Comporre l'oggetto paymentDataRequest con importo, valuta e merchantInfo:
const paymentDataRequest = Object.assign({}, baseRequest);
paymentDataRequest.allowedPaymentMethods = [cardPaymentMethod];
paymentDataRequest.transactionInfo = {
totalPriceStatus: 'FINAL',
totalPrice: '100.00',
currencyCode: 'EUR',
countryCode: 'IT'
};
paymentDataRequest.merchantInfo = {
merchantId: 'MERCHANT_ID_GOOGLE',
merchantName: 'Nome del tuo negozio'
};
merchantId identifica il tuo account sulla Google Pay & Wallet Console ed è obbligatorio in produzione. In ambiente TEST può essere omesso o valorizzato con un placeholder. Per ottenerlo è necessario completare la registrazione sulla console Google, come descritto nella guida ufficiale.
Passo 6 — Gestione del click e recupero del token di pagamento
Al click sul pulsante, avviare la richiesta e recuperare il token da inviare a Fabrick:
function onGooglePaymentButtonClicked() {
const paymentDataRequest = getGooglePaymentDataRequest();
const paymentsClient = getGooglePaymentsClient();
paymentsClient.loadPaymentData(paymentDataRequest)
.then(function(paymentData) {
// Inviare il token di pagamento a Fabrick tramite payment/submit
processPayment(paymentData.paymentMethodData.tokenizationData.token);
})
.catch(function(err) {
console.error(err);
});
}
Passo 7 — Invio della richiesta di pagamento a Fabrick
Una volta ottenuto il token dall'oggetto paymentData, il pagamento viene gestito in due step consecutivi: payment/create per inizializzare la transazione e payment/submit per inviare il token Google Pay.
Step 1 — Creazione della richiesta di pagamento
Request
POST /api/v1/payment/create
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
Content-Type: application/json
{
"shopLogin": "GESPAY12345",
"amount": "100",
"currency": "EUR",
"shopTransactionID": "FBK_OrderID"
}
I valori di importo e valuta passati a payment/create devono coincidere esattamente con quelli definiti nel Passo 5.
In sandbox il flusso 3DS per token PAN_ONLY potrebbe non attivarsi automaticamente Per simulare il comportamento in produzione aggiungere exemption: SKIP nella chiamata payment/create:
{
"shopLogin": "GESPAY12345",
"amount": "100",
"currency": "EUR",
"shopTransactionID": "FBK_OrderID",
"transDetails": {
"threeDsContainer": {
"exemption": "SKIP"
}
}
}
Response
{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"paymentToken": "f0419188-8a78-4918-913c-a491e4e78084",
"paymentID": "1881129911957",
"userRedirect": null,
"qrCode": null
}
}
Step 2 — Invio del token e processamento
Inviare una richiesta a payment/submit con il token Google Pay ottenuto al Passo 6:
- Header
PaymentToken: valorizzare con ilpaymentTokenricevuto dallo Step 1 - Body: inserire il token Google Pay in
paymentTypeDetails.googlePay.tokenizationData.token
Request
POST /api/v1/payment/submit
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
PaymentToken: f0419188-8a78-4918-913c-a491e4e78084
Content-Type: application/json
{
"shopLogin": "GESPAY12345",
"paymentType": "GOOGLEPAY",
"paymentTypeDetails": {
"googlePay": {
"tokenizationData": {
"token": {
"signature": "MEYC...",
"protocolVersion": "ECv1",
"signedMessage": "{\"encryptedMessage\":\"EFVBR...\",\"ephemeralPublicKey\":\"BPiL...\",\"tag\":\"ZN43...\"}"
}
}
}
}
}
La response varia in base al tipo di token Google Pay ricevuto:
PAN_ONLY— la SCA non è soddisfatta nativamente. Fabrick restituisce il codice8006conuserRedirect.hrefvalorizzato con l'URL della pagina di autenticazione 3DS. Il merchant deve reindirizzare il buyer a quell'URL per completare la verifica. Al termine, il buyer viene rimandato alla pagina di esito e la transazione viene finalizzata.CRYPTOGRAM_3DS— la SCA è già soddisfatta dal criptogramma generato sul dispositivo, non è necessario gestire il flusso 3DS. Se la transazione viene approvata, la response restituiscetransactionResult: "OK"e il pagamento è completato. Contestualmente, il sistema invia una notifica server to server (S2S) con l'esito della transazione.
Il campo protocolVersion (ECv1 / ECv2) indica la versione del protocollo di cifratura del token, non il metodo di autenticazione: un token ECv2 può veicolare sia PAN_ONLY che CRYPTOGRAM_3DS. Il metodo effettivo (authMethod) è contenuto nel signedMessage cifrato, leggibile solo dal gateway.
Per distinguere lato merchant le transazioni che richiedono lo step-up 3DS, imposta assuranceDetailsRequired: true nei CardParameters (Passo 2): la response Google Pay includerà l'oggetto assuranceDetails con i campi accountVerified e cardHolderAuthenticated. Solo se entrambi sono true la transazione è conforme SCA e non richiede 3DS; in caso contrario Fabrick attiverà il flusso 3DS (codice 8006 con userRedirect.href). Per approfondire consulta la guida SCA ufficiale Google.
Esempio di risposta per token che NON soddisfano i requisiti SCA:
Response
{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"transactionType": "submit",
"transactionResult": "",
"transactionErrorCode": "8006",
"transactionErrorDescription": "Verify By Visa",
"bankTransactionID": "",
"shopTransactionID": "",
"shopTransactionID_2": "",
"authorizationCode": "",
"paymentID": "1881129911957",
"currency": "",
"country": "",
"company": null,
"tdLevel": "",
"buyer": {
"name": "",
"email": ""
},
"risk": {
"riskResponseCode": "",
"riskResponseDescription": ""
},
"customInfo": {},
"alertCode": "",
"alertDescription": "",
"cvvPresent": "N",
"maskedPAN": "",
"paymentMethod": "",
"productType": "",
"token": "",
"tokenExpiryMonth": "",
"tokenExpiryYear": "",
"userRedirect": {
"href": "https://sandbox.gestpay.net/pagam/pagam3d.aspx?a=GESPAY12345&b=f0419188-8a78-4918-913c-a491e4e78084&axerve3D=True&IsLightBox=False"
}
}
}
Funzionalità aggiuntive del metodo di pagamento
Puoi abilitare funzionalità aggiuntive sulla transazione modificando la chiamata payment/create per includere i servizi specifici, come Fabrick Guaranteed Payment o Fabrick Advice. I servizi configurati verranno applicati automaticamente alla transazione quando il cliente seleziona Google Pay.
Assistenza
Fabrick
- Status page: https://status.fabrick.com/
- Support: https://landing.fabrick.com/fabrick-dashboard-support