Skip to content

boyko/epaybg-node-utils

Repository files navigation

Node.js functions for epay.bg

Build Status

An unofficial library for parsing payment status messages and for creating payment requests with epay.bg. See their API documentation for details.

Installation

// npm
npm install epaybg-node-utils --save

// yarn
yarn add epaybg-node-utils

Create a payment request

const { createPaymentRequestData } = require('epaybg-node-utils');

const secret = 'epaybg-secret';
const data = {
  min: 'some-merchant-id',
  amount: '32.30',
  exp_time: '201902011230',
  currency: 'BGN',
  invoice: '0001',
};

createPaymentRequestData(data, secret);

Validate a message

const {validate} = require('epaybg-node-utils');

const message = {
  encoded: "SU5WT0lDRT0xMTpTVEFUVVM9UEFJRDpQQVlfVElNRT0yMDE4MDYwMjEyMzA6U1RBTj0xMjM0NTY6QkNPREU9MTIzNDU2CgogICAgICAgIElOVk9JQ0U9MTI6U1RBVFVTPURFTklFRAoKICAgICAgICBJTlZPSUNFPTEzOlNUQVRVUz1FWFBJUkVE",
  checksum: "16b98ed563cafb2fc5b60d8d8f44e8c2e7cf66c9"
}

validate(message);

Parse a payment status message

const { parseMessage } = require('epaybg-node-utils');

// Data encoded in message.encoded
//`INVOICE=11:STATUS=PAID:PAY_TIME=201806021230:STAN=123456:BCODE=123456\n
//INVOICE=12:STATUS=DENIED\n
//INVOICE=13:STATUS=EXPIRED`

const message = {
  encoded: "SU5WT0lDRT0xMTpTVEFUVVM9UEFJRDpQQVlfVElNRT0yMDE4MDYwMjEyMzA6U1RBTj0xMjM0NTY6QkNPREU9MTIzNDU2CgogICAgICAgIElOVk9JQ0U9MTI6U1RBVFVTPURFTklFRAoKICAgICAgICBJTlZPSUNFPTEzOlNUQVRVUz1FWFBJUkVE",
  checksum: "16b98ed563cafb2fc5b60d8d8f44e8c2e7cf66c9"
}

parseMessage(message);

About

Node.js utilities for communication with epay.bg payment system.

Resources

License

Contributing

Stars

4 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors