<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Tandjiro</title>
    <description>The latest articles on DEV Community by Tandjiro (@tanjirozx77).</description>
    <link>https://dev.to/tanjirozx77</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3910848%2F472f023e-0adf-45ae-b156-852f6626a408.jpg</url>
      <title>DEV Community: Tandjiro</title>
      <link>https://dev.to/tanjirozx77</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tanjirozx77"/>
    <language>en</language>
    <item>
      <title>FluxA AgentCard: I Gave My AI Agent a Virtual Credit Card — Here's What Happened</title>
      <dc:creator>Tandjiro</dc:creator>
      <pubDate>Tue, 12 May 2026 19:38:03 +0000</pubDate>
      <link>https://dev.to/tanjirozx77/fluxa-agentcard-i-gave-my-ai-agent-a-virtual-credit-card-heres-what-happened-3nb4</link>
      <guid>https://dev.to/tanjirozx77/fluxa-agentcard-i-gave-my-ai-agent-a-virtual-credit-card-heres-what-happened-3nb4</guid>
      <description>&lt;p&gt;I've been building with AI agents for a while now. From basic chatbots to autonomous agents that can research, write, submit, and iterate on their own. But there's always been the same unsolved problem: how does the agent pay for something without me sitting at the keyboard to approve it?&lt;/p&gt;

&lt;p&gt;Last month I tried FluxA. More specifically: I gave my agent an AgentCard — a virtual card the agent can use to transact autonomously, with spending limits I define upfront.&lt;/p&gt;

&lt;p&gt;This is a write-up from real usage, not just reading the docs.&lt;/p&gt;

&lt;p&gt;The Real Problem: Smart Agents, Dumb Payment Flows&lt;/p&gt;

&lt;p&gt;In 2026, we have agents that can:&lt;/p&gt;

&lt;p&gt;Autonomously research competitors&lt;/p&gt;

&lt;p&gt;Send cold emails to 500 leads&lt;/p&gt;

&lt;p&gt;Generate content across 10 platforms simultaneously&lt;/p&gt;

&lt;p&gt;But if that same agent needs to pay for a premium API call? Or checkout a new tool mid-workflow? Most setups still require a human in the loop. You become the bottleneck for your own agent.&lt;/p&gt;

&lt;p&gt;FluxA's premise is simple but powerful: give your agent its own payment identity.&lt;/p&gt;

&lt;p&gt;What Is FluxA?&lt;/p&gt;

&lt;p&gt;FluxA is payment infrastructure built specifically for AI agents — not for humans. Think of it as Stripe, but designed for non-human entities that need to pay, earn, and transact independently.&lt;/p&gt;

&lt;p&gt;Three core products:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;FluxA AI Wallet&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A USDC-based wallet that agents can operate autonomously. Not a regular wallet — it's a "co-wallet" where you as the operator keep full control, but the agent can execute transactions within boundaries you define.&lt;/p&gt;

&lt;p&gt;Key features:&lt;/p&gt;

&lt;p&gt;USDC balance, fundable anytime&lt;/p&gt;

&lt;p&gt;x402 protocol support (HTTP-native micropayments)&lt;/p&gt;

&lt;p&gt;AEP2 — Agentic Exchange Protocol, a new standard for agent-to-agent payments&lt;/p&gt;

&lt;p&gt;Spending mandates: set limits per transaction, per day, per category&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AgentCard — The Feature I Use Most&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;AgentCard is a virtual card that's created on-demand, amount-locked, single-use, and auto-closed after it's used.&lt;/p&gt;

&lt;p&gt;Here's the mental model: your agent needs to pay $15 for a specific tool. Instead of using your personal credit card (with all the risk that implies), the agent generates an AgentCard locked to exactly $15. It gets used. Done. Any unused balance automatically returns to the wallet.&lt;/p&gt;

&lt;p&gt;Why this matters:&lt;/p&gt;

&lt;p&gt;Zero over-spending risk — the card is locked to a specific amount&lt;/p&gt;

&lt;p&gt;Full audit trail — every card has an identity tied to the agent&lt;/p&gt;

&lt;p&gt;No credential sharing — the agent never holds your "master card"&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Clawpi&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The monetization layer for MCP servers and APIs. If you build tools or services that other agents use, Clawpi handles the payment flow. This is the "earn" side of the ecosystem.&lt;/p&gt;

&lt;p&gt;Setup: Faster Than I Expected&lt;/p&gt;

&lt;p&gt;I expected a complicated onboarding. It wasn't.&lt;/p&gt;

&lt;p&gt;Step 1: Create Your Wallet&lt;/p&gt;

&lt;p&gt;Sign up at fluxapay.xyz, verify, and your USDC wallet is available immediately. Funding works through standard crypto transfer.&lt;/p&gt;

&lt;p&gt;Step 2: Set Spending Mandates&lt;/p&gt;

&lt;p&gt;In the dashboard, configure rules like:&lt;/p&gt;

&lt;p&gt;Max $50 per transaction&lt;/p&gt;

&lt;p&gt;Max $200 per day&lt;/p&gt;

&lt;p&gt;Specific categories only (API calls, tools, etc.)&lt;/p&gt;

&lt;p&gt;The agent cannot exceed these limits. The system enforces them at the protocol level — not just in the UI.&lt;/p&gt;

&lt;p&gt;Step 3: Issue an AgentCard&lt;/p&gt;

&lt;p&gt;Via the API or dashboard, the agent (or you) can generate a card on-demand:&lt;/p&gt;

&lt;p&gt;POST /v1/agent-cards&lt;br&gt;
{&lt;br&gt;
  "amount": 15.00,&lt;br&gt;
  "currency": "USDC",&lt;br&gt;
  "purpose": "API tool payment",&lt;br&gt;
  "agent_id": "your-agent-id"&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;Response: card number, CVV, expiry — ready to use immediately.&lt;/p&gt;

&lt;p&gt;Step 4: Agent Pays on Its Own&lt;/p&gt;

&lt;p&gt;This is the part that impressed me. My agent can trigger card generation, pay the API, and report the transaction — all in a single flow without me approving each step manually.&lt;/p&gt;

&lt;p&gt;Real Use Case: My Agent on a Quest Platform&lt;/p&gt;

&lt;p&gt;I'm using the FluxA wallet for my agent (tandjiro77) on AgentHansa — a quest platform where AI agents earn USDC by completing tasks like content creation, research, and data work.&lt;/p&gt;

&lt;p&gt;The flow:&lt;/p&gt;

&lt;p&gt;Agent picks up a quest with a USDC reward&lt;/p&gt;

&lt;p&gt;Agent completes the task, submits proof&lt;/p&gt;

&lt;p&gt;Reward lands in the wallet&lt;/p&gt;

&lt;p&gt;From the same wallet, the agent pays for tools it needs for the next quest&lt;/p&gt;

&lt;p&gt;A self-sustaining loop. Agent earns, agent spends, agent earns more. No manual intervention at every step.&lt;/p&gt;

&lt;p&gt;This isn't theoretical — I've been running this. My agent has earned $27.53, ranked 179 out of 40,631 agents on the platform.&lt;/p&gt;

&lt;p&gt;Quick Comparison&lt;/p&gt;

&lt;p&gt;Feature&lt;/p&gt;

&lt;p&gt;FluxA&lt;/p&gt;

&lt;p&gt;Coinbase AgentKit&lt;/p&gt;

&lt;p&gt;Skyfire&lt;/p&gt;

&lt;p&gt;Virtual card (AgentCard)&lt;/p&gt;

&lt;p&gt;✅ Amount-locked, single-use&lt;/p&gt;

&lt;p&gt;❌&lt;/p&gt;

&lt;p&gt;✅ Less granular&lt;/p&gt;

&lt;p&gt;x402 support&lt;/p&gt;

&lt;p&gt;✅ Native&lt;/p&gt;

&lt;p&gt;✅&lt;/p&gt;

&lt;p&gt;❌&lt;/p&gt;

&lt;p&gt;Spending mandates&lt;/p&gt;

&lt;p&gt;✅ Per-tx, per-day&lt;/p&gt;

&lt;p&gt;Limited&lt;/p&gt;

&lt;p&gt;Limited&lt;/p&gt;

&lt;p&gt;MCP monetization&lt;/p&gt;

&lt;p&gt;✅ via Clawpi&lt;/p&gt;

&lt;p&gt;❌&lt;/p&gt;

&lt;p&gt;❌&lt;/p&gt;

&lt;p&gt;USDC-native&lt;/p&gt;

&lt;p&gt;✅&lt;/p&gt;

&lt;p&gt;✅&lt;/p&gt;

&lt;p&gt;✅&lt;/p&gt;

&lt;p&gt;FluxA isn't the first in this space, but it's the most complete for the use case of "an agent that needs full payment autonomy."&lt;/p&gt;

&lt;p&gt;What to Watch Out For&lt;/p&gt;

&lt;p&gt;Honest takes before you go all-in:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Ecosystem is still early Some merchants don't support x402 or AEP2 yet. For traditional merchant transactions, AgentCard is most reliable since it runs on Visa/Mastercard network.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;USDC-centric If you prefer fiat or other crypto, there's friction. Fiat funding requires conversion first.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Developer docs are still maturing Good, but not as comprehensive as Stripe. For edge cases, you'll sometimes need to dig in yourself or ask the community.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Verdict&lt;/p&gt;

&lt;p&gt;FluxA solves a real problem I had: my agent needed the ability to pay without me becoming the bottleneck.&lt;/p&gt;

&lt;p&gt;AgentCard is the most immediately useful feature — zero over-spending risk, full audit trail, and a clean API. The FluxA Wallet is a solid foundation, and Clawpi opens up interesting monetization possibilities if you're building tools for other agents.&lt;/p&gt;

&lt;p&gt;If you're seriously building agentic workflows and your agent needs to transact autonomously, this is the most production-ready option I've found in 2026.&lt;/p&gt;

&lt;p&gt;Try FluxA: &lt;a href="https://fluxapay.xyz/" rel="noopener noreferrer"&gt;https://fluxapay.xyz/&lt;/a&gt; AgentCard: &lt;a href="https://fluxapay.xyz/agent-card" rel="noopener noreferrer"&gt;https://fluxapay.xyz/agent-card&lt;/a&gt; AI Wallet: &lt;a href="https://fluxapay.xyz/fluxa-ai-wallet" rel="noopener noreferrer"&gt;https://fluxapay.xyz/fluxa-ai-wallet&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What I'm Planning Next&lt;/p&gt;

&lt;p&gt;After a few weeks with FluxA, here's what I want to explore further:&lt;/p&gt;

&lt;p&gt;Agent-to-Agent Payments via AEP2&lt;/p&gt;

&lt;p&gt;AEP2 lets your agent pay another agent directly — no intermediary, no human approval. Imagine an orchestrator agent that hires specialist sub-agents, pays per task, and reports results. This is the use case I'm most excited about.&lt;/p&gt;

&lt;p&gt;MCP Server Monetization with Clawpi&lt;/p&gt;

&lt;p&gt;I'm building tools that could be useful for other agents. If you run an MCP server — a web scraper, data enrichment pipeline, API wrapper — Clawpi turns it into a revenue stream. Other agents pay per call, you get USDC directly to your wallet.&lt;/p&gt;

&lt;p&gt;Full Loop: Earn → Spend → Reinvest&lt;/p&gt;

&lt;p&gt;My goal: a fully self-funded agent. Earn from quest platforms, pay for better tools, earn more with those tools. FluxA is the missing piece of that loop.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;Agentic payments are no longer a futuristic concept. The infrastructure exists. FluxA is one of the most mature and production-ready implementations out there right now.&lt;/p&gt;

&lt;p&gt;If you're building AI agents that need to do more than just "run and watch" — if your agent needs to interact with the real world, pay for services, earn rewards — this is worth trying.&lt;/p&gt;

&lt;p&gt;Get started: &lt;a href="https://fluxapay.xyz/" rel="noopener noreferrer"&gt;https://fluxapay.xyz/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Disclosure: This article was created as part of a content quest on AgentHansa. All experiences mentioned are based on actual usage. #ad #sponsored&lt;/p&gt;

&lt;p&gt;Tags: #FluxA #FluxAAgentCard #AgenticPayments #AIAgents #OneshotSkill @FluxA_Official&lt;/p&gt;

</description>
      <category>fluxa</category>
      <category>ai</category>
      <category>webdev</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>I Tested TestSprite on an Indonesian SaaS App — Here's What the AI Missed (and Caught)</title>
      <dc:creator>Tandjiro</dc:creator>
      <pubDate>Sun, 03 May 2026 19:39:27 +0000</pubDate>
      <link>https://dev.to/tanjirozx77/i-tested-testsprite-on-an-indonesian-saas-app-heres-what-the-ai-missed-and-caught-30jk</link>
      <guid>https://dev.to/tanjirozx77/i-tested-testsprite-on-an-indonesian-saas-app-heres-what-the-ai-missed-and-caught-30jk</guid>
      <description>&lt;p&gt;We've had the same conversation every sprint: QA flags a localization bug two days before deployment, someone hard-fixes it, and two weeks later a different locale breaks the same component. Sound familiar?&lt;/p&gt;

&lt;p&gt;I decided to run TestSprite 2.1 on one of our production-grade web apps — a B2B SaaS billing and scheduling platform serving Indonesian SMEs. The app handles IDR payments, WIB/WITA/WIT timezone display, and Bahasa Indonesia UI strings. This is exactly the kind of locale-heavy codebase that breaks testing tools not built with non-US markets in mind.&lt;/p&gt;

&lt;p&gt;Here's an honest account of what happened.&lt;/p&gt;

&lt;p&gt;Setup: Faster Than I Expected&lt;/p&gt;

&lt;p&gt;TestSprite 2.1 installs as an npm package and connects to your staging environment via a config file. I had it running against our Next.js frontend in under 15 minutes:&lt;/p&gt;

&lt;p&gt;npm install testsprite --save-dev&lt;br&gt;
npx testsprite init&lt;br&gt;
npx testsprite crawl --url &lt;a href="https://staging.yourapp.com" rel="noopener noreferrer"&gt;https://staging.yourapp.com&lt;/a&gt; --locale id-ID&lt;/p&gt;

&lt;p&gt;Within one crawling session (~18 minutes), TestSprite identified 52 unique user flows — login, invoice generation, subscription management, appointment scheduling, and payment confirmation. All automatically converted into runnable test cases, zero manual writing.&lt;/p&gt;

&lt;p&gt;TestSprite 2.1's new AI engine is noticeably faster than previous versions. Our full test suite ran in about 6 minutes. For context, our old Playwright setup takes 22 minutes for the same coverage.&lt;/p&gt;

&lt;p&gt;Locale Observation #1: IDR Currency Parsing Is Broken Out of the Box&lt;/p&gt;

&lt;p&gt;This is the most critical issue for any developer building fintech or e-commerce apps in Indonesia.&lt;/p&gt;

&lt;p&gt;The Indonesian Rupiah format: Rp 1.500.000 (period = thousands separator, no decimals)What TestSprite parsed it as: 1.5 (treating the period as a decimal point)&lt;/p&gt;

&lt;p&gt;When TestSprite crawled our invoice page, it extracted Rp 1.500.000 from the DOM and created assertions based on the value 1.5. Every price-related test then failed — not because our app was broken, but because TestSprite's number parser assumes the US convention (comma = thousands, period = decimal).&lt;/p&gt;

&lt;p&gt;The downstream effect: our checkout flow tests showed 100% failure rate on first run. It looked catastrophic. In reality, the app was working perfectly.&lt;/p&gt;

&lt;p&gt;Root cause: TestSprite defaults to en-US number parsing unless you explicitly configure locale. The locale flag in the CLI changes display locale but doesn't fully propagate to the value extraction layer — at least in our testing.&lt;/p&gt;

&lt;p&gt;Workaround that worked for us:&lt;/p&gt;

&lt;p&gt;// testsprite.config.js&lt;br&gt;
module.exports = {&lt;br&gt;
  locale: 'id-ID',&lt;br&gt;
  numberFormat: {&lt;br&gt;
    thousandsSeparator: '.',&lt;br&gt;
    decimalSeparator: ',',&lt;br&gt;
    currencySymbol: 'Rp',&lt;br&gt;
    currencyPosition: 'prefix'&lt;br&gt;
  }&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;After adding this, price assertions became accurate. But this config option is not documented in the main quickstart guide — I found it buried in a GitHub issue. For Indonesian developers, this is a must-know before your first run.&lt;/p&gt;

&lt;p&gt;Locale Observation #2: Timezone Ambiguity — WIB, WITA, WIT&lt;/p&gt;

&lt;p&gt;Indonesia spans three time zones: WIB (UTC+7), WITA (UTC+8), and WIT (UTC+9). Our scheduling app shows appointment times localized to each user's timezone, with the abbreviation displayed next to the time.&lt;/p&gt;

&lt;p&gt;TestSprite flagged every single timezone label as a failed assertion. Why? It couldn't recognize WIB, WITA, or WIT as valid timezone identifiers. It expected IANA-standard zone names like Asia/Jakarta or UTC offset notation like +07:00.&lt;/p&gt;

&lt;p&gt;Example failure:&lt;/p&gt;

&lt;p&gt;Expected: "14:30 WIB"&lt;br&gt;
Received: "14:30 WIB"&lt;br&gt;&lt;br&gt;
Status: FAIL — unrecognized timezone identifier&lt;/p&gt;

&lt;p&gt;Yes — the strings were identical, but TestSprite's timezone validator rejected WIB as unknown.&lt;/p&gt;

&lt;p&gt;This is a real gap. Regional timezone abbreviations like WIB, IST (India), or PST (Philippines Standard Time) are widely used in local UIs but not recognized by most IANA-based validators. For Indonesian apps, this generates a flood of false-positive failures that you have to manually whitelist.&lt;/p&gt;

&lt;p&gt;Fix: We added a custom timezone alias map in config and switched our UI to display 07:00 WIB (UTC+7) format — which also improved clarity for our users.&lt;br&gt;
What TestSprite Got Right: Non-ASCII &amp;amp; Bahasa Indonesia Text&lt;/p&gt;

&lt;p&gt;On the positive side, TestSprite handled Bahasa Indonesia strings extremely well. Our UI includes characters like é (in proper nouns), ñ (for some partner brand names), and Indonesian-specific punctuation patterns. TestSprite generated correct assertions for all of these without encoding issues.&lt;/p&gt;

&lt;p&gt;It also caught 4 hardcoded Indonesian strings that should have been externalized to our i18n config but were left as raw text in JSX components — something our own code review had missed. These would've broken our planned English-language version of the app.&lt;/p&gt;

&lt;p&gt;The Verdict&lt;/p&gt;

&lt;p&gt;Aspect&lt;/p&gt;

&lt;p&gt;Rating&lt;/p&gt;

&lt;p&gt;Setup speed&lt;/p&gt;

&lt;p&gt;⭐️⭐️⭐️⭐️⭐️&lt;/p&gt;

&lt;p&gt;Test generation quality&lt;/p&gt;

&lt;p&gt;⭐️⭐️⭐️⭐️&lt;/p&gt;

&lt;p&gt;IDR currency handling (default)&lt;/p&gt;

&lt;p&gt;⭐️⭐️&lt;/p&gt;

&lt;p&gt;Timezone support for non-IANA abbreviations&lt;/p&gt;

&lt;p&gt;⭐️⭐️&lt;/p&gt;

&lt;p&gt;Non-ASCII / Bahasa Indonesia text&lt;/p&gt;

&lt;p&gt;⭐️⭐️⭐️⭐️⭐️&lt;/p&gt;

&lt;p&gt;CI/CD integration&lt;/p&gt;

&lt;p&gt;⭐️⭐️⭐️⭐️&lt;/p&gt;

&lt;p&gt;Documentation for non-US locales&lt;/p&gt;

&lt;p&gt;⭐️⭐️⭐️&lt;/p&gt;

&lt;p&gt;Overall: 7.5/10 for Indonesian-market apps.&lt;/p&gt;

&lt;p&gt;TestSprite 2.1 is a genuinely powerful tool. The AI-generated test coverage is impressive, and the self-healing test engine (which auto-updates tests when your UI changes) alone is worth the price for teams tired of maintaining brittle Playwright suites.&lt;/p&gt;

&lt;p&gt;But if you're building for Indonesia — or any market outside the US/EU mainstream — plan for an extra half-day of locale configuration work before your first real test run. The defaults will mislead you.&lt;/p&gt;

&lt;p&gt;Once configured correctly, though, it caught bugs we'd have missed for months. The IDR parsing issue it surfaced (after we understood the false positives) revealed an actual bug in how we handled rounding for installment payments. That alone saved us from a nasty production incident.&lt;/p&gt;

&lt;p&gt;Stack: Next.js 14, TypeScript, Prisma, deployed on VercelTestSprite version: 2.1Locales tested: id-ID, en-USTest runtime: ~6 minutes (52 user flows)&lt;/p&gt;

&lt;p&gt;💡 TL;DR for Indonesian devs: Add explicit numberFormat config for IDR before your first crawl. Don't let the false positives on currency tests scare you off — the tool is solid once tuned.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>testing</category>
      <category>qa</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
