wuon / moneryze

A wrapper for Node.js projects to access the Moneris API.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

moneryze

NPM version  License: MIT  Codecov  npm

Introduction | Installation | Usage | License | tsdocs.dev

Important

Moneryze v2.x.x is out! There are some major changes which include typescript support and removing the limitation(s) on the previous supported transactions. See the full changelog here.

Introduction

A wrapper to access the Moneris API, forked from AlejandroEsquivel's great work (AlejandroEsquivel/moneris-js), which was also based on shaynair's original implementation (shaynair/moneris-js).

The hope for this module is to create clean, robust, promise wrapped queries which modernize the original implementations from predecessors. Shaynair's work supported generalized queries to Moneris, and Alejandro's work handled the imperfect formatting. My hope is to extend and complete the wrapper, transforming the project into something easy to implement by any developer.

Installation

With npm:

npm install moneryze

Note

The minimum node version to utilize this package is v18.x.x

Usage

The freeform usage allows developers to interface freely with the Moneris API. The developer is responsible for constructing the payload and providing the correct transaction type. Follow the example below to see it being performed on the res_add_cc transaction.

Note

To see the full list of what can be interfaced, it is highly recommended you examine the integration guide from Moneris here.

import { Moneryze } from "moneryze";

const moneryze = new Moneryze({
  appName: "Test",
  storeId: "store5",
  apiToken: "yesguy",
  cryptType: "7",
  isTest: true,
  countryCode: "CA",
});

moneryze.send("res_add_cc", {
  pan: "4242424242424242",
  expdate: "2011",
});

Configuration options

export type MoneryzeConfig = {
  appName?: string;
  storeId: string;
  apiToken: string;
  cryptType?: string;
  isTest?: boolean;
  countryCode: Country;
  statusCheck?: boolean;
};

const config: MoneryzeConfig = {
  // Describe options here!
};

const moneryze = new Moneryze(config);
  • appName: Optional. If given, will add appName as a prefix to receipt names (eg: Test-Purchase-1703974946117-1529). Will default to moneryze if not specified.
  • apiToken: Required. Your API token.
  • storeId: Required. Your store ID.
  • cryptType: Optional. If given, will set the default crypt_type for all transactions. 7 by default.
  • isTest: Optional. If true, uses Moneris Test endpoints. You can get a api_token and store_id for this endpoint from Moneris's Documentation. false by default.
  • countryCode: Required. Defines the region in which endpoint to interface with Moneris. Currently only suppports CA (Canada) or US (United States).
  • statusCheck: Optional. Unsure what this does here

License

MIT © wuon

About

A wrapper for Node.js projects to access the Moneris API.

License:MIT License


Languages

Language:TypeScript 100.0%