PHP API Client and bindings for the Pomelo Pay Connect API
Using this PHP API Client you can interact with your Pomelo Pay Connect API:
- π³ Transactions
Requires PHP 7.2.5 or higher
The recommended way to install pomelopay-connect-php is through Composer:
First, install Composer:
$ curl -sS https://getcomposer.org/installer | php
Next, install the latest pomelopay-connect-php:
$ php composer.phar require pomelopay/pomelopay-connect-php
Finally, you need to require the library in your PHP application:
require "vendor/autoload.php";
- Run
composer test
andcomposer phpcs
before creating a PR to detect any obvious issues. - Please create issues for this specific API Binding under the issues section.
- Contact Pomelo Pay directly for Pomelo Pay Connect API support.
First get your production
or sandbox
API key from your Dashboard.
If you want to get a production
client:
use PomeloPayConnect\Client;
$client = new Client('apikey', 'appid');
If you want to get a sandbox
client:
use PomeloPayConnect\Client;
$client = new Client('apikey', 'appid', 'sandbox');
If you want to pass additional GuzzleHTTP options:
use PomeloPayConnect\Client;
$options = ['headers' => ['foo' => 'bar']];
$client = new Client('apikey', 'appid', 'sandbox', $options);
If you want to pass a custom base URL:
use PomeloPayConnect\Client;
$options = ['baseUrl' => 'my-custom-url'];
$client = new Client('apikey', 'appid', 'sandbox', $options);
The following exposed API operations from the Pomelo Pay Connect API are available using the API Client.
See below for more details about each resource.
π³ Transactions
Create a new transaction with or without a specific payment method.
use PomeloPayConnect\Client;
$client = new Client('apikey', 'appid');
$json = [
"provider" => "card", // Payment method enabled for your merchant account such as bcmc, card, card
"currency" => "GBP",
"amount" => 1000, // 10.00 GBP
"redirectUrl" => "https://foo.bar/order/123" // Optional redirect after payment completion
];
$transaction = $client->transactions->create($json);
header('Location: '. $transaction->url); // Go to transaction payment page
Create transaction without a payment method that will redirect to the payment method selection screen
use PomeloPayConnect\Client;
$client = new Client('apikey', 'appid');
$json = [
"currency" => "GBP",
"amount" => 1000, // 10.00 GBP
"redirectUrl" => "https://foo.bar/order/987" // Optional redirect after payment completion
];
$transaction = $client->transactions->create($json);
header('Location: '. $transaction->url); // Go to payment method selection screen
Create transaction without a payment method with your own localId that will redirect to the payment method selection screen
use PomeloPayConnect\Client;
// Get your API Key and App ID from the "Connect" screen on your merchant dashboard
$client = new Client('apikey', 'appid');
// Currency should be your merchant account currency or the payment would be rejected
$json = [
"currency" => "EUR",
"amount" => 1234, // 12.34 EUR,
"localId" => "INVOICE-2020-0001",
"redirectUrl" => "https://your.webshop.domain.url/my_order/2020_0001" // Optional redirect after payment completion, the payment portal will redirect to this URL and attach queryParameters to this URL, fully optional
];
$transaction = $client->transactions->create($json);
header('Location: '. $transaction->url); // Go to payment screen on Pomelo Pay
die();
Create transaction without a payment method with your own localId that will redirect to the payment method selection screen and also sends a webhook for this specific transaction
use PomeloPayConnect\Client;
// Get your API Key and App ID from the "Connect" screen on your merchant dashboard
$client = new Client('apikey', 'appid');
// Currency should be your merchant account currency or the payment would be rejected
$json = [
"currency" => "EUR",
"amount" => 1234, // 12.34 EUR,
"localId" => "INVOICE-2020-0001",
"webhook" => "https://foo.bar/incoming/1234",
"redirectUrl" => "https://your.webshop.domain.url/my_order/2020_0001" // Optional redirect after payment completion, the payment portal will redirect to this URL and attach queryParameters to this URL, fully optional
];
$transaction = $client->transactions->create($json);
header('Location: '. $transaction->url); // Go to payment screen on Pomelo Pay
die();
Create transaction without a payment method with your own localId that will redirect to the payment method selection screen and also sends a webhook for this specific transaction. Furthermore expire this payment link automatically after 3 hours.
use PomeloPayConnect\Client;
// Get your API Key and App ID from the "Connect" screen on your merchant dashboard
$client = new Client('apikey', 'appid');
// Currency should be your merchant account currency or the payment would be rejected
$json = [
"currency" => "EUR",
"amount" => 1234, // 12.34 EUR,
"validForHours" => 3,
"localId" => "INVOICE-2020-0001",
"webhook" => "https://foo.bar/incoming/1234",
"redirectUrl" => "https://your.webshop.domain.url/my_order/2020_0001" // Optional redirect after payment completion, the payment portal will redirect to this URL and attach queryParameters to this URL, fully optional
];
$transaction = $client->transactions->create($json);
header('Location: '. $transaction->url); // Go to payment screen on Pomelo Pay
die();
β Sign up as a merchant at https://dashboard.pomelopay.com and start receiving payments in seconds.