piatkowski/przelewy24-php

Simple class to use P24 REST API

0.0.1 2023-01-19 10:34 UTC

This package is auto-updated.

Last update: 2024-04-19 13:00:59 UTC


README

Simple PHP class to implement Przelewy24 payments using new REST API.

Prerequisities

  • PHP >= 7.4
  • cURL extension
  • no other dependencies...

Installation

composer require piatkowski/przelewy24-php

Example of usage

Create new instance of the P24 Client with authorization data

$client = new \Przelewy24\Przelewy24( [
	'merchantId' => '...',
	'posId'      => '...',
	'crc'        => '...',
	'reportKey'  => '...', // API KEY
	'sandbox'    => true,
] );

Register new transaction. This is minimum required options. You can use pass more parameters (from P24 Docs)

$transaction = $client->transaction( [
	'sessionId'   => '...',
	'amount'      => '...',
	'currency'    => 'PLN',
	'description' => '...',
	'email'       => '...',
	'urlReturn'   => '...',
	'urlStatus'   => '...'
] );

Get Payment URL

$transaction->getRedirectUrl();

Create endpoint to receive notification from P24 API

// get incoming data from php://input
$notification = $client->receiveNotification();

or

// create Notification object from raw data
$notification = $client->createNotification([
    'sessionId'     => '...',
    'amount'        => '...',
    'orderId'       => '...',
    'currency'      => '...', // optional, default: PLN
]);

You can now verify transaction passing Notification object and get API response data

$response   = $client->verify( $notification );
$status     = $response->getStatus();   //HTTP Status Code
$data       = $response->getData();     //Response data object