quickpay-php-client
is a official client for QuickPay API. The QuickPay API enables you to accept payments in a secure and reliable manner. This package currently support QuickPay v10
api.
Upload /QuickPay/
to your web space.
Before doing anything you should register yourself with QuickPay and get access credentials. If you haven't please click here to apply.
First you should create a client instance that is anonymous or authorized with api_key
or login credentials provided by QuickPay.
To initialise an anonymous client:
<?php
namespace QuickPay;
require_once( 'QuickPay.php' );
try {
$client = new QuickPay();
}
catch(Exception $e) {
//...
}
?>
To initialise a client with QuickPay Api Key:
<?php
namespace QuickPay;
require_once( 'QuickPay.php' );
try {
$api_key = 'xxx';
$client = new QuickPay(":{$api_key}");
}
catch(Exception $e) {
//...
}
?>
Or you can provide login credentials like:
<?php
namespace QuickPay;
require_once( 'QuickPay.php' );
try {
$qp_username = 'xxx';
$qp_password = 'xxx';
$client = new QuickPay("{$qp_username}:{$qp_password}");
}
catch(Exception $e) {
//...
}
?>
You can afterwards call any method described in QuickPay api with corresponding http method and endpoint. These methods are supported currently: get
, post
, put
, patch
and delete
.
// Get all payments
$payments = $client->request->get('/payments');
// Get specific payment
$payments = $client->request->get('/payments/{id}');
// Create payment
$form = array(
'order_id' => $order_id,
'currency' => $currency,
...
);
$payments = $client->request->post('/payments', $form);
Getting the HTTP status code
:
$response = $client->request->get('/payments');
$status = $response->http_status();
if( $status == 200 ) {
// Successful request
}
The returned response object supports 3 different ways of returning the response body, as_raw()
, as_object
, as_array()
.
// Get the HTTP status code, headers and raw response body.
list($status_code, $headers, $response_body) = $client->request->get('/payments')->as_raw();
// Get the response body as an object
$response_body = $client->request->get('/payments')->as_object();
// Get the response body as an array
$response_body = $client->request->get('/payments')->as_array();
// Example usage
$payments = $client->request->get('/payments')->as_array();
foreach( $payments as $payment ) {
//...
}
You can read more about api responses at http://tech.quickpay.net/api/.
Use composer to create an autoloader:
$ composer update
$ phpunit --bootstrap vendor/autoload.php