Home

Awesome

omnipay-rocketgate

Omnipay driver for RocketGate Gateway

Omnipay is a framework agnostic, multi-gateway payment processing library for PHP 5.3+. This package implements PaymentWall support for Omnipay.

RocketGate is an industry leader in transaction processing. RocketGate's secure, fault-tolerant and reliable payment processing platform includes a suite of sophisticated features including chargeback processing, risk management, advanced processing and merchant support tools. RocketGate's platform is engineered to be fast, customizable and profitable for our business partners.

Installation

Omnipay is installed via Composer. To install, simply add it to your composer.json file:

{
    "require": {
        "mvestil/omnipay-rocketgate": "~1.1"
    }
}

And run composer to update your dependencies:

$ curl -s http://getcomposer.org/installer | php
$ php composer.phar update

Basic Usage

The following transactions are provided by this package via the REST API:

For general usage instructions, please see the main Omnipay repository. There are also examples in the class API documentation.

Test modes

You must pass testMode=true to this package in order to make test payments

Authentication

To call RocketGate Payments API, merchant id and merchant password is required and will be passed via RocketGate's PHP SDK. You can get these values from RocketGate itself can be seen in their admin portal.

Usage

// Initialize the gateway
$gateway = Omnipay::create('RocketGate');
$gateway->initialize(array(
  'merchantID'       => 'XXXXXXXXXXXX',
  'merchantPassword' => 'XXXXXXXXXXXX',
  'testMode'         => true,
));

// Create a credit card object
$card = new CreditCard(array(
  'firstName'       => 'Example',
  'lastName'        => 'Customer',
  'number'          => '4242424242424242',
  'expiryMonth'     => '01',
  'expiryYear'      => '2032',
  'cvv'             => '123',
  'email'           => 'customer@example.com',
  'billingAddress1' => 'Consolacion, Cebu',
  'billingCountry'  => 'PH',
  'billingCity'     => 'Philippines',
  'billingPostcode' => '567278',
  'billingState'    => 'Philippines',
));

// Do a purchase transaction on the gateway
$transactorId = random_int(0, 1000000000);
$transaction = $gateway->purchase(array(
  'amount'        => '50.00',
  'currency'      => 'USD',
  'card'          => $card,
  'transactorId'  => $transactorId,
  'transactionId' => random_int(0, 1000000000),
));

$response = $transaction->send();
if ($response->isSuccessful()) {
  echo "Purchase transaction was successful!\n";
  $token = $response->getCardReference();
  echo "Card reference = " . $token . "\n";
}

// Do a token transaction on the gateway
$transaction = $gateway->purchase(array(
    'amount'        => '50.0',
    'currency'      => 'USD',
    'transactorId'  => $transactorId,
    'transactionId' => random_int(0, 1000000000),
    'cardReference' => $response->getCardReference(),
));

TODO

Support

If you are having general issues with Omnipay, we suggest posting on Stack Overflow. Be sure to add the omnipay tag so it can be easily found.

If you want to keep up to date with release anouncements, discuss ideas for the project, or ask more detailed questions, there is also a mailing list which you can subscribe to.