Desarrolladores / Botón de Pago Yappy

SDK de Botón de Pago Yappy para PHP

Descripción

A continuación encontrarás toda la información que necesitas para poder integrar el Botón de Pago Yappy a tu plataforma en PHP.

Si después de consultar esta guía te queda alguna duda adicional o si requieres mayor soporte, comunícate con nosotros por correo electrónico a botondepagoyappy@bgeneral.com.

 

Requerimientos mínimos

PHP 7.0+
Una cuenta jurídica con Yappy
Un certificado SSL

Resumen de implementación

Esta es una guía de implementación básica del SDK de PHP. Usted puede tomar el SDK e instalarlo como mejor se adapte a la configuración de su aplicación, siguiendo los siguientes pasos:

1. Descargue el archivo

2. Instalación del SDK (back-end)

3. Configuración del SDK

4. Instalación de la librería del cliente (front-end)

5. Configuración de la librería del cliente

6. Conexión de prueba

7. Configuración de notificación instantánea de pago (opcional)

Guía de ejemplo

Antes de comenzar la instalación, asegúrese de contar con las credenciales de conexión proporcionadas en la Banca en Línea Comercial del negocio (el ID del comercio es un valor alfanúmerico de 32 caracteres). Si no cuenta con las credenciales, siga los paso de la Guía de activación del Botón de Pago Yappy.

1. Descargue del archivo

2. Instalación del SDK (back-end)

Copie los siguientes archivos y colóquelos en la configuración más apropiada de su servidor. Recomendamos que sea una carpeta de fácil acceso para su desarrollo, preferiblemente la carpeta madre (root):

Archivos back-end:
.env (variables de entorno del backend)
BgFirma.php (librería)
pagosbg.php (actualización de estado del pedido)

Archivos front-end:
env.js (variables de entorno del frontend)
bg-payment.js (archivo para inyectar el Botón de Pago)
main.css (estilos)

3. Configuración del SDK

A continuación se describirá el paso a paso del proceso de configuración. Como parte de esta guía, contamos con un archivo de ejemplo ejemplo.zip de referencia.

3.1) Primero, en el archivo .env se debe colocar las credenciales proporcionadas en Banca en Línea Comercial en las variables de ID_DEL_COMERCIO y CLAVE_SECRETA. Para conocer sobre la conexión de prueba (sandbox) ir al paso 6.

Copiar
Nota: Nota: En el archivo .env es dónde se encuentran sus credenciales de conexión. Por seguridad, este archivo debe tener permisos 644 ó 600.

3.2) Importe la librería y las variables de entorno en la página donde quiere utilizar el Botón de Pago Yappy.

Copiar

3.3) Obtenga el dominio de la aplicación. Es importante que este dominio sea igual al que definió en su perfil de Botón de Pago en Banca en Línea Comercial, ya que se utilizará para validar la solicitud.

Copiar
Nota: Si utiliza otra ruta del servidor, colóquela directamente en la variable $domain.

3.4) Después, verifique las credenciales ubicadas en el archivo .env.

Copiar

Valide que las credenciales proporcionadas son correctas. Al llamar el método checkCredentials, debe retornar una variable de tipo [‘success’ => boolean]. Si la variable $response[‘success’] es true, las credenciales son correctas. Si no, verifique las credenciales ingresadas.

Copiar

3.5) Cree el objeto al instanciar la clase BgFirma para generar el URL de éxito y llame al método createHash.

Nota: El URL de éxito es donde sus clientes serán redireccionados si la transacción es exitosa.
Copiar

A continuación se describen los campos para realizar la solicitud:

Nombre del campo Descripción
Subtotal (obligatorio) El subtotal de su carrito antes de impuestos, este monto ya debe incluir costos de transportes (shipping) y descuentos. Solo aplican números positivos mayores a cero.
Taxes (obligatorio) Valor de los impuestos. Aplican cero o números positivos.
Total (obligatorio) El monto total a cobrar al cliente. Debe ser la suma de impuestos más subtotal. Solo aplican números positivos.
Order ID (obligatorio) Es el número único de pedido generado por su aplicación, por ejemplo un número de pedido o de cliente. Este quedará registrado en el reporte transaccional Banca en Línea Comercial y lo podrá utilizar para conciliar los movimientos. Máximo 15 caracteres alfanuméricos (no se permiten ñ, Ñ o tildes).
Success URL (opcional) Es el URL donde su cliente será regresado o redireccionado en caso de que la transacción sea ejecutada correctamente. Por ejemplo, una página de gracias.
Fail URL (opcional)          Es el URL donde su cliente será regresado o redireccionado en caso de que el cliente cancele la transacción o suceda un error.
Teléfono (obligatorio)         Es el campo telefónico del cliente y es obligatorio. De no contar con
esa información, se le debe asignar un valor vacío y enviarlo igualmente.

3.6) Finalmente, verifique que se creó correctamente el URL de éxito.

Copiar

4. Instalación de la librería del cliente (front-end)

Para mostrar el Botón de Pago Yappy en su aplicación, coloque lo siguiente en su HTML:

Copiar

El formulario de id “YappyForm” presente en el archivo bg-payment.js, fue creado con motivos de prueba.

5. Configuración de la librería del cliente

Finalmente, configure el archivo de configuración env.js para personalizar su botón.

1. Color del botón: las opciones de color son ‘brand’, ‘dark’, ‘light’, ‘white’.

2. Donación: permite reemplazar el botón de pago por uno para donaciones.

3. Activar: la opción activar está por defecto, no es necesario colocarle el valor ‘true’, al colocar ‘false’ no se mostrará el botón.

Copiar

Personalización del Botón de Pago Yappy
Opcionalmente, puede seleccionar el color del botón que se ajuste mejor al estilo de su tienda. Recomendamos la opción predeterminada.

Brand (predeterminada)

Dark

Light

White

6. Conexión de prueba

El modo de pruebas permite simular transacciones utilizando números de teléfono de prueba para visualizar el flujo de compra sin realizar un pedido real. Debe tener en cuenta que:

– El modo de pruebas sólo funciona con los números de teléfono de pruebas (se detallan a continuación).
– Recuerde deshabilitar el modo de pruebas para aceptar transacciones reales.

Para activar el modo de pruebas, cambie la variable de MODO_DE_PRUEBAS a true en el archivo .env

Copiar

7. Configuración de notificación instantánea de pago (opcional)

El Botón de Pago Yappy le permite a su servidor recibir el estado de las transacciones. Esta comunicación permite cerrar el ciclo de su pedido y automatizar los procesos de venta.

El archivo pagosbg.php se utiliza para actualizar el estado del pedido en su aplicación. El Banco le enviará un mensaje de confirmación a su servidor (por ejemplo: https://mitienda.com/pagosbg.php) de manera asíncrona al flujo de la transacción.

El estado del pedido se puede encontrar en $_GET[‘status’]. Este query param puede devolver uno de los siguientes estados:

– «E» para Ejecutado. El cliente confirmó el pago y se completó la compra.
– «R» para Rechazado. Cuando el cliente no confirma el pago dentro de los cinco minutos que dura la vida del pedido.
– «C» para Cancelado. El cliente inició el proceso, pero canceló el pedido en el app de Banco General.

Copiar

Si la variable success = true, significa que la transacción fue exitosa y puede continuar con su proceso de negocio.

Nota: El Banco también le notificará el estado exitoso de un pedido por medio de una confirmación enviada por correo electrónico.

Preguntas frecuentes

1. Como comercio, ¿recibiré alguna notificación de las compras realizadas por Yappy?

Sí. Cada vez que se realice una compra por Yappy, recibirá un correo de confirmación con el número de pedido, el monto, la hora de la transacción, el número de confirmación de la transacción y el nombre del cliente. Como método opcional, el comercio puede recibir una notificación instantánea de pago (ir al paso 7).

2. ¿Dónde puedo conseguir mis credenciales para el Botón de Pago Yappy?

Sus credenciales las puede conseguir en Banca en Línea Comercial. Siga este enlace para verificar los pasos de generación de credenciales.

3. Veo un mensaje que dice “Algo salió mal, contacta al administrador.” ¿Qué debo hacer?

– Asegúrese de que su sitio web cumple con los requerimientos mínimos.
– Revise que cuenta con la versión más reciente del plugin.
– Confirme que sus credenciales son correctas y que fueron colocadas en los campos correspondientes.
– Confirmar que el URL de su tienda está registrado correctamente en su tienda en el perfil de su Botón de Pago Yappy en Banca en Línea Comercial.

4. ¿Dónde puedo ver reportes de ventas de mi Botón de Pago Yappy?

Las ventas del Botón de Pago se verán reflejadas en su Banca en Línea Comercial. Acceda a las mismas desde Reportes > Reportes Yappy.

Resolución de problemas

¿Tiene algún problema? Siga estos pasos para asegurar la correcta configuración de la extensión:

– Asegúrese que su sitio cumple con los requerimientos mínimos.
– Revise que cuenta con la versión más reciente de la librería.
– Revise las preguntas frecuentes por si su pregunta se ve reflejada en las mismas.
– Confirme que sus credenciales son correctas y que fueron colocadas en los campos correspondientes.
– Confirme que no está habilitado el modo de pruebas (sandbox).
– Revise que el dominio de su tienda (URL) sea igual al que definió en su perfil de Botón de Pago en Banca en Línea Comercial, ya que se utilizará para validar la solicitud.

¿Tiene alguna pregunta?

Consulte nuestra sección de Preguntas Frecuentes o de Resolución de problemas para resolver los inconvenientes más comunes. Si requiere mayor soporte, comuníquese con nosotros por correo electrónico a botondepagoyappy@bgeneral.com.