UNPKG

cngn-typescript-library

Version:

A lightweight Typescript library to give you the best experience with managing your cngn merchant account

145 lines (128 loc) 4.85 kB
import {cNGNManager} from "./services/cngn.manager"; import {Network} from "./utils/types"; const manager = new cNGNManager({ apiKey: "cngn_live_gMtkVsc8AeHDg1nfg2lRl76o2lfZ6MpudNck38fMowEoBEeTfM2", encryptionKey: "0GwD2Hp/jfGYPV2ZMMn1X4joue/EwMiGApf1WObvmIbCIANvv0wGK8dPTxRna0Y=", privateKey:"-----BEGIN OPENSSH PRIVATE KEY-----\n" + "b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW\n" + "QyNTUxOQAAACAn3FuHnlgAxqBhJL9oS/GWyfVCa0gKxA/XuTH0v4DlPwAAAKAzJhNzMyYT\n" + "cwAAAAtzc2gtZWQyNTUxOQAAACAn3FuHnlgAxqBhJL9oS/GWyfVCa0gKxA/XuTH0v4DlPw\n" + "AAAECTB9ZmDfCRV8+7+Kafw3je1M8SWV+O/+pnaExmcQTGOifcW4eeWADGoGEkv2hL8ZbJ\n" + "9UJrSArED9e5MfS/gOU/AAAAGGV6dW1haGplcmVtaWFoQGdtYWlsLmNvbQECAwQF\n" + "-----END OPENSSH PRIVATE KEY-----", }); const runner = async () => { try { console.log("---------------TEST BALANCE----------------") const balance = await manager.getBalance() console.log("Balance Response: ", balance.data) } catch (e:any) { console.error("Error in retrieving balance ", e) } try { console.log("---------------TEST TRANSACTION HISTORY----------------") const history = await manager.getTransactionHistory(1, 20) console.log("Transaction History Response: ", history.data) } catch (e:any) { console.error("Error in fetching transaction history ", e?.response?.data?.message) } try { console.log("---------------VERIFY REF BALANCE----------------") const transaction = await manager.verifyWithdrawal("dba34aa3-d9ea-4ecd-a766-7183431a6863") console.log("transaction Response: ", transaction.data) } catch (e:any) { console.error("Error in retrieving balance ", e?.response?.data?.message) } try { console.log("---------------TEST WITHDRAWAL----------------") const withdraw = await manager.withdraw({ address: "GAKRER5S7DNP36JOVNFFD22QPPRGN5P3RY44IQMMPMRLIGC6SVPKHIJP", network: Network.xbn, amount: 5900, shouldSaveAddress: true }) console.log("Withdrawal Response: ", withdraw.data) } catch (e:any) { console.log(e) } try { console.log("---------------REDEEM ASSETS----------------") const redeem = await manager.redeemAsset({ amount: 1000000, accountNumber: "3069839406", bankCode: "011", }) console.log("Redeem Asset Response: ", redeem) } catch (e) { console.log("error handling redeem: ", e) } try { console.log("---------------VIRTUAL ACCOUNT----------------") const virtualAccount = await manager.createVirtualAccount({ bank_code: "011", provider: "bellbank" }) console.log("virtualAccount Response: ", virtualAccount) } catch (e) { console.error(e) } // // // console.log("---------------UPDATE EXTERNAL ACCOUNT----------------") // await manager.updateExternalAccounts({ // walletAddress: { // xbnAddress: "GBMEXW2INX6FFBTHVJLH3AFHDD76BAMNQCQZTIJDGWE4ZUC7CVMSYZBM", // } // }).then((response) => { // console.log("Updated External Accounts: ", response.data) // }). // catch((e) => { // console.error("Error updating external accounts: ", e) // }) // // // // // try { // console.log("---------------GET BANK LISTS----------------") // const listing = await manager.getBanks() // console.log("Bank List Response: ", listing.data) // } // catch (e:any) { // console.error("Error in fetching bank lists ", e?.response?.data?.message) // } // // // // try { // console.log("---------------SWAP----------------") // const swapAssets = await manager.swapAsset({ // destinationNetwork: Network.atc, // originNetwork: Network.eth, // destinationAddress: "0x391e03868AfDa6ea9e0E3d4cDB5F6f09227d4B7C" // }) // console.log("Swap Response: ", swapAssets.data) // } // catch (e) { // console.log("Error processing swap operation: ", e) // } try { const swapQuote = await manager.getSwapQuote({ originNetwork: Network.eth, destinationNetwork: Network.atc, amount: 1000, destinationAddress: "0x391e03868AfDa6ea9e0E3d4cDB5F6f09227d4B7C", }); console.log('swapQuote', swapQuote); } catch (error) { console.error('Error fetching swap quote:', error); } } runner()