LaravelPackages.net
Acme Inc.
Toggle sidebar
rahulreghunath/nttdatapay

nttdatapay payment gateway integration in laravel

27
0
1.1.0-beta
About rahulreghunath/nttdatapay

rahulreghunath/nttdatapay is a Laravel package for nttdatapay payment gateway integration in laravel. It currently has 0 GitHub stars and 27 downloads on Packagist (latest version 1.1.0-beta). Install it with composer require rahulreghunath/nttdatapay. Discover more Laravel packages by rahulreghunath or browse all Laravel packages to compare alternatives.

Last updated

ntt-atom-payment

Laravel integration for NTT DATA PAY Payment gateway.

Installation

Install the package using using composer install.

composer require rahulreghunath/nttdatapay

Run the command to publish the configuration file.

php artisan vendor:publish --provider="Rahulreghunath\Nttdatapay\ServiceProvider"

Configuration

Set the credentials and configurations in config/nttdatapay.php file.

|Configuration|Description|Required| |----|----|:-:| |encKey|Encryption Key|| |decKey|Decryption Key|| |payUrl|Payment Url|| |transactionTrackingUrl|Transaction Tracking Url| |merchantId|Merchant id|| |password| Merchant Password||

Please note that the configurations will be different for testing and production environments and will be provided by NTT DATA.

Usage

Create Token Id

use the method createTokenId($data) to create token id to initiate the payment request.

sample data

$data = [
    "payInstrument" => [
        "headDetails" => [
            "version" => "OTSv1.1",
            "api" => "AUTH",
            "platform" => "FLASH"
        ],
        "merchDetails" => [
            "merchTxnId" => "Test123450",
            "merchTxnDate" => "2021-09-04 20:46:00"
        ],
        "payDetails" => [
            "amount" => "1",
            "product" => "PRODUCT", // optional value
            "custAccNo" => "ACC NO", // optional value
            "txnCurrency" => "INR"
        ],
        "custDetails" => [
            "custEmail" => "[email protected]",
            "custMobile" => "0000000000"
        ],
        "extras" => [
            "udf1" => "", // optional value
            "udf2" => "", // optional value
            "udf3" => "", // optional value
            "udf4" => "", // optional value
            "udf5" => "" // optional value
        ]
    ]
];

$payment = new Atom();

$atomTokenId = $payment->createTokenId($data);

Calling Javascript API

Use the Atom Token Id to call the javascript API

<button onclick="pay()">Pay</button>

<script src="CDN provided by NTT DATA"></script>

<script> 
    const pay=()=>{
        const options = {
            atomTokenId: "atomTokenId ", // token id get from atom
            merchId: "000000", // merchant id
            custEmail: "customer-email",
            custMobile: "customer-mobile",
            returnUrl: "your-response-url"
        }
        const atom = new AtomPaynetz(options,'uat');
    }
</script>

Mandatory JavaScript CDN link will be provided by NTT DATA and will be different for production and testing environments.

Check Transaction Status

check the status of the payment using transactionStatus($merTxn,$amt,$date) method.

$payment = new Atom();

$response = $payment->transactionStatus($merchantTransactionId,$amount,$date);

Decrypt Response

use decrypt($data) to decrypt the response message from Atom.

$payment = new Atom();

$jsonData = $payment->decrypt($encryptedData,$digest_algo="sha512");

default hashing algorithm used is sha512 and can be use different algorithm based as per NTT DATA's specifications.

Star History Chart