PHPackages                             sizrar/rxp-remote-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. sizrar/rxp-remote-php

ActiveLibrary[Payment Processing](/categories/payments)

sizrar/rxp-remote-php
=====================

SDK to send requests and parse responses from Realex Payments using Remote

v1.2.2(8y ago)09MITPHPPHP &gt;=5.3.9

Since Sep 15Pushed 7y ago1 watchersCompare

[ Source](https://github.com/sizrar/rxp-remote-php)[ Packagist](https://packagist.org/packages/sizrar/rxp-remote-php)[ RSS](/packages/sizrar-rxp-remote-php/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (4)Versions (6)Used By (0)

Realex Payments Remote PHP SDK
==============================

[](#realex-payments-remote-php-sdk)

You can sign up for a free Realex Payments sandbox account at

Requirements
------------

[](#requirements)

- PHP &gt;= 5.3.9
- Composer ()

Instructions
------------

[](#instructions)

1. Add the following to your 'composer.json' file

    ```
    {
        "require": {
            "realexpayments/rxp-remote-php": "1.2.2"
        }
    }

    ```
2. Inside the application directory run composer:

    ```
    composer update

    ```

    OR (depending on your server configuration)

    ```
    php composer.phar update

    ```
3. Add a reference to the autoloader class anywhere you need to use the sdk

    ```
    require_once ( 'vendor/autoload.php' );
    ```
4. Use the sdk

    ```
    $card = ( new Card() )
    		->addType( CardType::VISA )
    		->addNumber( "4263971921001307" )
        ....
    ```

Usage
-----

[](#usage)

### Authorisation

[](#authorisation)

```
require_once ( 'vendor/autoload.php' );

use com\realexpayments\remote\sdk\domain\Card;
use com\realexpayments\remote\sdk\domain\CardType;
use com\realexpayments\remote\sdk\domain\PresenceIndicator;
use com\realexpayments\remote\sdk\domain\payment\AutoSettle;
use com\realexpayments\remote\sdk\domain\payment\AutoSettleFlag;
use com\realexpayments\remote\sdk\domain\payment\PaymentRequest;
use com\realexpayments\remote\sdk\domain\payment\PaymentResponse;
use com\realexpayments\remote\sdk\domain\payment\PaymentType;
use com\realexpayments\remote\sdk\RealexClient;

$card = ( new Card() )
	->addType( CardType::VISA )
	->addNumber( "4263971921001307" )
    ->addExpiryDate( "1220" )
	->addCvn( "123" )
	->addCvnPresenceIndicator( PresenceIndicator::CVN_PRESENT )
	->addCardHolderName( "James Mason" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
    ->addType( PaymentType::AUTH )
    ->addCard( $card )
    ->addAmount( 1001 )
    ->addCurrency( "EUR" )
    ->addAutoSettle( ( new AutoSettle() )->addFlag( AutoSettleFlag::TRUE ) );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );

// do something with the response
echo $response->toXML();

$resultCode = $response->getResult();
$message = $response->getMessage();

```

### Authorisation (With Address Verification)

[](#authorisation-with-address-verification)

```
$card = ( new Card() )
	->addNumber( "4263971921001307" )
	->addType( CardType::VISA )
	->addCardHolderName( "James Mason" );
	->addCvn( "123" )
	->addCvnPresenceIndicator( PresenceIndicator::CVN_PRESENT )
	->addExpiryDate( "1220" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::AUTH )
	->addAmount( 1001 )
	->addCurrency( "EUR" )
	->addCard( $card )
	->addAutoSettle( ( new AutoSettle() )->addFlag( AutoSettleFlag::TRUE ) )
	->addAddressVerificationServiceDetails("382 The Road", "WB1 A42");

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Authorisation (Mobile)

[](#authorisation-mobile)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::AUTH_MOBILE )
	->addAutoSettle( ( new AutoSettle() )->addFlag( AutoSettleFlag::TRUE ) )
	->addMobile("apple-pay")
	->addToken("{auth mobile payment token}");

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Settle

[](#settle)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::SETTLE )
	->addOrderId("Order ID from original transaction")
	->addAmount( 1001 )
	->addCurrency( "EUR" )
	->addPaymentsReference("pasref from original transaction");

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Void

[](#void)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::VOID )
	->addOrderId("Order ID from original transaction")
	->addPaymentsReference("pasref from original transaction");

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Rebate

[](#rebate)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::REBATE )
	->addOrderId("Order ID from original transaction")
	->addAmount( 1001 )
	->addCurrency( "EUR" )
	->addPaymentsReference("pasref from original transaction")
	->addAuthCode("Auth code from original transaction")
	->addRefundHash("SHA1 hash of rebate password");

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### OTB

[](#otb)

```
$card = ( new Card() )
	->addNumber( "4263971921001307" )
	->addType( CardType::VISA )
	->addCardHolderName( "James Mason" )
	->addCvn( "123" )
	->addCvnPresenceIndicator( PresenceIndicator::CVN_PRESENT )
	->addExpiryDate( "1220" );

 $request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::OTB )
	->addCard( $card );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Refund

[](#refund)

```
$card = ( new Card() )
	->addNumber( "4263971921001307" )
	->addType( CardType::VISA )
	->addCardHolderName( "James Mason" )
	->addCvn( "123" )
	->addCvnPresenceIndicator( PresenceIndicator::CVN_PRESENT )
	->addExpiryDate( "1220" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::REFUND )
	->addAmount( 1001 )
	->addCurrency( "EUR" )
	->addCard( $card )
	->addRefundHash( "Hash of credit password shared with Realex" );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Hold

[](#hold)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::HOLD )
	->addOrderId( "Order ID from original transaction" )
	->addReasonCode( ReasonCode::FRAUD)
	->addPaymentsReference( "Pasref from original transaction" );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Release

[](#release)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::RELEASE )
	->addOrderId( "Order ID from original transaction" )
	->addReasonCode( ReasonCode::FRAUD)
	->addPaymentsReference( "Pasref from original transaction" );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Receipt-In

[](#receipt-in)

```
$paymentData = ( new PaymentData() )
  	->addCvnNumber( "123" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
 	->addType( PaymentType::RECEIPT_IN )
 	->addAmount( 100 )
 	->addCurrency( "EUR" )
 	->addPayerReference( "payer ref for customer" )
 	->addPaymentMethod( "payment method ref for card" )
 	->addPaymentData( $paymentData );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Payment-out

[](#payment-out)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
 	->addType( PaymentType::PAYMENT_OUT )
 	->addAmount( 100 )
 	->addCurrency( "EUR" )
 	->addPayerReference( "payer ref for customer" )
 	->addPaymentMethod( "payment method ref for card" )
 	->addRefundHash("Hash of rebate password shared with Realex");

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Payer-new

[](#payer-new)

```
$address = ( new PayerAddress() )
    ->addLine1( "Flat 123" )
    ->addLine2( "House 456" )
    ->addLine3( "The Cul-De-Sac" )
    ->addCity( "Halifax" )
    ->addCounty( "West Yorkshire" )
    ->addPostcode( "W6 9HR" )
    ->addCountryCode( "GB" )
    ->addCountryName( "United Kingdom" );

$payer = ( new Payer() )
    ->addType( "Business" )
    ->addRef( "0f357b45-9aa4-4453-a685-c69232e9024f" )
    ->addTitle( "Mr" )
    ->addFirstName( "James" )
    ->addSurname( "Mason" )
    ->addCompany( "Realex Payments" )
    ->addAddress( $address )
    ->addHomePhoneNumber( "+35317285355" )
    ->addWorkPhoneNumber( "+35317433923" )
    ->addFaxPhoneNumber( "+35317893248" )
    ->addMobilePhoneNumber( "+353873748392" )
    ->addEmail( "test@example.com" )
    ->addComment( "Campaign Ref E7373G" )
    ->addComment( "Website Sign-Up" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
 	->addType( PaymentType::PAYER_NEW )
 	->addPayer( $payer );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Payer-edit

[](#payer-edit)

```
$address = ( new PayerAddress() )
    ->addLine1( "Flat 456"  )
    ->addLine2( "House 321" )
    ->addLine3( "Basement Flat" )
    ->addCity( "Rathmines" )
    ->addCounty( "Dublin" )
    ->addPostcode( "6" )
    ->addCountryCode( "IE" )
    ->addCountryName( "Ireland" );

$payer = ( new Payer() )
    ->addType( "Subscriber" )
    ->addRef( "0f357b45-9aa4-4453-a685-c69232e9024f" )
    ->addTitle( "Mr" )
    ->addFirstName( "Philip" )
    ->addSurname( "Marlowe" )
    ->addCompany( "Pinkerton" )
    ->addAddress( $address )
    ->addHomePhoneNumber( "+3538547854" )
    ->addWorkPhoneNumber( "+3535611177" )
    ->addFaxPhoneNumber( "+12459498488" )
    ->addMobilePhoneNumber( "+2554457774" )
    ->addEmail( "test123@example.com" )
    ->addComment( "New Subscription" )
    ->addComment( "12 Months" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
 	->addType(PaymentType::PAYER_EDIT)
 	->addPayer( $payer );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Card-new

[](#card-new)

```
$card = ( new Card() )
    ->addReference( "10c6a2c7-be7b-a13f-12638937a012" )
    ->addPayerReference( "0f357b45-9aa4-4453-a685-c69232e9024f" )
	->addNumber( "4263971921001307" )
	->addType( CardType::VISA )
	->addCardHolderName( "James Mason" )
	->addExpiryDate( "1220" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
 	->addType( PaymentType::CARD_NEW )
 	->addCard( $card );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Card-edit

[](#card-edit)

```
$card = ( new Card() )
	->addReference( "10c6a2c7-be7b-a13f-12638937a012" )
	->addPayerReference( "0f357b45-9aa4-4453-a685-c69232e9024f" )
	->addNumber( "5425230000004415" )
	->addType( CardType::MASTERCARD )
	->addCardHolderName( "James Mason" )
	->addExpiryDate( "1220" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
 	->addType( PaymentType::CARD_UPDATE )
 	->addCard( $card );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Card-delete

[](#card-delete)

```
$card = ( new Card() )
	->addReference( "10c6a2c7-be7b-a13f-12638937a012" )
	->addPayerReference( "0f357b45-9aa4-4453-a685-c69232e9024f" )

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
 	->addType( PaymentType::CARD_CANCEL )
 	->addCard($card);

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Verify Stored Card Enrolled

[](#verify-stored-card-enrolled)

```
$paymentData = new PaymentData()
  	->addCvnNumber( "123" );

$request = ( new ThreeDSecureRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( ThreeDSecureType::VERIFY_STORED_CARD_ENROLLED )
	->addAmount( 100 )
	->addCurrency( "EUR" )
	->addReference( "10c6a2c7-be7b-a13f-12638937a012" )
	->addPayerReference( "0f357b45-9aa4-4453-a685-c69232e9024f" )
	->addPaymentData( $paymentData )
	->addAutoSettle( ( new AutoSettle() )->addFlag( AutoSettleFlag::TRUE ) );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send($request);
```

### DCC Rate Lookup

[](#dcc-rate-lookup)

```
$card = ( new Card() )
	->addNumber( "4006097467207025" )
	->addType( CardType::VISA )
	->addCardHolderName( "James Mason" )
	->addCvn( "123" )
	->addCvnPresenceIndicator( PresenceIndicator::CVN_PRESENT )
	->addExpiryDate( "1220" );

$dccInfo = ( new DccInfo() )
    ->addDccProcessor( "fexco" )
    ->addRateType( "S" )
	->addType( "1" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
  	->addType( PaymentType::DCC_RATE_LOOKUP )
  	->addAmount(100)
  	->addCurrency( "EUR" )
  	->addCard( $card )
  	->addDccInfo( $dccInfo );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Authorisation with DCC Information

[](#authorisation-with-dcc-information)

```
$card = ( new Card() )
	->addNumber( "4006097467207025" )
	->addType( CardType::VISA )
	->addCardHolderName( "James Mason" )
	->addCvn( "123" )
	->addCvnPresenceIndicator( PresenceIndicator::CVN_PRESENT )
	->addExpiryDate( "1220" );

$dccInfo = ( new DccInfo() )
    ->addDccProcessor( "fexco" )
    ->addRateType( "S" )
	->addType( "1" );
    ->addRate( 0.6868 )
    ->addAmount( 13049 )
    ->addCurrency( "AUD" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType(PaymentType::DCC_AUTH)
	->addAmount( 19000 )
	->addCurrency( "EUR" )
	->addCard( $card )
	->addDccInfo( $dccInfo );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Receipt-In OTB

[](#receipt-in-otb)

```
$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType( PaymentType::RECEIPT_IN_OTB )
	->addPayerReference( "03e28f0e-492e-80bd-20ec318e9334" )
    ->addPaymentMethod( "3c4af936-483e-a393-f558bec2fb2a" );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Stored Card DCC Rate Lookup

[](#stored-card-dcc-rate-lookup)

```

$dccInfo = ( new DccInfo() )
    ->addDccProcessor( "fexco" )
    ->addRateType( "S" )
	->addType( "1" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
	->addType(PaymentType::STORED_CARD_DCC_RATE)
	->addAmount( 1001 )
	->addCurrency( "EUR" )
	->addPayerReference( "03e28f0e-492e-80bd-20ec318e9334" )
    ->addPaymentMethod( "3c4af936-483e-a393-f558bec2fb2a" )
	->addDccInfo( $dccInfo );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Fraud Filter Request

[](#fraud-filter-request)

```
$card = ( new Card() )
	->addNumber( "4006097467207025" )
	->addType( CardType::VISA )
	->addCardHolderName( "James Mason" )
	->addCvn( "123" )
	->addCvnPresenceIndicator( PresenceIndicator::CVN_PRESENT )
	->addExpiryDate( "1220" );

$request = ( new PaymentRequest() )
	->addMerchantId( "Merchant ID" )
	->addAccount( "internet" )
    ->addType( PaymentType::AUTH )
    ->addCard( $card )
    ->addAmount( 10001 )
    ->addCurrency( "EUR" )
    ->addAutoSettle( ( new AutoSettle() )->addFlag( AutoSettleFlag::TRUE ) )
    ->addFraudFilter( ( new FraudFilter() )->addMode( FraudFilterMode::PASSIVE ) );

$client   = new RealexClient( "Shared Secret" );
$response = $client->send( $request );
```

### Fraud Filter Response

[](#fraud-filter-response)

```
// request is fraud filter
$response = $client->send( $request );

$mode = $response->getFraudFilter()->getMode();
$result = $response->getFraudFilter()->getResult();
//array of FraudFilter Rule Actions
$rules = $response->getFraudFilter()->getRules();
foreach($rules->getRules() as $rule)
{
    echo $rule->getId();
    echo $rule->getName();
    echo $rule->getAction();
}
//or
echo $rules->get(0)->getId();
```

License
-------

[](#license)

See the LICENSE file.

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 80.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~230 days

Total

5

Last Release

2973d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/36c59377e7f69f8486f2bc2f7c1c830ddd952e50ca88167412eb6994929b7917?d=identicon)[sizrar](/maintainers/sizrar)

---

Top Contributors

[![vicpada](https://avatars.githubusercontent.com/u/80010?v=4)](https://github.com/vicpada "vicpada (150 commits)")[![ale88sv](https://avatars.githubusercontent.com/u/16838606?v=4)](https://github.com/ale88sv "ale88sv (11 commits)")[![RealexITSO](https://avatars.githubusercontent.com/u/13001713?v=4)](https://github.com/RealexITSO "RealexITSO (8 commits)")[![seanmacdomhnall](https://avatars.githubusercontent.com/u/6827648?v=4)](https://github.com/seanmacdomhnall "seanmacdomhnall (8 commits)")[![graham-whelan](https://avatars.githubusercontent.com/u/13943048?v=4)](https://github.com/graham-whelan "graham-whelan (4 commits)")[![rxp-developers](https://avatars.githubusercontent.com/u/28811117?v=4)](https://github.com/rxp-developers "rxp-developers (3 commits)")[![sizrar](https://avatars.githubusercontent.com/u/807535?v=4)](https://github.com/sizrar "sizrar (2 commits)")

---

Tags

paymentsremoterealex

### Embed Badge

![Health badge](/badges/sizrar-rxp-remote-php/health.svg)

```
[![Health](https://phpackages.com/badges/sizrar-rxp-remote-php/health.svg)](https://phpackages.com/packages/sizrar-rxp-remote-php)
```

###  Alternatives

[realexpayments/rxp-remote-php

SDK to send requests and parse responses from Realex Payments using Remote

21116.5k](/packages/realexpayments-rxp-remote-php)[imdhemy/google-play-billing

Google Play Billing

491.3M5](/packages/imdhemy-google-play-billing)[aktive_merchant/aktive_merchant

Aktive-Merchant provides a common interface to process payments using multiple gateways.

15036.8k](/packages/aktive-merchant-aktive-merchant)[api-platform/symfony

Symfony API Platform integration

323.2M67](/packages/api-platform-symfony)[api-platform/serializer

API Platform core Serializer

223.4M31](/packages/api-platform-serializer)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
