Una clase para simplificar las operaciones de pago y confirmar el pago del servicio de pasarela de pago ZarrinPal ( به فارسی بخوانید )
composer require mhmmdq/ zarinpal
Agregue fácilmente una clase a su proyecto usando el comando anterior
Primero, llame al cargador automático del compositor y llame a la clase.
<?php
include ' vendor/autoload.php ' ;
use Mhmmdq zarinpal zarinpal ;
Construya un objeto e ingrese los valores requeridos
$merchant
Recibirás un código de zarinpal
$amount
Monto a pagar
$callback_url
El lugar al que regresar después de la operación
$description
Descripción del pago
$metadata
Obtenga una presentación de todo lo que necesita después de un pago exitoso
<?php
include ' vendor/autoload.php ' ;
use Mhmmdq zarinpal zarinpal ;
$ merchant = ' xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ' ;
$ amount = 200000 ;
$ callback_url = ' https://zarinpal.mhmmdq.ir/verify.php ' ;
$ description = ' توضیحات پرداخت ' ;
$ metadata = [ ' name ' => ' mhmmdq ' ];
$ zarinpal = new zarinpal ( $ merchant , $ amount , $ callback_url , $ description , $ metadata );
Y al finalizar la transferencia a la pasarela de pago con método PayMentPortal()
$ zarinpal = new zarinpal ( $ merchant , $ amount , $ callback_url , $ description , $ metadata );
$ zarinpal -> PayMentPortal ();
Si no desea que la clase realice la transferencia automáticamente, haga lo siguiente
$ zarinpal = new zarinpal ( $ merchant , $ amount , $ callback_url , $ description , $ metadata );
$ zarinpal -> PayMentPortal ( false );
Para confirmar el pago solo haz lo siguiente y luego tendrás una presentación del resultado
<?php
include ' vendor/autoload.php ' ;
use Mhmmdq zarinpal zarinpal ;
$ zarinpal = new zarinpal ( ' xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ' , 200000 );
var_dump ( $ zarinpal -> PayMentVerify ());
Si el pago se realiza correctamente, se devolverá una clave en la matriz como status
con el valor de success
Recibirá todos los errores antes y después de la operación de pago como una matriz y el nombre de la clave será errors
Pronto daré un ejemplo completo.