pagodigital / php-library
Librería de pago digital para php
Installs: 15
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 1
pkg:composer/pagodigital/php-library
Requires
- blocktrail/cryptojs-aes-php: ^0.1.0
- guzzlehttp/guzzle: 7.5.x-dev
README
PagoDigital es la mejor solución para todos los comercios de implementar todos los medios de pagos.
Instalación
Para instalar la librería de PagoDigital se puede hacer con composer:
composer require pagodigital/php-library
Para evitar conflictos, en el archivo composer.json, establece:
"minimum-stability": "dev"
Como usar
Para comenzar a utilizar es necesario estar registrado en PagoDigital y tener uno o mas comercios habilitados y verificados.
Primeramente se debe importar y crear una instancia de PagoDigital
use PagoDigital\PagoDigital; ... $pagoDigital = new PagoDigital( $commerceId = 120, $token = "791a736e949d4ec57af5684679bea5d5a9f485c5" );
Luego de instanciar PagoDigital vas a poder utilizar todas las funciones dentro de la librería
| Parámetro | Tipo | Descripción |
|---|---|---|
| commerceId | number | ID del comercio que va a utilizar la librería |
| token | string | Token público del comercio que utiliza la librería |
Realizar un pago con plataforma especifica
Vas a poder realizar un pago a través de todas nuestras plataformas registradas.
use PagoDigital\PagoDigital; ... $pagoDigital = new PagoDigital( $commerceId = 120, $token = "791a736e949d4ec57af5684679bea5d5a9f485c5" ); $paymentResponse = $pagoDigital->payment->paymentWithPlatform( $amount = 12500, $description = "Pago de prueba con la librería", $email = "example@gmail.com", $payerIdentification = "485987", $payerName = "Andrés López", $phone = "0984856321", $platform = "tigo", $reference = "pago-22", $location = "-27.55486, -2744157" )
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| amount | number | Monto que se va a cobrar |
| description | string | Descripción del pago |
| string | Correo de la persona que esta pagando | |
| payerIdentification | string | Identificación del usuario que está pagando (C.I) |
| payerName | string | Nombre del usuario que esta pagando |
| phone | string | Teléfono del usuario que está pagando |
| platform | string | Plataforma con la que se va a pagar |
| reference | string | Referencia de pago, generalmente es el ID del pago del comercio |
| location | string | Coordenadas indicando desde donde se realizó el pago (opcional) |
El parámetro platform es un enum que solo admite los siguientes datos:
| Plataforma | Valor |
|---|---|
| Tigo | "tigo" |
| Personal | "personal" |
| Wally | "wally" |
| Bancard | "bancard" |
| Zimple | "zimple" |
| InfoNET | "infonet" |
| Aqui Pago | "aqui pago" |
| Pago Express | "pago express" |
| PayPal | "paypal" |
| Wepa | "wepa" |
| Bancard QR | "bancard qr" |
| Stripe | "stripe" |
En caso contrario de no enviar uno de esos párametros en el platform, va a devolver error.
Respuesta
| Parámetro | Tipo | Descripción |
|---|---|---|
| redirectUrl | string | Url de redireccionamiento a donde se va a redirigir al cliente para proceder al pago |
| transactionId | string | ID de la transacción generado por PagoDigital |
Realizar pago por link
Este proceso es similar al anterior, solo que en vez de generar para una plataforma especifica, puedes redirigir directamente a todas nuestras plataformas dentro de una página especial de PagoDigital y dejar que nosostros nos encarguemos del resto.
use PagoDigital\PagoDigital; ... $pagoDigital = new PagoDigital( $commerceId = 120, $token = "791a736e949d4ec57af5684679bea5d5a9f485c5" ); $paymentResponse = $pagoDigital->payment->paymentWithLink( $amount = 12500, $description = "Pago de prueba con la librería", $reference = "pago-22", $currency = "PYG", $subscriptionInterval = "monthly", )
Parámetros
| Párametro | Tipo | Descripción |
|---|---|---|
| amount | number | Monto que se va a cobrar |
| description | string | Descripción del pago |
| reference | string | Referencia de pago, generalmente es el ID del pago del comercio |
| currency | string | Moneda en la que se va a realizar el pago (USD o PYG)(Opcional: Por defecto está en PYG) |
| subscriptionInterval | string | Intervalo de suscripción, enviar solamente cuando quieras dar la opción de suscribirse a un pago |
| productId | string | ID del producto de la suscripción, enviar solamente cuando quieras dar la opción de suscripción |
Respuesta
| Parámetro | Tipo | Descripción |
|---|---|---|
| redirectUrl | string | Url de redireccionamiento a donde se va a redirigir al cliente para proceder al pago |
| transactionId | string | ID de la transacción generado por PagoDigital |
Respuesta
La respuesta del pago será enviada a la URL de callback especificada en el panel de PagoDigital en el apartado de editar comercio -> desarrollo.
La respuesta será enviada en formato JSON y contiene los siguientes elementos:
| key | tipo | descripción |
|---|---|---|
| token | string | Token generado por seguridad, es recomendable utilizarlo para validar los pagos. Se conforma de la siguiente manera: SHA256(merchant_transaction_id + amount + private_token) |
| merchant_transaction_id | string | Identificador de la transacción dentro de PAgoDigital |
| commerce_transaction_id | string | Identificador o referencia de la transacción creada por el comercio |
| payer_email | string | Correo electrónico de la persona que esta pagando |
| payer_identification | string | identificación de la paersona que esta pagando |
| payer_name | string | Nombre de la persona que esta pagando |
| phone | string | Número telefónico de la persona que esta pagando |
| platform | string | Plataforma con la que se esta pagando |
| amount | number | Monto de la transacción |
| fee | number | Comisión de la transacción por PagoDigital |
| accredited | number | Monto que se le acreditó al comercio descontando la comisión |
| description | string | Descripción del pago |
| status | string | Estado del pago (APPROVED, REFUSED, PENDING) |