Beta Test Plan — Node Matrix
Step-by-step guide for beta testers to test n8n workflow execution and AI nodes on indie.money (~1 hour).
Written By pvdyck
Last updated About 6 hours ago
Time: ~1 hour | What you'll do: Test 2 workflows (or 1 combined) on indie.money and report bugs
Before You Start
You need:
- A MetaMask wallet (Base Sepolia testnet — but don't worry, the system is gasless, no ETH needed) or just an email address to sign in
- Access to n8n to build and test workflows — n8n Cloud (n8n.io), n8n self-hosted (local or VPS) all work. You'll use n8n's original executor to verify your workflow runs correctly before publishing it on indie.money.
- You can use ChatGPT/Claude to generate your workflow JSON — just give it the constraints below
Need Help?
There's a messenger chat in the bottom-right corner of the app. I'm on the other end. If you're stuck or blocked, send a message — expect ~10 minutes for a reply.
For bugs and feedback that don't need an immediate answer, use FeatureBase (see below).
Step 1: Sign In & Get Funds (3 min)
- Go to app-staging.indie.money.
- Sign in with MetaMask or email. You'll see your inUSD balance in the header.
- If your balance is low, a faucet button (banknotes icon) glows in the header. Click it — you get 1,000 free test USDC.
- Click your balance → the "Add Funds" modal opens.
- Enter an amount, click "Add Funds". This converts USDC → inUSD (1:1, no fee).
- You should now have $100+ inUSD. You're funded.
💡 Note: Withdrawals: Same modal, click "Need to withdraw instead?" at the bottom. Converts inUSD → USDC with a 10% fee.
❗ Important: Bug reporting: Once logged into the marketplace, you're automatically logged into FeatureBase. All bugs and feedback go to feedback.indie.money. When posting, always select the right board:
- Report a Bug — something is broken or behaves unexpectedly
- Feature Requests — UX/UI improvements and suggestions
- Help & Questions — if you're unsure about intended behavior
In every bug report, include: which step failed, a screenshot, and the Service Address or Execution ID if you have one.
Step 2: Build Your Workflows in n8n (20 min)
You'll create 2 workflows (or 1 combined). Feel free to use AI to generate them — just paste the constraints below into ChatGPT/Claude and ask it to generate n8n workflow JSON.
Constraints
Every workflow must start with a Webhook node and contain 10 to 30 nodes with a wide variety of node types (don't just chain 10 Set nodes — use as many different nodes as possible).
Nodes you CAN use (no API keys needed):
Nodes you must NOT use: HTTP Request, and anything requiring an API key (Google Sheets, Slack, Gmail, Discord, Telegram, etc.) — except OpenRouter which the platform provides for free.
Workflow 1: Data Processing
Build a workflow that processes data without AI. The goal is to test the data/code nodes.
Example idea (or ask AI to generate something similar):
Webhook → Set node (create sample data: array of 5 objects with name, age, score) → Filter (keep only score > 50) → Sort (by age descending) → Code node (add a "grade" field: A if score > 80, B if > 60, else C) → Respond to Webhook (return the result)Tips for the Code node: Only sync JavaScript works. No await, no fetch(), no require(). Just pure data transformation. Example:
for (const item of $input.all()) { const score = item.json.score; item.json.grade = score > 80 ? 'A' : score > 60 ? 'B' : 'C';}return $input.all();Workflow 2: AI Workflow
Build a workflow that uses an AI node. The platform provides an OpenRouter API key — you don't need your own.
The AI model node to use is OpenRouter Chat Model. It defaults to openai/gpt-oss-120b (~$0.00001 per call — essentially free).
If you have an OpenRouter API key, you can and should use it. You can get one for free at openrouter.ai. The platform also provides a fallback key, but using your own helps us test the credential system.
Example idea:
Webhook (receives a "topic" in the body) → LLM Chain (connected to OpenRouter Chat Model) Prompt: "Write 3 bullet points about: {topic}" → Respond to Webhook (return the AI response)Or combine both into a single workflow:
Webhook → Set (create sample product data) → Code (calculate totals) → LLM Chain (summarize the data in plain English) → Respond to WebhookTest Locally First
- Run each workflow in n8n with the "Test workflow" button.
- For the AI workflow, you'll need your own OpenRouter key locally (free at openrouter.ai). On indie.money the platform key handles it.
- Save a screenshot of the successful result and copy the output. You'll compare later.
- Export each workflow as JSON.
Step 3: Publish on indie.money (5 min per workflow)
- Go to /builder and click the deploy button (e.g., "Deploy Your First Agent" or "Deploy Another Agent").
- Upload your workflow JSON by dropping it on the n8n tile (or click it).
- Walk through the steps: sub-workflows (if any) → schema → metadata.
- Fill in a name and description.
- Under Agent Pricing, set One-time Purchase: $0.01 and Per Run: $0.01.
- Add tag
beta-test, press Enter so the badge appears. - Click "Publish to Marketplace" → sign when prompted (the system is gasless — we pay for gas, you don't need any ETH).
- Credential step: If you have an OpenRouter API key, click "Configure My Credentials" and enter it. If not, click "Skip - Producers Will Provide" — the platform key will be used automatically. For the data workflow, there are no credentials to configure.
- Buy a Listing Pass: Click "Buy Listing Pass ($2.99)" — this is paid with your inUSD balance. You need one pass per service.
- Once the pass is purchased, click "List on Marketplace" to make your service visible. (You can also skip and list later from the /builder dashboard.)
Repeat for your second workflow.
Step 4: Purchase & Run Your Services (5 min per workflow)
- Go to the marketplace (/), find your service.
- Click "Deploy Agent" → sign when prompted.
- Go to /producer. Find the service card.
- If you see a "Configure" button, click it to set up credentials. If you see "Turn On", click it to activate the service. If you see "Go Live", click it.
- Billing mode: Use Budget mode (the default) or x402 (caller-pays via USDC). Both are fully supported.
- Once ready, click "Run".
- The Run Agent modal opens:
- If your workflow expects input (like
{"topic": "blockchain"}), type it in the JSON text area. Click "Load example" if the button is there. - Try typing broken JSON first — you should see a validation error.
- Click "Pay with inUSD".
- If your workflow expects input (like
- Wait for the result.
- Click "View Full Details" to see the full execution output.
Step 5: Compare & Report (10 min)
Compare the indie.money output with your local n8n screenshot/output from Step 2.
- Are the results identical?
- Did any node produce different output?
- Did any node fail that worked locally?
If the workflow fails: Try to identify which node caused the failure. Remove that node from the workflow in n8n, re-export, publish a new version, and run again. This helps us pinpoint exactly which node is the problem. Report the failing node on FeatureBase.
Report differences on feedback.indie.money under Report a Bug.
Step 6: UX/UI Feedback (5 min)
Post your impressions on feedback.indie.money under Feature Requests or Help & Questions.
Think about:
- Was anything confusing or hard to find?
- Did error messages make sense when things went wrong?
- Was the Builder → Marketplace → Producer flow intuitive?
- Was the Run Agent modal clear (JSON input, payment, results)?
- Was funding (faucet → Add Funds) straightforward?
- Anything that felt slow, broken, or ugly?