Recommend this page to a friend! |
Download |
Info | Documentation | Files | Install with Composer | Download | Reputation | Support forum | Blog | Links |
Ratings | Unique User Downloads | Download Rankings | ||||
Not enough user ratings | Total: 124 | All time: 9,456 This week: 524 |
Version | License | PHP version | Categories | |||
php-instapago 3.0.8 | MIT/X Consortium ... | 5.6 | PHP 5, E-Commerce, Web services |
Description | Author | ||||||||
This class can process payments with the Instapago API. |
|
<p align="center"> Documentación de la librería <b>Instapago</b> </p>
* keyId = 74D4A278-C3F8-4D7A-9894-FA0571D7E023
* publicKeyId = e9a5893e047b645fed12c82db877e05a
> Importante: Debes solicitar las llaves públicas y privadas (publicKeyId
y keyId
) a Instapago. Aquí puedes encontrar mayor información.
De ahora en más usaremos $paymentData
para referirnos a el arreglo con los parámetros antes mencionados.
$paymentData = [
'amount' => '200',
'description' => 'test',
'card_holder' => 'jon doe',
'card_holder_id' => '11111111',
'card_number' => '4111111111111111',
'cvc' => '123',
'expiration' => '12/2020',
'ip' => '127.0.0.1',
];
Todos los métodos del api devuelven un arreglo asociativo con el siguiente esquema:
La excepción base de la librería es \Instapago\Exceptions\InstapagoException
y reporta errores generales con instapago, y de ella se derivan 5 excepciones de la siguiente manera.
Para todas las transacciones realizadas bajo el API de Instapago, los códigos HTTP de respuestas corresponden a los siguientes estados:
> Importante: Si recibe un código de respuesta diferente a los antes descritos deben ser tomados como errores de protocolo HTTP.
Para realizar las pruebas, se provee de los siguientes datos para comprobar la integracio?n:
Pueden indicar cualquier valor para Ce?dula o RIF, Fecha de Vencimiento y CVC:
$api = new \Instapago\Api('<keyId>','<publicKeyId>');
Efectúa un pago directo con tarjeta de crédito, los pagos directos son inmediatamente debitados del cliente y entran en el proceso bancario necesario para acreditar al beneficiario.
try{
$api = new Api('<keyId>','<publicKeyId>');
$respuesta = $api->directPayment($paymentData);
// hacer algo con $respuesta
}catch(\Instapago\Exceptions\InstapagoException $e){
echo "Ocurrió un problema procesando el pago.";
// manejar el error
}
Efectúa una reserva o retención de pago en la tarjeta de crédito del cliente, la reserva diferirá los fondos por un tiempo (3 días máximo segun fuentes extraoficiales), en el plazo en el que los fondos se encuentren diferidos, ni el beneficiario ni el cliente poseen el dinero. El dinero será tramitado al beneficiario una vez completado el pago, o de lo contrario será acreditado al cliente de vuelta si no se completa durante el plazo o si se cancela el pago.
try{
$api = new Api('<keyId>','<publicKeyId>');
$respuesta = $api->reservePayment($paymentData);
// hacer algo con $respuesta
}catch(\Instapago\Exceptions\InstapagoException $e){
echo "Ocurrió un problema procesando el pago.";
// manejar el error
}
Éste método permite cobrar fondos previamente retenidos.
try{
$api = new Api('<keyId>','<publicKeyId>');
$respuesta = $api-continuePayment([
'id' => 'af614bca-0e2b-4232-bc8c-dbedbdf73b48',
'amount' => '200.00'
]);
}catch(\Instapago\Exceptions\InstapagoException $e){
// manejar errores
}
Consulta información sobre un pago previamente generado.
try{
$api = new Api('<keyId>','<publicKeyId>');
$idPago = 'af614bca-0e2b-4232-bc8c-dbedbdf73b48';
$respuesta = $api->query($idPago);
}catch(\Instapago\Exceptions\InstapagoException $e){
// manejar errores
}
Devuelve la misma respuesta que los métodos de crear pagos.
Este método permite cancelar un pago, haya sido directo o retenido.
try{
$api = new Api('<keyId>','<publicKeyId>');
$idPago = 'af614bca-0e2b-4232-bc8c-dbedbdf73b48';
$info = $api->cancel($idPago);
}catch(\Instapago\Exceptions\InstapagoException $e){
// manejar errores
}
Devuelve la misma respuesta que los métodos de crear pagos.
<p align="center"> <img src="help/hYNsH6B.png">
</p> <p align="center">
Librería Instapago para PHP
</p> <p align="center">
<sup style="color: #d0d0d0;"><b>NOTA</b> Los logos son propiedad de Instapago y Banesco, respectivamente.</sup>
</p>
Primero, composer
Luego:
$ composer require instapago/instapago
$ composer dumpautoload -o // opcional
>NOTA: Tomar en cuenta que esta nueva versión fue probada usando php8.X, no aseguro que funcione en algo menor a eso, en teoría debería pero no estoy seguro.
<?php
require 'vendor/autoload.php';
use \Instapago\Instapago\Api;
use \Instapago\Instapago\Exceptions\{
InstapagoException,
AuthException,
BankRejectException,
InvalidInputException,
TimeoutException,
ValidationException,
GenericException,
};
$paymentData = [
'amount' => '200',
'description' => 'test',
'card_holder' => 'jon doe',
'card_holder_id' => '11111111',
'card_number' => '4111111111111111',
'cvc' => '123',
'expiration' => '12/2020',
'ip' => '127.0.0.1',
];
try{
$api = new Api('<keyId>','<publicKeyId>');
$respuesta = $api->directPayment($paymentData);
// hacer algo con $respuesta
}catch(InstapagoException $e){
echo $e->getMessage(); // manejar el error
}catch(AuthException $e){
echo $e->getMessage(); // manejar el error
}catch(BankRejectException $e){
echo $e->getMessage(); // manejar el error
}catch(InvalidInputException $e){
echo $e->getMessage(); // manejar el error
}catch(TimeoutException $e){
echo $e->getMessage(); // manejar el error
}catch(ValidationException $e){
echo $e->getMessage(); // manejar el error
}catch(GenericException $e){
echo $e->getMessage(); // manejar el error
}
Podemos revisar rápidamente si todo funciona correctamente escribiendo:
$ php -S localhost:8000
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.
Files (28) |
File | Role | Description | ||
---|---|---|---|---|
.github (2 files, 2 directories) | ||||
help (2 files) | ||||
src (2 files, 1 directory) | ||||
tests (2 files) | ||||
.editorconfig | Data | Auxiliary data | ||
.php-cs-fixer.dist.php | Example | Example script | ||
CHANGELOG.md | Data | Auxiliary data | ||
composer.json | Data | Auxiliary data | ||
LICENSE.md | Lic. | License text | ||
README.md | Doc. | Example script |
Files (28) | / | .github |
File | Role | Description | ||
---|---|---|---|---|
ISSUE_TEMPLATE (2 files) | ||||
workflows (5 files) | ||||
dependabot.yml | Data | Auxiliary data | ||
FUNDING.yml | Data | Auxiliary data |
Files (28) | / | .github | / | ISSUE_TEMPLATE |
File | Role | Description |
---|---|---|
bug.yml | Data | Auxiliary data |
config.yml | Data | Auxiliary data |
Files (28) | / | .github | / | workflows |
File | Role | Description |
---|---|---|
dependabot-auto-merge.yml | Data | Auxiliary data |
fix-php-code-style-issues-cs-fixer.yml | Data | Auxiliary data |
fix-php-code-style-issues-pint.yml | Data | Auxiliary data |
run-tests-pest.yml | Data | Auxiliary data |
update-changelog.yml | Data | Auxiliary data |
Files (28) | / | help |
File | Role | Description |
---|---|---|
DOCUMENTACION.md | Doc. | Documentation |
hYNsH6B.png | Icon | Icon image |
Files (28) | / | src |
File | Role | Description | ||
---|---|---|---|---|
Exceptions (7 files) | ||||
Api.php | Class | Class source | ||
Validator.php | Class | Class source |
Files (28) | / | src | / | Exceptions |
File | Role | Description |
---|---|---|
AuthException.php | Class | Class source |
BankRejectException.php | Class | Class source |
GenericException.php | Class | Class source |
InstapagoException.php | Class | Class source |
InvalidInputException.php | Class | Class source |
TimeoutException.php | Class | Class source |
ValidationException.php | Class | Class source |
Files (28) | / | tests |
File | Role | Description |
---|---|---|
ApiInstapagoTest.php | Class | Class source |
Pest.php | Aux. | Auxiliary script |
The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page. |
Install with Composer |
Version Control | Unique User Downloads | Download Rankings | |||||||||||||||
100% |
|
|
Applications that use this package |
If you know an application of this package, send a message to the author to add a link here.