Download the PHP package genesisgateway/genesis_php without Composer
On this page you can find all versions of the php package genesisgateway/genesis_php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download genesisgateway/genesis_php
More information about genesisgateway/genesis_php
Files in genesisgateway/genesis_php
Package genesis_php
Short Description PHP Client for Genesis Payment Processing Gateway
License MIT
Informations about the package genesis_php
Genesis PHP
Overview
Client Library for processing payments through Genesis Payment Processing Gateway. It's highly recommended to check out "Genesis Payment Gateway API Documentation" first, in order to get an overview of Genesis's Payment Gateway API and functionality.
Requirements
- PHP version 5.5.9 or newer
- PHP Extensions:
- Composer (optional)
Note: Most of the extension are part of PHP and enabled by default, however some distributions are using custom configuration that might have some of them removed/disabled.
Installation
Composer
Note: If you want to use the package with PHP version lover than 7.4, you can use
Manual
- Clone / download this repo
Getting Started
Configuration
A sample configuration file settings_sample.ini is provided. The configuration file can be loaded via:
Or the configuration settings can be set manually:
Transactions
Note: the file is located inside the directory where you cloned the repo and it is auto-generated by Composer. If the file is missing, just run inside the root directory
Web Payment Form
Full list with the available Custom Attributes for every Transaction Type can be found here.
Response
After Request execution ($genesis->execute()
) a Response object can be accessed $genesis->response()
.
The Response contains the original response from the Gateway:
The Response contains the parsed response from the Gateway:
The HTTP response status code of the request is also available:
A request that reached the Genesis payment gateway successfully can have an error status if there was a problem during the transaction execution i.e. the HTTP response status code was 200 but the transaction was declined/unsuccessful. In this case the Response will contain the payment gateway internal error code
, additional message
and more detailed technical_message
.
The full list of the possible error codes can be found here.
Transaction states
There are predefined checks for validating the status of the received response. Every available status received from the Genesis gateway can be checked in the following way:
Check Transactions API States and Web Payment Form States for more information about the possible transaction states.
Smart Router
The Smart Routing API is a higher-level abstraction that allows for simpler and more efficient gateway Processing API integration. It does not require the terminal token. This by itself minimizes the need for complex customer-level manual routing to terminals set up on the gateway platform configuration layer.
By default the Smart Router is disabled. Contact your account manager to use the functionality.
Smart Router global definition for all requests
-
PHP Config File
- Ini Config File
Smart Router definition per request
Example 3DSv2 Request
Sample request including all the conditionally required/optional params for initiating a 3DS transaction with the 3DSv2-Method authentication protocol.
Also, an example is provided for the 3DS-Method-continue API call that will have to be submitted after the 3DS-Method is initiated.
Example 3DSv2 Request via Web Payment Form
Details
Standalone ThreedsV2 Method Continue Request.
Example Google Pay
Example Google Pay transaction request
Example Google Pay WPF request
Example Apple Pay
Example Apple Pay transaction request
Example Apple Pay WPF request
Example Invoice
Authorize
`Example Web Payment Form transaction request with Zero Amount
In certain cases, it is possible to submit a transaction with a zero-value amount in order not to charge the consumer with the initial recurring, but with the followed RecurringSale transactions only - Free Trial.
Example WPF Request
Notifications
When using an Asynchronous workflow, you need to parse the incoming extension in order to ensure its authenticity and verify it against Genesis server.
Example:
Endpoints
The current versions supports two separate endpoints: and
For example:
-
You can set the Endpoint to , thus all the requests will go to s Genesis instance:
- You can set the Endpoint to , thus all the requests will go to s Genesis instance:
Request types
You can use the following request types to initialize the Genesis client:
More information about each one of the request types can be found in the Genesis API Documentation and the Wiki
Running Specs
The following step are optional, however it's recommended to run specs at least once, in order to ensure that everything is working as intended on your setup
-
install Composer (if you don't have it already)
-
fetch all required packages
- run phpspec
Note: The specs are intended to run with PHP v8.1
All versions of genesis_php with dependencies
ext-bcmath Version *
ext-curl Version *
ext-filter Version *
ext-hash Version *
ext-simplexml Version *
ext-xmlreader Version *
ext-xmlwriter Version *
ext-json Version *
ext-openssl Version *