Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

custodial-wallet

Package Overview
Dependencies
Maintainers
0
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

custodial-wallet

This Node.js application tracks native cryptocurrency balances (such as ETH, BNB, MATIC, TRX) and specific token balances (ERC-20, BEP-20, TRC-20) for given wallet addresses on Ethereum, Binance Smart Chain (BSC), Polygon, and Tron networks.

  • 1.0.3
  • latest
  • npm
  • Socket score

Version published
Maintainers
0
Created
Source

Create EVM & Tron Wallet and Track Balance

This Node.js application tracks native cryptocurrency balances (such as ETH, BNB, MATIC, TRX) and specific token balances (ERC-20, BEP-20, TRC-20) for given wallet addresses on Ethereum, Binance Smart Chain (BSC), Polygon, and Tron networks.

Features

  • Wallet Creation: Generate new wallet addresses for Ethereum-compatible (BSC, Polygon) and Tron networks.
  • Native Balance Tracking: Track the native cryptocurrency balances (ETH, BNB, MATIC, TRX) of specific wallet addresses.
  • Token Balance Tracking: Track balances of specific tokens (ERC-20, BEP-20, TRC-20) for specified wallet addresses.
  • Automatic Payment Tracking: Automatically track incoming payments and token balances.

Technologies Used

  • Node.js: Backend framework for running the server.
  • Express.js: Web framework for handling HTTP requests.
  • ethers.js: Library for interacting with Ethereum-compatible blockchains (BSC, Polygon).
  • TronWeb: Library for interacting with the Tron blockchain.

Installation

  1. Install package:

    npm i custodial-wallet
    
  2. Install dependencies:

    npm install
    
  3. Start the server:

    node index.js
    

    The server will start running on http://localhost:3000.

API Endpoints

1. Create Wallet

  • URL: /create-wallet
  • Method: GET
  • Description: Generates new wallet addresses for Ethereum-compatible networks (BSC, Polygon) and Tron network.

Example Response:

{
    "bsc": {
        "address": "0xYourBscOrPolygonAddress",
        "privateKey": "YourPrivateKey"
    },
    "polygon": {
        "address": "0xYourPolygonAddress",
        "privateKey": "YourPrivateKey"
    },
    "tron": {
        "address": "TYourTronAddress",
        "privateKey": "YourPrivateKey"
    }
}

2. Start Tracking

  • URL: /start-tracking

  • Method: GET

    • Query Parameters: address: The Ethereum/BSC/Polygon wallet address. tronAddress: The Tron wallet address. tokenAddress: The smart contract address of the token you want to track. tokenType: The type of token (ERC20, BEP20, TRC20).

    Description: Starts tracking native and token balances for the specified wallet addresses.

Example Request:


GET /start-tracking?address=0xYourBscOrPolygonAddress&tronAddress=YourTronAddress&tokenAddress=0xYourTokenAddress&tokenType=ERC20

Example Response:


{
    "message": "Started tracking payments and token balance for address 0xYourBscOrPolygonAddress",
    "balances": {
        "bsc": "0.1234",
        "polygon": "0.5678",
        "tron": "9.8765",
        "token": "1000.00"
    }
}

3. Check All Balances

  • URL: /check-all-balances

  • Method: GET

  • Query Parameters:

    • address: The Ethereum/BSC/Polygon wallet address.
    • tronAddress: The Tron wallet address.
    • tokenAddress: The smart contract address of the token you want to track.
    • tokenType: The type of token (ERC20, BEP20, TRC20).

    Description: Manually checks and returns the current balances for native currencies and specified tokens.

Example Request:


GET /check-all-balances?address=0xYourBscOrPolygonAddress&tronAddress=YourTronAddress&tokenAddress=0xYourTokenAddress&tokenType=ERC20

Example Response:


{
    "message": "Balances for address 0xYourBscOrPolygonAddress",
    "balances": {
        "bsc": "0.1234",
        "polygon": "0.5678",
        "tron": "9.8765",
        "token": "1000.00"
    }
}

4. Tracking Payments

The server will automatically track and log new payments and token balance changes every minute.

  • Polling Interval: Every 60 seconds.

How It Works

  • Create Wallets: You can generate new wallet addresses for BSC, Polygon, and Tron using the /create-wallet endpoint.
  • Start Tracking: Start tracking a wallet's native and token balances using the /start-tracking endpoint.
  • Check Balances: Manually check all balances using the /check-all-balances endpoint.
    • ** Automatic Tracking:** The server checks for new payments and token balance changes every minute and logs any changes.

Limitations

  • The application currently tracks only one token at a time per request.
  • For tracking multiple tokens automatically, integration with an external service like Etherscan or BscScan would be required to fetch all tokens associated with a wallet.

Future Enhancements

  • Automatic tracking of all tokens held by a wallet address.
  • Integration with external APIs to fetch and display all tokens associated with a wallet.
  • Enhanced error handling and logging.

Author

@nadcablabs

Keywords

FAQs

Package last updated on 10 Sep 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc