PaymentsServer Wallet v2
With Server Wallet, you can distribute payments to hundreds or even millions of recipients with just a few lines of code.
API Wallets empower you to orchestrate complex financial operations with ease and security, opening the doors to applications that were previously impractical.
Acknowledgments
This project leverages the Gaslite Drop contract from Pop Punk LLC Gaslite for mass transfers. Special thanks to HeimLabs for foundational work on the original Paymaker frontend and backend that informed this sample app.Prerequisites
- Git
- Bun
- Coinbase Developer Platform (CDP) Account
- Docker for local Neon DB
Getting Started
0. Deploy the Drop Contract This application uses the Gaslite Drop smart contract for the batch transfers. The.env.example
file contains the contract address for the Gaslite Drop contract deployed on the Base Sepolia testnet. If you want to deploy your own contract, you can clone the Gaslite Core, and deploy by calling:
- Clone the repository:
- Install dependencies:
- Set up your environment variables - You will need to do the following
- Copy .env.example to .env.local
- Get an API Key ID and Secret from Coinbase Developer Platform portal
- Generate a WalletSecret from the CDP Portal Wallet Page
- Navigate to the Node page on the CDP Portal to get a Base Sepolia RPC URL for BASE_SEPOLIA_NODE_URL
- Generate a secret for NEXTAUTH_SECRET via:
- Generate a ClientId and Secret for either Sign in with Google or Sign in with Github (or both)
- Start the local Postgres/Neon database:
- Start the development server: