paycode

1.0.9 • Public • Published
var Paycode = require('paycode')
var clientId = ""; // Get your Client ID from https://developer.interswitchng.com
var secret = ""; // Get your Client Secret from https://developer.interswitchng.com
var ENV = "SANDBOX"; // or PRODUCTION
var paycode = new Paycode(clientId, secret, ENV);
var accessToken = ""; // Get User Access Token from Interswitch Passport with OAuth2. 
// See sample code to get Access Token for paycode: 
// https://github.com/techquest/interswitch_javascript/blob/master/server_sdks/paycode.js

var handleResponse = function(err, response, responseData)
{
  console.log("HTTP Response Code: " + response.statusCode);
  console.log("Response body: " + responseData);
  var httpRespCode =  response.statusCode;
  var json = JSON.parse(body);
  if(httpRespCode == '200' || httpRespCode == '201')
  {
    var paycode = json.payWithMobileToken;
    console.log("Paycode: " + paycode);
  } 
}

var handleGetEWalletResponse = function(err, response, body)
{
 var httpRespCode =  response.statusCode;
 var json = JSON.parse(body);

 if(httpRespCode == '200')
 {
  var paymentToken = json.paymentMethods[1].token; // Payment Token (card)
  var expDate = "1909"; // Payment Token (card) Expiry Date. Format YYMM
  var cvv = "123"; // Payment Token (card) CVV
  var pin = "1234"; // Payment Token (card) PIN
  var pwmChannel = paycode.ATM; // Channel where Paycode will be used. Other options: paycode.POS, paycode.AGENT
  var tokenLifeInMin = "90"; // Expiry Time for Paycode in minutes
  var oneTimePin = "1234"; // Only useful for ATM. No need for this if channel is POS
  var amt = "500000"; // Paycode amount. Minor denomination e.g. 500000 = 5000.00
  var tranType = paycode.WITHDRAWAL; // Transaction types paycode will be used for. Other options:  paycode.PAYMENT
  var fep = ''; // This will be assigned to you by Interswitch

  // Genereate Paycode
  paycode.generateWithEWallet(accessToken, paymentToken, expDate, cvv, pin, amt, fep, tranType, pwmChannel, tokenLifeInMin, oneTimePin, handleResponse);
 }
};

/ /Get eWallet
paycode.getEWallet(accessToken, handleGetEWalletResponse);

Installation

$ npm install paycode

Features

Note, this API requires a user access token. This requires an OAuth 2 redirect to Interswitch Passport. See sample code to get Access Token for paycode: https://github.com/techquest/interswitch_javascript/blob/master/server_sdks/paycode.js

  • Sends request to Paycode API
  • Packages Interswitch Sensitive Data (Card, PIN, CVV, Exp Date)
  • Retrieves customer's Payment Token - getEWallet()
  • Generates Paycode - generateWithEWallet()

Readme

Keywords

none

Package Sidebar

Install

npm i paycode

Weekly Downloads

0

Version

1.0.9

License

ISC

Last publish

Collaborators

  • interswitch