Skip to content
Back to skills

Spraay Batch Payments

ASecurity

Send crypto to multiple recipients in a single transaction across 15 chains. Use when the user asks to batch-send tokens, run payroll, airdrop, distribute bounties, or multi-send on Base, Ethereum, Arbitrum, Polygon, BNB Chain, Avalanche, Solana, Stellar, Bitcoin, XRP Ledger, Stacks, or Bittensor. Supports ETH, ERC-20s, SOL, SPL tokens, XLM, XRP, BTC, TAO, and STX.

  • 4 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 12, 2026
blockchaintypescriptgobashgitapi

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 12, 2026

npx -y skills add aibot88/sec_skill_store --skill spraay-batch-payments --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Spraay Batch Payments?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Spraay Batch Payments
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aibot88-spraay-batch-payments/badge)](https://www.skillsdirectory.com/skills/aibot88-spraay-batch-payments)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: spraay-batch-payments
description: Send crypto to multiple recipients in a single transaction across 15 chains. Use when the user asks to batch-send tokens, run payroll, airdrop, distribute bounties, or multi-send on Base, Ethereum, Arbitrum, Polygon, BNB Chain, Avalanche, Solana, Stellar, Bitcoin, XRP Ledger, Stacks, or Bittensor. Supports ETH, ERC-20s, SOL, SPL tokens, XLM, XRP, BTC, TAO, and STX.
license: MIT
metadata:
  author: plagtech
  version: "1.0.0"
---

# Spraay batch payments

Send tokens to up to 200+ recipients in a single transaction. Spraay batch contracts are deployed across 15 chains with a live gateway at `gateway.spraay.app`.

Protocol fee: 0.3% of the total batch amount. Gas savings: ~80% compared to individual transfers.

## When to use

- User wants to send crypto to multiple wallets at once
- User asks about payroll, airdrops, bounty distribution, or DAO payouts
- User mentions "batch payment", "multi-send", "mass transfer", or "spray"
- User needs to pay a list of addresses from a CSV or array

## Batch types

### Native token batch
Send ETH, MATIC, BNB, AVAX, SOL, XLM, XRP, BTC, TAO, or STX to multiple recipients in one transaction.

### ERC-20 / SPL token batch
Send USDC, DAI, WETH, or any ERC-20 token (EVM chains) or SPL token (Solana) to multiple recipients. Automatic approval handling on EVM.

### Equal-amount batch
Send the same amount to every recipient. Specify one amount and a list of addresses.

### Variable-amount batch
Send different amounts to each recipient. Each entry has its own address and amount.

### CSV import batch
Upload a CSV with columns `address,amount` for large-scale distributions (200+ recipients per transaction).

## Supported chains

### EVM chains (smart contract batch)

| Chain | ID | Contract |
|---|---|---|
| Base | 8453 | `0x1646452F98E36A3c9Cfc3eDD8868221E207B5eEC` |
| Ethereum | 1 | `0x15E7aEDa45094DD2E9E746FcA1C726cAd7aE58b3` |
| Arbitrum | 42161 | `0x5be43aA67804aD84fcb890d0AE5F257fb1674302` |
| Polygon | 137 | `0x6d2453ab7416c99aeDCA47CF552695be5789D7ff` |
| BNB Chain | 56 | `0x3093a2951FB77b3beDfB8BA20De645F7413432C1` |
| Avalanche | 43114 | `0x6A41Fb5F5CfE632f9446b548980dA6cE2d75afcC` |
| Unichain | 130 | `0x08fA5D1c16CD6E2a16FC0E4839f262429959E073` |
| Plasma | 6524490 | `0x08fA5D1c16CD6E2a16FC0E4839f262429959E073` |
| BOB | 60808 | `0xEc8599026AE70898391a71c96AA82d4840C2e973` |

All EVM contracts are verified, use OpenZeppelin ReentrancyGuard and Pausable, and support up to 200+ recipients per transaction.

### Non-EVM chains

| Chain | Method |
|---|---|
| Solana | SPL batch via associated token accounts |
| Stellar | Native multi-operation transactions (up to 99 recipients) |
| Bitcoin | PSBT-based multi-output via bitcoinjs-lib + Mempool.space |
| XRP Ledger | Sequential Payment transactions via xrpl.js |
| Bittensor | `utility.batchAll` for atomic multi-transfers |
| Stacks | Clarity contract: `ST7431QK2YMPP3SQYJXZ3GTB6MJVGF07N2EV9R1F.spraay-batch` |

## Gateway endpoint

```
POST https://gateway.spraay.app/api/v1/batch/execute
```

x402 fee: $0.02 USDC per call (paid automatically via the x402 payment protocol on Base).

### Request

```json
{
  "token": "USDC",
  "recipients": [
    { "address": "0xAlice", "amount": "100.00" },
    { "address": "0xBob", "amount": "50.00" },
    { "address": "0xCarol", "amount": "25.00" }
  ]
}
```

- `token` — token symbol (e.g., "USDC", "ETH"). Omit or use "ETH" for native
- `recipients` — array of `{ address, amount }` objects
- Amounts are in human-readable units (not wei/lamports)
- Returns unsigned transaction data for the user's wallet to sign

### Response

The gateway returns transaction data ready for signing. The 0.3% protocol fee is already factored into the transaction.

## Integration

### x402-client (recommended)

```typescript
import { createClient } from "x402-client";

const client = createClient({
  baseUrl: "https://gateway.spraay.app",
  privateKey: process.env.EVM_PRIVATE_KEY
});

const tx = await client.post("/api/v1/batch/execute", {
  token: "USDC",
  recipients: [
    { address: "0xAlice", amount: "100.00" },
    { address: "0xBob", amount: "50.00" }
  ]
});
```

### Spraay dApp (no code)

Users can batch-send directly at [spraay.app](https://spraay.app) — connect wallet, add recipients or upload CSV, and spray.

### MCP server

The `@plagtech/spraay-x402-mcp` server on Smithery wraps all gateway endpoints for MCP-compatible agents.

```bash
npx @smithery/cli install @plagtech/spraay-x402-mcp
```

## Important notes

- The gateway returns unsigned transaction data — the user's wallet must sign and broadcast
- Always confirm recipients, amounts, and total cost with the user before signing
- The 0.3% protocol fee is deducted from the batch amount automatically
- For non-EVM chains, chain-specific transaction formats are returned (PSBT for Bitcoin, XDR for Stellar, etc.)
- The x402 gateway is optimized for Base and Solana USDC

## Resources

- App: https://spraay.app
- Docs: https://docs.spraay.app
- Gateway: https://gateway.spraay.app
- GitHub: https://github.com/plagtech
- MCP: https://smithery.ai/server/@plagtech/spraay-x402-mcp

Files in this skill

  • SKILL.md5.1 KB
  • source.json909 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.