smartypay-node-sdk
TypeScript icon, indicating that this package has built-in type declarations

2.18.0 • Public • Published

SMARTy Pay Node SDK

Simple library for creating invoices on backend side

Installation

npm i smartypay-node-sdk

Usage

Create invoice

See docs

import {SmartyPayAPI} from 'smartypay-node-sdk';

async function createInvoice() {
  
  // call API 
  const api = new SmartyPayAPI({
    secretKey: 'YOUR_SECRET_KEY',
    publicKey: 'YOUR_API_KEY',
  });
  
  const invoice = await api.invoices.createInvoice({
    expiresAt: new Date(Date.now() + 1000 * 60 * 60), // after 1 hour from now
    amount: '1.99',
    token: 'bUSDT',
    metadata: 'YOUR_PURCHASE_ID' // optional
  });
  
  // result invoice id
  const invoiceId = invoice.id;
    
  // params to open invoice
  const params = new URLSearchParams();
  params.set('invoice-id', invoiceId);
    
  // additional params:
  // params.set('name', 'Item Name to Buy');
  // params.set('success-url', 'https://...');
  // params.set('fail-url', 'https://...');

  // final url be like "https://checkout.smartypay.io/invoice?invoice-id=XXXXXXX"
  const urlToRedirect = 'https://checkout.smartypay.io/invoice?' + params.toString();
}

Create client's recharge address

See docs

import {SmartyPayAPI} from 'smartypay-node-sdk';

async function createRechargeAddress(customerId: string) {
  
  // call API
  const api = new SmartyPayAPI({
    secretKey: 'YOUR_SECRET_KEY',
    publicKey: 'YOUR_API_KEY',
  });
  
  const resp = await api.recharges.createRechargeAddress({
    token: 'bUSDT',
    customerId: customerId,
  });
  
  // recharge address for your customerId
  const rechargeAddress = resp.address;
}

Check webhook signature

See docs

function isValidWebhook( resp: Respone){

  // See: https://docs.smartypay.io/api/webhooks
  const body: string = resp.body;
  const signature: string = resp.heades['x-api-digest'];
  
  return SmartyPayAPI.utils.isValidSignature(body,  signature, 'YOUR_SECRET_KEY');
}

Full API docs

Checkout our TypeDocs

Build steps

Clone repository into your dir

cd your_dir
git clone https://github.com/smarty-pay/smartypay-node-sdk

Build

npm install
npm run build

Package Sidebar

Install

npm i smartypay-node-sdk

Weekly Downloads

47

Version

2.18.0

License

MIT

Unpacked Size

88.6 kB

Total Files

27

Last publish

Collaborators

  • edol