1. Go to this page and download the library: Download zgabievi/laravel-ipay library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$response = IPay::token();
}
}
use Zorb\IPay\Facades\IPay;
use Zorb\IPay\Enums\Intent;
class PaymentController
{
public function __invoke()
{
$order_id = 1;
$units = [
IPay::purchaseUnit(10), // read more about purchaseUnit bellow
];
$items = [
IPay::purchaseItem(1, 10, 1, 'Item #1'), // read more about purchaseItem bellow
IPay::purchaseItem(2, 10, 1, 'Item #2'), // read more about purchaseItem bellow
];
// string $intent - 'CAPTURE', 'AUTHORIZE', 'LOAN'
// int $order_id - Your order id
// array $units - Purchase units
// array $items = [] - (optional) Purchase items
// string $token = null - (optional) JWT Token
// string $capture_method = 'AUTOMATIC' - (optional) 'AUTOMATIC', 'MANUAL'
// string $transaction_id = '' - (optional) Transaction id for recurring
$response = IPay::checkout(Intent::Capture, $order_id, $units, $items);
}
}
use Zorb\IPay\Facades\IPay;
use Zorb\IPay\Enums\Intent;
use Zorb\IPay\Enums\CaptureMethod;
class PaymentController
{
public function __invoke()
{
$order_id = 1;
$response = IPay::setIntent(Intent::Capture)
->setShopOrder($order_id)
->setPurchaseUnits([ IPay::purchaseUnit(10) ])
->setItems([
IPay::purchaseItem(1, 10, 1, 'Item #1'),
IPay::purchaseItem(2, 10, 1, 'Item #2'),
])
->setToken('IPAY_JWT_TOKEN')
->setCaptureMethod(CaptureMethod::Manual)
->setTransaction('IPAY_TRANSACTION_ID')
->checkout();
}
}
use Zorb\IPay\Facades\IPay;
use Zorb\IPay\Enums\Intent;
use Zorb\IPay\Enums\CheckoutStatus;
class PaymentController
{
public function __invoke()
{
$order_id = 1;
$units = [
IPay::purchaseUnit(10), // read more about purchaseUnit bellow
];
$items = [
IPay::purchaseItem(1, 10, 1, 'Item #1'), // read more about purchaseItem bellow
IPay::purchaseItem(2, 10, 1, 'Item #2'), // read more about purchaseItem bellow
];
$response = IPay::checkout(Intent::Capture, $order_id, $units, $items);
if (isset($response->status) && $response->status === CheckoutStatus::Created) {
return IPay::redirect($response);
// IPay::redirectUrl($response); - will be used in some cases, like InertiaJS
}
}
}
use Zorb\IPay\Facades\IPay;
use Zorb\IPay\Enums\Intent;
use Zorb\IPay\Enums\CaptureMethod;
use Zorb\IPay\Enums\CheckoutStatus;
class PaymentController
{
public function __invoke()
{
$order_id = 1;
$response = IPay::setIntent(Intent::Capture)
->setShopOrder($order_id)
->setPurchaseUnits([ IPay::purchaseUnit(10) ])
->setItems([
IPay::purchaseItem(1, 10, 1, 'Item #1'),
IPay::purchaseItem(2, 10, 1, 'Item #2'),
])
->setToken('IPAY_JWT_TOKEN')
->setCaptureMethod(CaptureMethod::Manual)
->setTransaction('IPAY_TRANSACTION_ID')
->checkout();
if (isset($response->status) && $response->status === CheckoutStatus::Created) {
return IPay::setResponse($response)->redirect();
// IPay::setResponse($response)->redirectUrl();
}
}
}
use Zorb\IPay\Facades\IPay;
use Zorb\IPay\Enums\Intent;
use Zorb\IPay\Enums\CheckoutStatus;
class PaymentController
{
public function __invoke(string $trx_id)
{
$order_id = 1;
$transaction_id = '899318B1CE0D5885CB7'; // Transaction id was provided in you callback url
$units = [
IPay::purchaseUnit(10), // read more about purchaseUnit bellow
];
$items = [
IPay::purchaseItem(1, 10, 1, 'Item #1'), // read more about purchaseItem bellow
IPay::purchaseItem(2, 10, 1, 'Item #2'), // read more about purchaseItem bellow
];
$response = IPay::repeat($transaction_id, Intent::Capture, $order_id, $units, $items);
if (isset($response->status) && $response->status === CheckoutStatus::Created) {
return IPay::redirect($response);
}
}
}
use Zorb\IPay\Facades\IPay;
use Zorb\IPay\Enums\Intent;
use Zorb\IPay\Enums\CheckoutStatus;
class PaymentController
{
public function __invoke()
{
$order_id = 1;
$transaction_id = '899318B1CE0D5885CB7';
$response = IPay::setIntent(Intent::Capture)
->setShopOrder($order_id)
->setPurchaseUnits([ IPay::purchaseUnit(10) ])
->setItems([
IPay::purchaseItem(1, 10, 1, 'Item #1'),
IPay::purchaseItem(2, 10, 1, 'Item #2'),
])
->setTransaction($transaction_id)
->repeat();
if (isset($response->status) && $response->status === CheckoutStatus::Created) {
return IPay::setResponse($response)->redirect();
}
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
// string $order_id - Order id provided by checkout process
// int $amount - Amount you want to refund (in cents)
// string $token = null - (optional) JWT Token
$response = IPay::refund($order_id, 10);
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
$response = IPay::setOrder($order_id)
->setAmount(10)
->refund();
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
// string $order_id - Order id provided by checkout process
// string $token = null - (optional) JWT Token
$response = IPay::orderDetails($order_id);
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
$response = IPay::setOrder($order_id)
->orderDetails();
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
// string $order_id - Order id provided by checkout process
// string $token = null - (optional) JWT Token
$response = IPay::orderStatus($order_id);
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
$response = IPay::setOrder($order_id)
->orderStatus();
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
// string $order_id - Order id provided by checkout process
// string $token = null - (optional) JWT Token
$response = IPay::paymentDetails($order_id);
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
$response = IPay::setOrder($order_id)
->paymentDetails();
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
// string $order_id - Order id provided by checkout process
// string $token = null - (optional) JWT Token
$response = IPay::completePreAuth($order_id);
}
}
use Zorb\IPay\Facades\IPay;
class PaymentController
{
public function __invoke()
{
$order_id = '899318b1ce0d5885cb7405fe86e3930178ff90be';
$response = IPay::setOrder($order_id)
->completePreAuth();
}
}