shurjomukhi/shurjopay-plugin-php

shurjoPay is a online payment gateway and easy payment solution

0.1.1 2023-01-27 13:15 UTC

This package is auto-updated.

Last update: 2024-03-23 05:09:01 UTC


README

Made With Test Status NPM version

Official shurjoPay PHP plugin for merchants or service providers to connect with shurjoPay Payment Gateway v2.1 developed and maintained by ShurjoMukhi Limited.

This plugin package can be used with any PHP application or framework (e.g. Laravel, Lumen, CodeIgniter, Symfony, CakePHP, Yii etc). Use this plugin in your CMS (Wordpress, Magento, Joomla, OpenCart, Drupal etc) projects or checkour our dedicated plugins for the renowned CMS. It makes it easy for developers to integrate with shurjoPay v2.1 with just three API calls:

  1. authenticate: Authenticate merchants and generate token
  2. makePayment: Create and send payment request
  3. verifyPayment: Verify payment status at shurjoPay

Also reduces many of the things that you had to do manually

  • Handles http request and errors
  • Log generation at your prefarable path
  • Authentication during checkout and verification of payments

Audience

This document is intended for the developers and technical personnel of merchants and service providers who want to integrate the shurjoPay online payment gateway using PHP.

How to use this shurjoPay Plugin

To integrate the shurjoPay Payment Gateway in your PHP project do the following tasks sequentially.

Add the shurjopay-plugin-php as your project dependency.

$ composer require shurjomukhi/shurjopay-plugin-php

Setup parameters for shurjopay plugin correctly in your application in a config file as shown below.

# shurjopay merchant username
SP_USERNAME='sp_sandbox'
# shurjopay merchant password
SP_PASSWORD='pyyk97hu&6u6'
# Merchant prefix used to generate order id
SP_PREFIX='NOK'
# shurjopay payment gateway API endpoint
SHURJOPAY_API='https://sandbox.shurjopayment.com'
# URL to redirect after completion of a payment. Sample: https://sandbox.shurjopayment.com/response
SP_CALLBACK='http://localhost/your-php-app/return.php'
# Log location of shurjopay php plugin
SP_LOG_LOCATION='/var/log/shurjopay'
# CURLOPT_SSL_VERIFYPEER=0 only for local and non-SSL environment 
CURLOPT_SSL_VERIFYPEER=1

Note: Remember to use live credentials in config file before going in production.

Now, create instance of Shurjopay with ShurjopayConfig. To read the parameters from config or env file, you may use the ShurjopayEnvReader.

Check out test class to view an example.

$env = new ShurjopayEnvReader(__DIR__ . '/_env');
$sp_instance = new Shurjopay($env->getConfig());

After that, initiate a payment request to shurjoPay using our plugin in your application. Below is a basic example code snippet.

$request = new PaymentRequest();
# All the data will come from user end.
$request->currency = 'BDT';
$request->amount = 100;
$request->discountAmount = 0;
$request->discPercent = 0;
$request->customerName = 'Abdul Mannan';
$request->customerPhone = '01712345678';
$request->customerEmail = 'test@gmail.com';
$request->customerAddress = 'Dhaka';
$request->customerCity = 'Dhaka';
$request->customerState = 'Dhaka';
$request->customerPostcode = '1209';
$request->customerCountry = 'Bangladesh';
$request->shippingAddress = 'Sirajganj';
$request->shippingCity = 'Dhaka';
$request->shippingCountry = 'Bangladesh';
$request->receivedPersonName = 'Jalil Mia';
$request->shippingPhoneNumber = '01712345678';
# Custom data can be sent using these value[1-4] fields which will be returned back to you in response. Any type of data can be passed on; e.g. string, integer, array etc.
$request->value1 = array("val1", "val2", "val3");
$request->value2 = 'value2';
$request->value3 = 'value3';
$request->value4 = 'value4';

$sp_instance->makePayment($request);

Payment verification can be done after each transaction with shurjopay order id.

$sp_instance->verifyPayment($order_id);

Check our documentation on verify for more details.

References

  1. PHP sample project showing usage of the PHP plugin.
  2. Laravel sample project using PHP plugin to get your feet wet with shurjopay.
  3. OpenCart plugin
  4. OpenCart sample project
  5. Sample applications and projects in many different languages and frameworks showing shurjopay integration.
  6. shurjoPay Postman site illustrating the request and response flow using the sandbox system.
  7. shurjopay Plugins home page on github

License

This code is under the MIT open source License.

Please contact with shurjoPay team for more detail.

Copyright ©️2023 ShurjoMukhi Limited.