Skip to content

eWAYPayment/eway-rapid-php

Repository files navigation

eWAY Rapid PHP Library

Latest Version on Packagist Software License Build Status

A PHP library to integrate with eWAY's Rapid Payment API.

Sign up with eWAY at:

For testing, get a free eWAY Partner account: https://www.eway.com.au/developers

Install

This library requires PHP version 5.4.0 or greater, with the curl, json and openssl extensions.

Using Composer

The eWAY PHP SDK can be install via Composer - this is the recommended method

$ composer require eway/eway-rapid-php

Then use Composer's autoload to include the library:

require_once 'vendor/autoload.php';

Manual

The eWAY PHP SDK can also be downloaded and added without Composer:

  1. Download the latest zip (or git clone this repository)
  2. Unzip the zip into your project - for example into a lib directory
  3. Include the eWAY SDK:
require_once 'lib/eway-rapid-php-master/include_eway.php';

Usage

See the eWAY Rapid API Reference for usage details.

A simple Direct payment:

require('vendor/autoload.php');

$apiKey = 'YOUR-API-KEY';
$apiPassword = 'YOUR-API-PASSWORD';
$apiEndpoint = \Eway\Rapid\Client::MODE_SANDBOX;
$client = \Eway\Rapid::createClient($apiKey, $apiPassword, $apiEndpoint);

$transaction = [
    'Customer' => [
        'CardDetails' => [
            'Name' => 'John Smith',
            'Number' => '4444333322221111',
            'ExpiryMonth' => '12',
            'ExpiryYear' => '25',
            'CVN' => '123',
        ]
    ],
    'Payment' => [
        'TotalAmount' => 1000,
    ],
    'TransactionType' => \Eway\Rapid\Enum\TransactionType::PURCHASE,
];

$response = $client->createTransaction(\Eway\Rapid\Enum\ApiMethod::DIRECT, $transaction);
if ($response->TransactionStatus) {
    echo 'Payment successful! ID: '.$response->TransactionID;
}

Change log

Please see CHANGELOG for more information what has changed recently.

Testing

Tests are written with PHPUnit. They can be run using Composer:

$ composer test

License

The MIT License (MIT). Please see License File for more information.