Google Pay
Acepta pagos con Google Pay™ en cualquiera de tus integraciones — Link de Pago, Checkout redireccionado o Checkout embebido — con una sola configuración.
¿Por qué Google Pay™?
Tus clientes pagan con las tarjetas guardadas en su cuenta de Google, sin capturar datos manualmente.
Conekta solo procesa tokens CRYPTOGRAM_3DS: cada pago viaja autenticado a nivel de red, sin fricción adicional para el cliente.
Llega al ecosistema Android + Chrome, el sistema operativo móvil dominante en México.
Ficha del método
| Propiedad | Detalle |
|---|---|
| Tipos de integración | Link de Pago · Checkout redireccionado · Checkout embebido · Direct API |
| Dispositivos | Android con Google Wallet con al menos una tarjeta agregada |
| Navegadores | Chrome en Android |
| Autenticación | Solo CRYPTOGRAM_3DS (token de dispositivo con criptograma 3DS). PAN_ONLY no está soportado |
| Reembolsos | Totales y parciales, igual que un cargo de tarjeta |
| Recurrencia | No disponible actualmente |
| Cuenta de Google | No se requiere en ninguna integración de Checkout — Conekta gestiona el Merchant ID de Google Pay en tu nombre. Solo Direct API en producción requiere registro en la Google Pay & Wallet Console |
1. Cómo funciona
Google Pay™ devuelve un token de dispositivo con criptograma 3DS por cada transacción: la verificación 3D Secure viaja dentro del token, sin requerir un challenge adicional al tarjetahabiente.
sequenceDiagram
participant C as Cliente (Android / Chrome)
participant G as Google Pay
participant K as Conekta
participant B as Banco emisor
C->>G: Selecciona tarjeta de su Wallet
G-->>C: Token CRYPTOGRAM_3DS
C->>K: Pago tokenizado (checkout)
K->>B: Procesa el cargo
B-->>K: Autorización
K-->>C: Pago confirmado (order.paid)
Como el único método de autenticación soportado es CRYPTOGRAM_3DS, el botón solo se renderiza cuando el entorno del cliente puede generar ese token: dispositivo Android + navegador Chrome + Google Wallet con una tarjeta válida, todo a la vez. Si el cliente no es elegible, el resto de los métodos de pago se muestra con normalidad.
Términos y políticas de GoogleAl integrar Google Pay™ a través de Conekta aceptas la Política de Uso Aceptable de Google Pay y Wallet API y los Términos de Servicio del API de Google Pay. Su incumplimiento puede resultar en la suspensión de tu integración.
¿Tu cliente aún no tiene tarjetas en Google Wallet?Puede agregarlas en el momento desde la app Google Wallet de su Android (escaneando su tarjeta física o digitándola) o desde la app de su banco, y regresar al checkout para pagar.
2. Intégralo en tu Conekta Checkout
Google Pay™ se habilita enviando google en el campo allowed_payment_methods al crear tu checkout.
Requisitos
- Debes procesar pagos con tarjeta: cuenta con cards activado y tu integración de tarjetas funcionando (Google Pay™ se muestra dentro de tu mismo checkout de tarjetas).
- Envía el valor
allowed_payment_methods.- No necesitas registrarte en la Google Pay & Wallet Console: Conekta gestiona la integración por ti.
Crea una orden con checkout de tipo HostedPayment — exactamente igual que un cargo con tarjeta:
curl --request POST \
--url https://api.conekta.io/orders \
--header 'accept: application/vnd.conekta-v2.2.0+json' \
--header 'content-type: application/json' \
--header 'authorization: Bearer key_XXXXXXX' \
--data '{
"currency": "MXN",
"customer_info": {
"name": "Juan Perez",
"email": "[email protected]",
"phone": "+5218181818181"
},
"line_items": [
{
"name": "Box of Cohiba S1s",
"unit_price": 35000,
"quantity": 1
}
],
"checkout": {
"allowed_payment_methods": ["card", "google"],
"type": "HostedPayment",
"success_url": "https://www.mysite.com/payment/confirmation",
"failure_url": "https://www.mysite.com/payment/failure",
"redirection_time": 4
}
}'La respuesta incluye checkout.url; al redirigir a esa URL tu cliente verá el botón de Google Pay junto al resto de los métodos habilitados.

Los ejemplos completos de creación de orden en PHP, Ruby, Python, Node, .NET, Go y Java están en Cargo único con tarjeta.
a) Crea el Order con checkout Integration desde tu backend
curl --request POST \
--url https://api.conekta.io/orders \
--header 'Accept-Language: es' \
--header 'accept: application/vnd.conekta-v2.2.0+json' \
--header 'authorization: Bearer {PRIVATE_KEY}' \
--header 'content-type: application/json' \
--data '{
"checkout": {
"allowed_payment_methods": ["card", "google", "apple"],
"type": "Integration",
"name": "Pago con Google Pay"
},
"customer_info": {
"name": "DevTest",
"email": "[email protected]",
"phone": "5522997233"
},
"currency": "MXN",
"line_items": [{
"name": "Box of Cohiba S1s",
"description": "Imported From Mex.",
"unit_price": 500000,
"quantity": 1
}]
}'La respuesta incluye el objeto checkout con un id (checkoutRequestId) para el siguiente paso.
b) Renderiza el Componente de Pago
El SDK detecta automáticamente si el cliente puede pagar con Google Pay™ y muestra el botón cuando corresponde:
<div id="conekta-checkout"></div>
<script src="https://pay.conekta.com/v1.0/js/conekta-checkout.min.js"></script>
<script type="text/javascript">
const options = {
backgroundMode: 'lightMode',
colorPrimary: '#081133',
colorText: '#585987',
colorLabel: '#585987',
inputType: 'minimalMode',
};
const config = {
locale: 'es',
publicKey: '{{PUBLIC_KEY}}',
targetIFrame: '#conekta-checkout',
checkoutRequestId: '{{checkoutRequestId}}',
};
const callbacks = {
onGetInfoSuccess: function (loadingTime) {},
onFinalizePayment: function (order) {
console.log('success:', JSON.stringify(order));
},
onErrorPayment: function (error) {
console.log('error:', error);
},
};
window.ConektaCheckoutComponents.Integration({ config, callbacks, options });
</script>
Los ejemplos de creación de orden en Ruby, Node, Python, Go, Java y .NET están en Cargo único con tarjeta.
Desde el Panel
- Ingresa a tu panel de administración y entra a Link de pago → Crear Link.
- En Configuración avanzada verás los métodos de pago habilitados, entre ellos Google Pay.

Por API
curl --request POST \
--url https://api.conekta.io/checkouts \
--header 'accept: application/vnd.conekta-v2.2.0+json' \
-u key_eYvWV7gSDkNYXsmr: \
--header 'content-type: application/json' \
--data '{
"name": "Payment Link Name",
"type": "PaymentLink",
"recurrent": false,
"expires_at": 1799999999,
"allowed_payment_methods": ["card", "google"],
"needs_shipping_contact": true,
"order_template": {
"line_items": [{
"name": "Red Wine",
"unit_price": 1000,
"quantity": 10
}],
"currency": "MXN",
"customer_info": {
"name": "Juan Perez",
"email": "[email protected]",
"phone": "5566982090"
}
}
}'
expires_atdebe ser un timestamp futuro (entre 5 minutos y 365 días a partir de la creación).
3. Prueba tu integración
En el sandbox de Conekta no existen "tarjetas de prueba de Google Pay": usa tus llaves de sandbox y prueba con una tarjeta normal agregada a Google Wallet — el cargo no se procesa fuera del ambiente de pruebas.
Para simular rechazos, envía un email con el formato {motivo}[email protected] en el campo customer_info.email de la orden. El prefijo determina el resultado:
Email en customer_info.email | Resultado simulado |
|---|---|
[email protected] | insufficient_funds |
[email protected] | card_declined |
[email protected] | suspected_fraud |
| Cualquier otro email | Pago aprobado |
La lista completa de escenarios simulables está en el kit de pruebas.
4. ¿No aparece el botón?
El botón de Google Pay™ tiene requisitos de entorno estrictos porque Conekta solo procesa tokens CRYPTOGRAM_3DS. Diagnostica en dos pasos: primero el dispositivo, luego tu integración.
Checklist del dispositivo del cliente
- Es un dispositivo Android — los tokens de dispositivo no se generan en iOS ni en desktop.
- El navegador es Chrome.
- Tiene Google Wallet con al menos una tarjeta válida agregada (Visa, Mastercard o Amex).
Checklist de tu integración
allowed_payment_methodsdel checkout incluyegoogle.- El sitio se sirve por HTTPS con certificado válido.
- Si el Component vive dentro de un
<iframe>tuyo, el iframe debe incluir el atributoallow="payment".
El botón aparece pero el pago falla
- Confirma el estado final vía webhooks (
order.paid/order.declined), no solo con el callback del frontend.- Una declinación bancaria regresa el código del emisor en la respuesta del cargo; una declinación antifraude rechaza sin cobro.
5. Disputas y contracargos
Todas las transacciones de Google Pay™ procesadas por Conekta usan tokens de dispositivo con criptograma 3DS a nivel de red, por lo que cada pago viaja autenticado. Esto reduce significativamente la incidencia de fraude y fortalece tu posición de defensa frente a un pago con tarjeta digitada.
Los reembolsos (totales o parciales) funcionan igual que en cualquier cargo de tarjeta.
6. Eventos y webhooks
Configura webhooks para automatizar el seguimiento de la orden:
| Evento | Descripción |
|---|---|
order.paid | Pago completado exitosamente |
order.pending_payment | Orden creada, pendiente de pago |
order.declined | Pago rechazado |
Siguiente paso
- Apple Pay — habilita la otra wallet con la misma orden.
Google Pay es una marca de Google LLC.
Updated about 21 hours ago

