How to get Transactions of a wallet using Moralis

Chikku George
Coinmonks
2 min readDec 8, 2022

--

In this tutorial, we’ll go over utilizing the Moralis Transaction API and NodeJS to retrieve all native transactions of a wallet.

To set up the application, follow the instructions below.

  1. Create a package.json file as below
npm init -y

2. Install moralis and @moralisweb3/evm-utils dependency as follows

npm i moralis @moralisweb3/evm-utils

3. Your package.json should contain the following

{
"name": "moralis-transactions",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"start": "node server.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"@moralisweb3/evm-utils": "^2.7.4",
"dotenv": "^16.0.3",
"express": "^4.18.2",
"moralis": "^2.7.4"
}
}

4. Create a .env file which contains the Moralis API_KEY

API_KEY = “Your Moralis API Key”

5. Start the server in server.js

require('dotenv').config();
const express = require('express');

const app = express();

app.use(express.json());

app.listen(8080, async () => {
console.log('server started');
});

6. Start Moralis in server.js

require('dotenv').config();
const express = require('express');
const Moralis = require('moralis').default;

const app = express();
const { API_KEY } = process.env;

app.use(express.json())

async function startMoralis() {
try{
await Moralis.start({
apiKey: API_KEY,
});
}catch(err) {
console.log(err);
}
}

app.listen(8080, async () => {
startMoralis();
console.log('server started');
})

7. Add a GET endpoint /transactions to get all the transactions of a wallet

require('dotenv').config();
const express = require('express');
const Moralis = require('moralis').default;
const { EvmChain } = require('@moralisweb3/evm-utils');

const app = express();
const { API_KEY } = process.env;

app.use(express.json())

async function startMoralis() {
try{
await Moralis.start({
apiKey: API_KEY,
});
}catch(err) {
console.log(err);
}
}

app.get('/transactions', async (req, res) => {
const chain = EvmChain.ETHEREUM;
const { address } = req.body;
try{
const response = await Moralis.EvmApi.transaction.getWalletTransactions({
address,
chain,
});
res.status(200).send(response.toJSON());
}catch(err) {
console.log(err);
}
})

app.listen(8080, async () => {
startMoralis();
console.log('server started');
})

8. Test the endpoint using Postman

The test result is given below. Give the wallet address in req.body. The transactions are sorted by block number in descending order. In the response, the most recent transaction will be shown first.

Summary

Up to this point, we have talked about utilizing the Moralis Transaction API and NodeJs to obtain all the wallet transactions. Open a Moralis account and play around with their APIs.

New to trading? Try crypto trading bots or copy trading

--

--

Coinmonks
Coinmonks

Published in Coinmonks

Coinmonks is a non-profit Crypto Educational Publication.

Chikku George
Chikku George

Written by Chikku George

Software Engineer | ReactJs | NodeJs | Blockchain Enthusiast