Skip to content
Ejemplo de uso de Onepay con el SDK de Transbank para PHP
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
bootstrap
config
database Working example project made with Laravel 5.6 Jul 27, 2018
doc
public
resources
routes
storage
tests
.editorconfig
.env Improve README, add secrets to .env Oct 18, 2018
.gitattributes
.gitignore
Dockerfile
LICENSE Create LICENSE Aug 7, 2018
README.md
artisan
composer-install.sh
composer.json Update sdk php to 1.5.0 Dec 20, 2018
composer.lock
docker-compose.yml
package.json
phpunit.xml
run.sh Make the project use new SDK interface Jul 31, 2018
server.php
webpack.mix.js
yarn.lock Working example project made with Laravel 5.6 Jul 27, 2018

README.md

Proyecto de ejemplo para uso de Onepay con el SDK de Transbank para PHP

El siguiente proyecto es un simple ecommerce el cual utiliza Onepay a través del SDK de Transbank para PHP, mostrando ejemplos de como crear una transacción (Transaction::create), como confirmarla (Transaction::commit) y como anularla (Refund::create)

Requerimientos

Para ejecutar el proyecto es necesario tener: docker y docker-compose (como instalar Docker)

Ejecutar ejemplo

Con el código fuente del proyecto en tu computador, puedes ejecutar en la raíz del proyecto el comando para construir el contenedor docker, si es la primera vez que ejecutas el proyecto:

docker-compose build

Luego, es necesario instalar las dependencias:

docker-compose run web composer install

Finalmente, para correr el proyecto de ejemplo:

docker-compose run --service-ports web php artisan serve --host=0.0.0.0 --port=8000

También puedes iniciar el proyecto simplemente ejecutando el archivo run.sh en la raíz del proyecto

En ambos casos el proyecto se ejecutará en http://localhost:8000 (y fallará en caso de que el puerto 8000 no esté disponible)

Es posible ver las operaciones del SDK implementadas en la clase TransactionController, la cual esta en Transaction.php

Asimismo, es posible ver la utilización del SDK de JavaScript en el archivo use-onepay.js

El proyecto incluye, en su raíz, un archivo .env con valores para ONEPAY_SHARED_SECRET y ONEPAY_API_KEY, los cuales son útiles para poder hacer pruebas.

Este proyecto está hecho en PHP 7.2 utilizando Laravel 5.6

Compra de prueba

  1. Desde la tienda de ejemplo.
  2. Clic en el botón Pagar con Onepay
  3. Esperar a que se genere un nuevo código QR.
  4. Utilizando un lector de QR puedes identificar el OTT (identificador simplificado y único de la transacción) que se utiliza en el simulador de pago.
  5. Pagar/Rechazar utilizando el simulador de pagos

Simulador de pagos.

Este simulador permite realizar pruebas de pagos y rechazos con distintos códigos, simulando las acciones del usuario en la aplicación de Onepay.

Este simulador apunta al ambiente de Prueba que puede ser configurado siguiendo las instrucciones provistas en tu SDK/Plugin

  1. La URL es: https://onepay.ionix.cl/mobile-payment-emulator/

Simulador de Pagos

  1. Una vez te registres como comercio con Transbank, tendrás tus propios datos de prueba, sin embargo, si quieres comenzar a probar antes, puedes usar el email test@onepay.cl

  2. En el código de compra, debes introducir el número de OTT (el cual es un número único por transacción y se genera al momento de crear una nueva transacción)

  3. Al momento de presionar el botón Iniciar Pago veras que el QR de tu comercio reacciona y queda esperando la respuesta del pago.

Respuestas disponibles

  1. En este punto, puedes seleccionar alguna de las opciones disponibles, para cambiar el estado de la transacción en Transbank.

    • PRE_AUTHORIZED: Pago normal, sin cuotas.
    • PRE_AUTHORIZED 3 Cuotas: Pago en 3 Cuotas.
    • CANCELED_BY_USER: Transacción cancelada por el usuario.
    • REJECTED: Transacción rechazada.
    • REVERSED: Transacción reversada.
    • REVERSE_NOT_COMPLETE: Reversa de transacción incompleta.
    • REVERSE_FAILED: Reversa de transacción con error.
  2. Las respuestas PRE_AUTHORIZED y PRE_AUTHORIZED 3 Cuotas terminaran el flujo simulando un pago exitoso por parte del usuario.

  3. Al terminar el pago exitosamente, serás redirigido en tu aplicación al detalle de la compra realizada.

Desarrollo

Actualizar sdk js

Editar el archivo transbank-sdk-php-onepay-example/resources/views/index.blade.php y cambiar la versión de merchant.onepay.min.js

You can’t perform that action at this time.