Lu71

Integration

Three ways to connect. Choose what fits your stack.

MCP (Recommended)

One command installs dispute tools directly into your AI agent. No code changes required. Your agent automatically gets access to capture_intent, file_dispute, check_dispute, and more.

shellnpx @lu71/install --key=lu71_live_YOUR_KEY

Supports Claude Desktop, Claude Code, Cursor, Kiro, Windsurf, VS Code Copilot, ChatGPT Desktop, Codex CLI, Amazon Q, Cline, and Roo Code.

ClaudeCursorKiroCodexChatGPTWindsurfVS CodeAmazon QClineRoo Code

TypeScript SDK

Two function calls to integrate. Install the package, initialize with your API key, and call captureIntent before purchases and fileDispute when things go wrong.

shellnpm install @lu71/sdk
typescriptimport { Lu71 } from "@lu71/sdk"

const lu71 = new Lu71({ apiKey: "lu71_live_..." })

// Before purchase
const { intentId, signature } = await lu71.captureIntent({
  description: "Annual Pro plan for DataAPI.io",
  merchant: "DataAPI",
  maxAmount: 12000,
  currency: "gbp",
})

// If purchase goes wrong
const dispute = await lu71.fileDispute({
  intentId,
  intentSignature: signature,
  transactionId: "ipi_abc123",
  reason: "service_not_rendered",
  description: "Paid for Pro plan but account still shows free tier after 72 hours.",
})

REST API

Call directly from any language. All endpoints accept JSON and authenticate via the x-api-key header. Full reference in the docs.

shellcurl -X POST https://api.getlu71.com/v1/intents \
  -H "x-api-key: lu71_live_..." \
  -H "Content-Type: application/json" \
  -d '{"description": "Buy 50 widgets", "maxAmount": 5000}'

Supported Platforms

Lu71 files disputes through your existing card issuing platform. Connect via OAuth (Stripe) or restricted API key (Lithic).

Stripe Issuing

Connect via OAuth. We use the Stripe-Account header with our platform key. Your API credentials are never stored.

Lithic

Connect with a restricted API key (disputes:write scope). Validated on connection. We build comprehensive dispute evidence via their API.