# Pasarela PayPal Reader (Zettle)

La pasarela PayPal Reader permite aceptar pagos con tarjeta en persona utilizando un terminal **PayPal Reader (Zettle)** directamente desde WCPOS. El navegador transmite el estado del pago en tiempo real desde el lector a través de una conexión segura con la API Reader Connect de Zettle, de modo que el cajero puede ver cada paso del pago a medida que ocurre.

## Características[​](#features "Enlace directo a Características")

#### Pagos con tarjeta en persona

Procesamiento de pagos con chip, sin contacto y billeteras móviles en un terminal PayPal Reader (Zettle)

#### Estado del pago en tiempo real

El POS muestra el progreso en tiempo real: conectando, pago en curso, completado o cancelado

#### Monto verificado en el servidor

El monto reportado siempre se verifica contra el total del pedido antes de registrar el pedido

#### Emparejamiento sencillo

Vincular un lector desde la configuración de la pasarela de pago utilizando un código de emparejamiento que se muestra en el dispositivo

## Requisitos[​](#requirements "Enlace directo a Requisitos")

WCPOS

<!-- -->

: Se requiere la versión Pro para el cobro en POS

WordPress

<!-- -->

: WordPress 5.2+ con WooCommerce activo

PHP

<!-- -->

: PHP 7.4 o superior

Cuenta Zettle

<!-- -->

: Una cuenta de comerciante de Zettle para desarrolladores, además de un Client ID de Zettle y un Assertion (JWT) del Portal de Desarrolladores de Zettle

Hardware compatible

<!-- -->

: Un terminal de tarjetas PayPal Reader (Zettle)

Conexión estable

<!-- -->

: Los pagos en vivo transmiten el estado al lector a través de la red y requieren una conexión a internet

Hardware y regiones compatibles

La disponibilidad de PayPal Reader / Zettle, los modelos de lector compatibles y los países admitidos están determinados por la **cuenta de comerciante de Zettle**, no por WCPOS. Se recomienda confirmar que el lector y la región son compatibles con PayPal/Zettle antes de realizar la compra.

## Instalación[​](#installation "Enlace directo a Instalación")

1

#### Instalar PayPal Reader para WooCommerce

Se puede instalar desde `WP Admin > POS > Ajustes > Extensiones`, o descargar el último **archivo zip del plugin** (no el zip del código fuente de GitHub ni el tarball) desde la [página de versiones de GitHub](https://github.com/wcpos/paypal-reader-for-woocommerce/releases) y subirlo a través de `Plugins > Añadir nuevo > Subir plugin`. WooCommerce debe estar instalado y activo.

2

#### Configurar la pasarela de pago

1. Navegar a `WP Admin > WooCommerce > Ajustes > Pagos`
2. Buscar **PayPal Reader** en la lista de métodos de pago y abrir su configuración
3. Dejar activada la opción **Habilitar modo de prueba** mientras se verifica la configuración. Se deben utilizar las credenciales de la cuenta de comerciante de desarrollador de Zettle en modo de prueba; desactivar esta opción posteriormente para aceptar pagos reales
4. Introduzca su **Zettle Client ID** — el ID de cliente OAuth de Zettle del Portal de Desarrolladores de Zettle
5. Introduzca su **Zettle Assertion** — la aserción OAuth de Zettle (JWT). Se trata como un secreto
6. Opcionalmente, establezca el **Título** y la **Descripción** que se muestran a los clientes
7. **Guarde** la configuración

nota

La casilla **"Habilitar PayPal Reader para el pago en línea"** es solo para el proceso de pago de su tienda en línea — **no es necesaria para el POS**. La pasarela se habilita para el POS en un paso posterior.

3

#### Vincular el lector

1. Después de guardar, desplácese hasta la sección **Lectores vinculados** en la parte inferior de la pantalla de configuración (aparece una vez que se han guardado el Client ID y la Assertion)
2. En el dispositivo PayPal Reader, abra **Configuración → Vincular con un desarrollador** para que se muestre el código de vinculación
3. En **Vincular un nuevo lector**, introduzca el **Código de vinculación** y, opcionalmente, un **Nombre del lector** (por ejemplo, "Mostrador principal")
4. Haga clic en **Vincular lector**. El lector aparecerá en la lista de dispositivos vinculados y estará listo para aceptar pagos

Importante

Es necesario emparejar correctamente un lector antes de poder aceptar pagos. Utilice **Desemparejar** en la lista de dispositivos emparejados para eliminar un lector.

4

#### Activar en WCPOS

1. Ir a `WP Admin > POS > Ajustes > Finalizar compra`
2. Buscar la pasarela **PayPal Reader** en la lista
3. Activarla para su uso en el POS
4. Guardar los ajustes

## Realizar un pago[​](#taking-a-payment "Enlace directo a Realizar un pago")

1. **Agregar artículos** al carrito en el POS y proceder a la caja
2. **Seleccionar PayPal Reader** como método de pago
3. **Elegir un lector emparejado** e iniciar el pago. (Si no hay ninguno emparejado, se solicitará al administrador de la tienda que empareje uno en `WooCommerce → Settings → Payments → PayPal Reader`.)
4. El POS muestra el estado en tiempo real durante la conexión: *"Conectando con el lector…"*, *"Lector listo. Solicitando pago…"*, *"Pago en curso…"*
5. El cliente acerca o inserta su tarjeta en el lector
6. Si el pago es exitoso, el importe se verifica contra el total del pedido, se registra la referencia de la transacción y el pedido se realiza automáticamente
7. Es posible utilizar **Cancelar pago** en cualquier momento para cancelar la solicitud en el lector

## Pasar a producción[​](#going-live "Enlace directo a Pasar a producción")

Una vez verificado todo en modo de prueba:

1. Desactivar **Habilitar modo de prueba**
2. Reemplazar las credenciales de prueba de Zettle con el **Client ID** y **Assertion** de producción
3. Guardar — los endpoints y el flujo son idénticos; solo cambia la cuenta del comerciante

## Resumen de requisitos y limitaciones[​](#limitations "Enlace directo a Resumen de requisitos y limitaciones")

* **El pedido solo se completa tras un resultado confirmado del lector.** WCPOS no realizará el pedido a menos que el pago se reporte como completado.
* **Protección contra discrepancia de importes.** Si el importe reportado por el lector no coincide con el total del pedido, el pago se rechaza — por lo que se recomienda no modificar el total del carrito durante el proceso de pago.
* **Conectividad.** Los pagos en vivo dependen de que el navegador mantenga una sesión con la API Reader Connect de Zettle; se requiere una conexión a internet estable.

## Solución de problemas[​](#troubleshooting "Enlace directo a Solución de problemas")

La sección de lectores emparejados no se muestra

Primero guarde su **Zettle Client ID** y **Assertion**. El panel de emparejamiento solo aparece una vez que ambas credenciales se han guardado. De lo contrario, se mostrará *"Guarde su Zettle Client ID y Assertion arriba antes de emparejar un lector."*

El lector no se empareja

* En el lector, asegúrese de haber abierto **Settings → Link with a developer** para obtener un código de emparejamiento nuevo
* Introduzca el código exactamente como se muestra, antes de que expire
* Confirme que su Zettle Client ID y Assertion son correctos y están guardados
* Asegúrese de que el lector y la red tengan una conexión a internet estable

El pago se rechaza por una discrepancia en el monto

El plugin verifica el monto reportado por el lector contra el total del pedido y rechaza cualquier discrepancia. No modifique el carrito ni el total del pedido mientras un pago está en curso — cancele el pago, ajuste el carrito y luego inicie un nuevo pago.

No se procesan pagos reales / aparece una advertencia de administrador sobre un 'mock reader'

Se define una constante de desarrollo/CI (`PRWC_USE_MOCK_READER`) en `wp-config.php`. Es necesario eliminar esa constante antes de aceptar pagos reales: mientras esté configurada, no se procesará ningún pago real.

### Obtener ayuda[​](#getting-help "Enlace directo a Obtener ayuda")

* Los problemas con la pasarela de pago pueden reportarse en el [repositorio de GitHub](https://github.com/wcpos/paypal-reader-for-woocommerce)
* Para consultas sobre la cuenta, el hardware del lector y la disponibilidad regional, es posible contactar con el soporte de PayPal/Zettle
