Realex Payments

This guide details how to setup and use the Realex payment method.

Introduction

The Realex Payments integration implements the Realex HPP (Hosted Payment Page) solution with support for both auto-settled and deferred payments.

Aurora integrates closely with Realex Payments to support:

  • Secure PCI compliant payment authorisations
  • 3D Secure result analysis
  • Fraud result analysis with the option to automatically void payment authorisations
  • Realex card storage
  • Transaction management:
    • Manual and automatic deferred payment release based on order status
    • Manual and automatic payment refunds based on a settlement batch processing time
    • Manual deferred payment voiding

For more information about the Realex HPP solution please see:
https://www.realexpayments.com/

 Features on the Aurora Realex Integration Roadmap

The following features are scheduled for a subsequent phase of development:

  • Alternative Payment Methods i.e. Paypal, BACS etc.
  • Managing saved Realex cards from within the Aurora Members area 
  • Automatically resolve card details locally after paying with a saved card

Aurora HCC Checkout Journey

The Realex Payments integration utilises the following Aurora HCC (Hosted Card Capture) checkout journey:

  1. User enters shipping details and submits them from checkout to Aurora
  2. Aurora initialises the Realex HPP solution within an iFrame on a new payment page
  3. User enters card details and progresses through 3D Secure if required (redirection within the iFrame is managed by Realex)
  4. Realex submits payment transaction response data back to Aurora and displays the response within the iFrame
  5. Aurora stores the payment response, breaks out of iFrame and either:
    • Redirects the user to the checkout to display errors
    • Redirects the user to the order complete page

Realex Account Settings

To fully utilise all Aurora Realex integration features, you may need to explicitly request that each feature is enabled within your Realex Payments account i.e.

  • 3D Secure
  • Fraud Management
  • Card Storage
  • Return safe card details within the HPP response i.e.
    • Last four digits of card
    • Card type
    • Card expiry
  • Multiple rebates

It is also important to request the time at which Realex batch process transactions on your account, this can then be defined within the Aurora Realex integration settings.

The 'referrer URL'

To make use of the HCC solution, Realex will require something they refer to as the "referrer URL". This is the URL from which you will be sending your request to them.

This URL is as below:

https://www.yourdomain.com/checkout/

Note: You should replace the "www.yourdomain.com" section with your domain name when sending this to Realex.

Aurora Realex Integration Settings

To start using the Realex Payments integration, use the Aurora menu and navigate to Store > Settings > Payment Providers > Card Payment Provider and select Realex. The Realex Payments integration can then be configured within this section.

Once you have an account with Realex Payments, they will provide you with the following details that must be entered within the Aurora Realex integration settings.

  • Merchant ID
  • Account
  • Secret
  • Rebate Password

Integration Settings

Field NameDescriptionDefault
Live?When selected, the live HPP and API details will be used.

When not selected, the integration is in test mode and the test HPP and API details will be used.
No
Payment TypeDetermines whether payment authorisations should be automatically settled/released or deferred until Aurora manually releases the payment at a later time.

Payment - payment automatically settled during checkout
Deferred - payment deferred and allows a single release transaction at a later time either manually or via an automated process such as an order status change
Deferred (Immediate) - as "Deferred" except the payment is released immediately when the customer returns to Aurora from the Realex HPP solution.
Deferred (Multi) - as "Deferred" except allows multiple releases for a single deferred transaction.

To use "Deferred (Multi)" requires a request to Realex support to enable "multi settle" support for your account.
Payment
Payment ButtonWhen specified, the payment button within the Realex HPP console will display this value.
Live HPP EndpointDetermines the live Realex HPP endpoint, this is unlikely to differ from the default.https://pay.realexpayments.com/pay
Live API EndpointDetermines the live Realex API endpoint, this is unlikely to differ from the default.https://api.realexpayments.com/epage-remote.cgi
Live Merchant IDDetermines the merchant ID used when sending requests to the live Realex HPP and API endpoints.
Live AccountDetermines the account used when sending requests to the live Realex HPP and API endpoints.
Live SecretDetermines the secret used when building requests to the live Realex HPP and API endpoints.
Live Rebate PasswordDetermines the rebate password used when sending rebate requests to the live Realex HPP and API endpoints; rebates requests are used when performing Aurora refunds.
Test HPP EndpointDetermines the test Realex HPP endpoint, this is unlikely to differ from the default.

test card details: https://developer.realexpayments.com/#!/resources/test-card-numbers
https://pay.sandbox.realexpayments.com/pay
Test API EndpointDetermines the test Realex API endpoint, this is unlikely to differ from the default.https://api.sandbox.realexpayments.com/epage-remote.cgi
Test Merchant IDDetermines the merchant ID used when sending requests to the test Realex HPP and API endpoints.
Test AccountDetermines the account used when sending requests to the test Realex HPP and API endpoints.
Test SecretDetermines the secret used when building requests to the test Realex HPP and API endpoints.
Test Rebate PasswordDetermines the rebate password used when sending rebate requests to the test Realex HPP and API endpoints; rebates requests are used when performing Aurora refunds.
Card Storage TypeDetermines if card storage is enabled and whether managed within Aurora or by Realex.None
Batch Processing TimeDetermines the time at which payment authorisations are sent to the bank by Realex; this is dependant on each acquirer and can be provided by Realex on request.00:00
Enabled 3D Secure 2When this is selected, Aurora will send customer email, phone number and address details within the initial request to the Realex HPP solution in order to support the 3DS version 2 challenge process.

Please see:

https://developer.realexpayments.com/#!/hpp/3d-secure-two
No
3DS Challenge Request Indicator?Only used when 3D Secure 2 is enabled.

Indicates whether a challenge is requested for this transaction. The Issuer may override whatever preference is specified in this field. Allowed values:

No Preference - No preference as to whether the customer is challenged
No Challenge Requested - Preference is for the customer not be challenged.
Challenge Preferred - Preference is for the customer to be challenged.
Challenge Mandated - A challenge is required for the transaction to be authorised due to local/regional mandates or other variables.
No Preference
Fraud Management Mode?Determines if Aurora should instruct Realex to execute the Fraud Rules defined within your Realex account and in turn whether Aurora should store the results with a successful order.

Use Realex RealControl configuration - instructs Realex to behave in accordance with the RealControl configuration.
Passive - instructs Realex to execute the rules but do not execute the action detailed in the Fraud Filter Overall Result.
* Off - instructs Realex to not execute the Fraud Filter at all for this transaction.

This feature has been removed as the Realex system does not appear to use the value sent with the HPP request, contrary to the Realex documentation.

The Fraud Management Mode can be controlled from within the RealControl portal.

Aurora will continue to process and action fraud results when they are present within the HPP response transaction information.

See Fraud Checking for further details on how Aurora reflects order fraud information.
No
Automatically Void Payments with Rejected Fraud Results?When this is selected, Aurora will automatically send a void request to Realex when the Realex fraud response passively rejects a payment transaction.

There are a few important things to note:

1. If the Realex fraud rules are configured to actively reject transactions with failed fraud results:
1. Payment will fail
2. The user will be returned to the checkout with a "Payment Error: Card Declined" error message as defined within Aurora Site Text.
2. If the Realex fraud rules are configured to passively reject transactions with failed fraud results:
1. Payment will continue
2. An order will be created
3. The order will be assigned a rejected fraud status
4. Payment will automatically be voided
3. The Aurora Realex Payments integration implements two different types of void payment processes:
1. HARD VOID: when a payment is voided due to a rejected fraud response, a real void request is sent to the Realex API.

Realex have advised that when voiding payments, a shadow payment transaction will remain on the customers bank account until either the customer manually requests that their bank remove it or until the authorisation expires, which can take up to 30 days.



2. SOFT VOID: when a payment transaction is voided from within Aurora for all other circumstances, Aurora will release and refund the transaction to avoid leaving a shadow payment transaction on the customers account.
No
Log Requests?Determines if HPP and API requests are logged within the Store > Logs > API Integration LogNo

Save Card Payments

When a user chooses to pay with a previously stored card, the Realex HPP solution does not return card details and instead returns a payment method reference; in this case, Aurora will set the card type to Saved Card i.e.

2362

📘

Aurora Commerce are currently assessing the viability of automatically resolving the returned payment reference to locally stored card details from a previous transaction.

Fraud Results

Where the Realex account has been configured with Fraud Rules, the Realex HPP solution will return fraud results within the payment transaction response. Aurora will automatically process the fraud results and reflect these with the Aurora backend interface.

See Fraud Checking for further details on how Aurora reflects order fraud information.

Order Statuses

Aurora will also update the order status to either an Approved or Hold status based on the Aurora order status configuration.

See Order Statuses for further details on how to configure order statuses.

Refunds

Because of the way Realex batch process payment authorisations on a daily basis, refunds cannot always be performed in real time and instead may require scheduling for when the authorisation transaction has been sent to the bank.

For this reason, when a refund or soft void is performed within Aurora, either manually or automatically, a pending refund transaction may be created and processed automatically after the next batch processing time as defined with the Realex integration settings.

Order Refunds

Pending refunds are displayed within the transaction section of the View Order page i.e.

2368

Failed Order Refunds

Should Aurora encounter an error state when attempting to save an order or allocate stock after payment has already been taken, a failed order is automatically created and all associated transactions are logged accordingly, including any release and refund transactions associated with a soft void i.e.

2360

Payment Reconciliation

The Aurora Realex integration supports automatic reconciliation of payment transactions.

The automated payment reconciliation process runs every 15 minutes and will query the Realex API for payment transactions registered against all payment requests sent to Realex by Aurora that did not result in a successful order.

If this process encounters a payment transaction that does not correlate to either an Aurora order or failed order transaction that has not yet been handled, Aurora will register the payment transaction within the failed order log and automatically attempt to "soft void" the transaction.

📘

SOFT VOID: Aurora will release and refund the transaction to avoid leaving a shadow authorisation on the customers account.

🚧

The Realex Query API does not return the time that a payment transaction was actually taken and therefore, when voiding a transaction from within the reconciliation process, Aurora will create a pending refund to be actioned automatically after the next batch processing time.

Please see the Payment Reconciliation guide for more information about this process.

Common errors

508
Incorrect hash. Please check your code and the Developers Documentation.

👍

Please contact Realex to confirm your account secret and other settings found here are correct under Store > Settings > Payment Providers > Realex. It may be that these settings are not correct.

511
Unable to connect to the merchant's response URL [URL].

👍

This can happen when testing using L1 maintenance, the following network ranges  should be added to the allowed ip address list for maintenance exceptions ( use all text within the quotes, see Aurora Splash Page (Maintenance Mode) for more details):

  • "/193\.105\.253\..*/" 
  • "/52\.155\.173\..*/"
  • "/51\.145\.190\..*/"

👍

This can also happen on test sites which have a username and password to allow access, contact your AC account manager to resolve this issue.

Checkout Errors

Aurora will display the following checkout errors based on the response status code returned by Realex:

Realex status codeAurora site text referenceDefault message
101 - 107Payment Error: Card DeclinedThe bank has declined your payment request.
108 - 199Payment Error: Payment Method ErrorThe payment was unsuccessful, please try again or try another payment method.
200 - 599Payment Error: Payment Provider ErrorThere was an error whilst contacting our payment provider, please try again.
666Payment Error: Payment Provider Not AvailableThere was an error whilst contacting our payment provider, please contact us and report this issue.
Anything elsePayment Error: Unknown ErrorThere was an error whilst taking payment, please contact us and report this issue.