1. Go to this page and download the library: Download hyprpay/payments 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/ */
hyprpay / payments example snippets
use Hyprpay\Payments\Domain\Command\ChargeRequest;
use Hyprpay\Payments\Domain\ValueObject\Money;
use Hyprpay\Payments\Domain\Enum\GatewayName;
use Hyprpay\Payments\Application\PaymentGatewayFactory;
final readonly class ChargeInvoice
{
// Type-hint the factory; Laravel resolves and injects it automatically.
public function __construct(private PaymentGatewayFactory $gateways) {}
public function handle(string $tokenFromWidget): void
{
// Credentials resolve from config by default; pass them explicitly to override.
$gateway = $this->gateways->make(GatewayName::CybersourceUnifiedCheckout);
$result = $gateway->charge(new ChargeRequest(
transientToken: $tokenFromWidget,
money: Money::minor(10000, 'EGP'), // 100.00 EGP, exact minor units
orderReference: 'ORDER-123', // also the idempotency key
));
if ($result->success) {
// $result->status, $result->transactionId, $result->raw
}
}
}
use Hyprpay\Payments\Domain\Contract\CredentialResolver;
use Hyprpay\Payments\Domain\Contract\HttpClient;
$this->app->bind(HttpClient::class, MyHttpClient::class);
$this->app->bind(CredentialResolver::class, MyCredentialResolver::class);