1.1.3 • Published 4 years ago

ng6-atom-paynetz v1.1.3

Weekly downloads
76
License
SEE LICENSE IN LI...
Repository
github
Last release
4 years ago

ng6-atom-paynetz

This documentaion briefly describes the mode/ manner of technical integration between Atom Payment Gateway and Merchant Website in respect of powering online transactions by using Angular 6. This library is only tested :

  • Angular CLI: 6.0.8
  • Node: 10.16.0
  • OS: win32 x64
  • Angular: 6.1.10

Process

  • Customer logs-in at the merchant website and selects the product / service to purchase. Based on the purchase amount, appropriate transaction amount would be computed at the merchant website.

  • Customer then decides to make payment at merchantwebsite.

  • Merchant website will log the order by generating a unique Order Number; and establish a connection with the Atom Electronic Payment Interface

  • The customer lands on the Atom Payment Page where the customer is displayed with various ‘payment options’ that can be used. These would include–Credit Card; Debit Card; Online Net Banking.

  • Customer chooses the payment option at Atom Payment Page, and is further redirected to the page of that respective bank. Customer then enters the relevant authentication details i.e. User ID/ Card Number/ Password at the bank’s website; and then is requested to authorizethe payment amount.

  • Customer’s account is debited and the Customer is then redirected back to the designated Return URL at Merchant website where the status of the transactions is displayed to the customer.

  • The Atom Electronic Payment Interface will provide the return response to the designated Merchant return URL. Merchant can use this response to update its system and display the transaction status to the customer.

  • The Atom Electronic Payment Interface also generates a unique Transaction ID against each order number that isreceived.

Create an Angular 6 App

Run ng new myAtomApp

Library Installation

Install npm install js-sha512 and run npm i ng6-atom-paynetz to install this library.

Component Configuration

In src/app/app.component.ts

Import : import { ProcessPaymentComponent } from 'ng6-atom-paynetz';

Set the values in your Request Componen Class as below :

  private response = '';
  private amount: any;
  private mmp_txn: any;
  private mer_txn: any;
  private prod: any;
  private date: any;
  private bank_txn: any;
  private f_code: any;
  private clientcode: any;
  private bank_name: any;
  private merchant_id: any;
  private discriminator: any;
  private desc: any;
  private udf9: any;
  private signature: any;


  constructor() {

    const _atom = new ProcessPaymentComponent();
    _atom.setURL('https://paynetzuat.atomtech.in/paynetz/epi/fts');
    _atom.setLoginid('197');
    _atom.setPassword('Test@123');
    _atom.setClientCode('NAVIN');
    _atom.setCurrency('INR');
    _atom.setAmount('50.00');
    _atom.setCustomerAddress('Address');
    _atom.setCustomerEmail('ankit@gmail.com');
    _atom.setCustomerMobile('1234567890');
    _atom.setCustomerName('Ankit');
    _atom.setProdId('NSE');
    _atom.setCustAcc('000000');
    _atom.setRequestHaskKey('KEY123657234');
    _atom.setReturnUrl('http://localhost:4200/response');
    _atom.setTxnId('234');
    _atom.setTxnType('NBFundTransfer');
    _atom.setResponseHashKey('KEYRESP123657234');
    _atom.setTxnsCamt('0');
    _atom.payNow().then((v) => {
      const data1 = v;
      if (data1['status']) {
        this.amount = data1['data'].amt;
        this.mmp_txn = data1['data'].mmp_txn;
        this.mer_txn = data1['data'].mer_txn;
        this.prod = data1['data'].prod;
        this.date = data1['data'].date;
        this.bank_txn = data1['data'].bank_txn;
        this.f_code = data1['data'].f_code;
        this.clientcode = data1['data'].clientcode;
        this.bank_name = data1['data'].bank_name;
        this.merchant_id = data1['data'].merchant_id;
        this.discriminator = data1['data'].discriminator;
        this.desc = data1['data'].desc;
        this.udf9 = data1['data'].udf9;
        this.signature = data1['data'].signature;

        const checkResponse = _atom.validateResponse(
          this.mmp_txn,
          this.mer_txn,
          this.f_code,
          this.prod,
          this.discriminator,
          this.amount,
          this.bank_txn,
          this.signature
        );
        console.log(checkResponse);
        if (checkResponse.status) {
          if (this.f_code === 'F') {
            this.response = 'Payment is Failed ';
          } else if (this.f_code === 'C') {
            this.response = 'Payment is cancelled by user ';
          } else if (this.f_code === 'Ok') {
            this.response = 'Payment is sucessfull';
          } else {
            this.response = 'Payment is Failed ';
          }
        } else {
          this.response = 'Payment validatio result is false, response is not proper';
        }
      } else {
        this.response = data1['data'];
      }

    }).catch((e) => {
      console.log(e);
    });


  }

Methods

Method nameDefaultMandatoryDescription
setURLyesAtom provided URL or IP for test : https://paynetzuat.atomtech.in/paynetz/epi/fts
setLoginidyesLogin ID obtained on registration of Merchant URL's and IP for test : 197
setPasswordyesPassword obtained on registration of Merchant URL's and IP for test : Test@123
setClientCodeyesAtom provide you the client code, for test :Navin
setCurrencyyesIt sets the currency, always INR
setAmountyesIt sets the amount you want to pay, for test 50.00
setCustomerAddressyesIt will set the customers address
setCustomerEmailyesIt will set the customers email
setCustomerMobileyesIt will set the customers mobile
setCustomerNameyesIt will set the customers name
setProdIdyesIt will set the product id and you will get the details from atom, for test use NSE
setCustAccyesIt will set the customer account and you will get the details from atom if you are a reseller else pass '000000', for test use '000000'
setRequestHaskKeyyesIt will set Request Hash Key, you will get this value from atom for test use KEY123657234
setResponseHaskKeyyesIt will set Response Hash Key, you will get this value from atom for test use KEYRESP123657234
setReturnUrlyesIt will set Return URl, you will the response from atom in this page
setTxnIdyesIt will set the transaction id and it should be unique
setTxnTypeyesIt will set the transaction type e.g. CC,DC,NBFundTransfer
setTxnsCamtyesIt will set the Customer Account No. if you are Broker or Reseller for test use "0"
setMddnoSet paymenthod you want to use. NB for Netbanking, CC for Credit Cards etc..
setBankIdnoSet Bank id for net banking etc..
payNowIt is a promise function which will resolve the reponse from the payment gateway.
validateThis method will validate your response.

Further help

To get more help on this library please visit https://www.atomtech.in

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.0.3

5 years ago

1.1.0

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago