Pin is Australia’s first all-in-one payment API.
- PHP 5.3+ Library
- Curl Transport (via Buzz)
Download the project from GitHub. Once downloaded, you'll need to use Composer.
Make sure to include the class autoload file.
include 'vendor/autoload.php';
This example will charge $4.00 (API requires amount to be provided in cents) against a test credit card on the live API. To use the testing/sandbox API, see the example below.
This is an example using the Pin Payments Charges API:
<?php
// create our request handler
$service = new Pin\Handler(array('key' => 'secret_API_key'));
// build a new charge request
$request = new Pin\Charge\Create(array(
'amount' => 400,
'description' => 'test charge',
'email' => 'roland@pin.net.au',
'ip_address' => '203.192.1.172',
'card' => array(
'number' => '5520000000000000',
'expiry_month' => '05',
'expiry_year' => '2013',
'cvc' => '123',
'name' => 'Roland Robot',
'address_line1' => '42 Sevenoaks St',
'address_city' => 'Lathlain',
'address_postcode' => '6454',
'address_state' => 'WA',
'address_country' => 'AU'),
));
// send it
$response = $service->submit($request);
This is a simple example on how to process refunds.
This uses the Pin Payments Refund API:
$request = new Pin\Charge\Refund('charge_token_here', array('amount'=>'900'));
This example shows how to add an option so you use the test API (test-api.pin.net.au) instead of the live one.
<?php
$service = new Pin\Handler(array('key' => 'secret_API_key', 'test' => true));