Skip to content

DHFinance/dhf-pay-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
tsaritov_d
May 25, 2022
e46a18f · May 25, 2022

History

45 Commits
Feb 24, 2022
May 25, 2022
Apr 27, 2022
Feb 24, 2022
Feb 24, 2022
Feb 24, 2022
Feb 25, 2022
Feb 25, 2022
May 18, 2022
Feb 25, 2022
Mar 9, 2022
May 25, 2022
Feb 24, 2022
Mar 2, 2022

Repository files navigation

DH Pay NodeJS

NodeJS SDK to integrate with DHFinance in minutes.

Getting Started

  1. Sign up - Before you begin, you need to sign up for your payment gateway account (https://pay.dhfi.online as example) and retrieve your store API token (add Store - APIKey Generate) and API_URL (https://pay.dhfi.online/api as example).
  2. Requirements – To run the SDK, your system will need to have Node JS >= 14 and npm >= 6 installed .
  3. Install
 npm i dhf-pay-js -S

Import

 import DHFPay from "dhf-pay-js";

Create client

 const client = new DHFPay({
          AUTH_TOKEN: '#TOKEN#',
          API_URL: '#API_URL#' 
      });

Create payment

   const createParams: CreatePaymentDTO = {
         amount: 2500000000, 
         comment: "test payment"
   }
   const result = await client.createPayment(createParams)

Payment status

   const paymentId = 1;
   const result: PaymentInterface = await client.getPayment(paymentId)

Payments list

   const result: PaymentInterface[] = await client.getPayments();

Transactions list

   const result: TransactionInterface[] = await client.getTransactions();

Note: amount should be in motes, for example 1 cspr = 1000000000 in motes

Interfaces

   interface PaymentInterface {
       id: number
       datetime: string
       amount: string
       status: 'Not_paid' | 'paid' | string
       comment: string
       text: string
       store: StoreInterface
   }

  interface StoreInterface {
      id: number
      url: string
      name: string
      wallet: string
      description: string
      blocked: boolean
  }

  interface TransactionInterface {
      id: number
      status: string
      email: string
      updated: string
      txHash: string
      sender: string
      amount: string
      payment: PaymentInterface
  }

  interface CreatePaymentDTO {
      amount: number
      comment: string
  }

Run tests

For integrational tests you need to provide store api token. 
Token could be generated after registration on https://pay.dhfi.online/
// src/e2e.test.ts
const client = new DHFPay({
    AUTH_TOKEN: '#TOKEN#'
});

npm test

Local Build

Node.js 13-16

 npm run build

Browser Support

Chrome Firefox Safari Opera Edge IE
Latest ✔ Latest ✔ Latest ✔ Latest ✔ Latest ✔ 11 ✔