stripe-link-wallet

Creates Stripe Link spend requests and completes 402 and MPP payment flows.

1.2k|166|Updated Feb 7, 2026
One-click install
npx skills add https://github.com/vellum-ai/vellum-assistant --skill stripe-link-wallet
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: stripe-link-wallet
Source: https://github.com/vellum-ai/vellum-assistant/tree/main/skills/stripe-link-wallet
Command: npx skills add https://github.com/vellum-ai/vellum-assistant --skill stripe-link-wallet

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @stripe/link-cli, and includes assets (resource) components.

What problem does it solve?

Agents that need to pay for things on the user's behalf hit a wall: checkout URLs get dumped into chat, raw card numbers risk leaking into logs, and HTTP 402 / Machine Payment Protocol endpoints require a payment credential the agent cannot produce on its own. This Skill turns the Stripe Link CLI into an agent wallet so purchases are capped, user-approved, and auditable.

Core Features & Use Cases

  • Spend requests with user approval: Compose a spend request with merchant, amount (in cents, max $500), line items, and a 100+ character context, then poll until the user approves or denies it in the Link app.
  • 402 / MPP payments: Decode payment challenges and pay MPP-protected endpoints with one-time-use Shared Payment Tokens.
  • Virtual card checkout: Retrieve one-time virtual card credentials written to a permission-locked file (never printed to the conversation) for standard web checkouts or MCP complete_checkout tools.
  • Checkout interception: Automatically route any checkout URL or payment session produced by other tools through Stripe Link instead of surfacing it to the user.
  • Use Case: An agent hits a paid API that returns HTTP 402. It creates a $2.00 spend request in test mode, the user approves on their phone, and the agent completes the payment with a Shared Payment Token.

Quick Start

Ask your assistant to pay for the 402-protected endpoint at a given URL using Stripe Link in test mode with a spend limit of five dollars.

Frequently Asked Questions about stripe-link-wallet

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I pay an HTTP 402 endpoint with Stripe Link?

Create a spend request with link-cli spend-request create using credential-type shared_payment_token, poll spend-request retrieve until approved, then run link-cli mpp pay with the spend request ID. The Shared Payment Token is one-time-use, so a failed payment requires a new request.

How do I get a one-time virtual card for a web checkout?

Create a spend request without a credential type, wait for approval, then run spend-request retrieve with --include card and --output-file. The card number, CVC, and billing address are written to a file with 0600 permissions and redacted from stdout.

What is the maximum amount a Stripe Link spend request can charge?

The maximum is 50,000 cents ($500) per transaction, and amounts are always specified in cents. The context field describing the purchase must be at least 100 characters, and test mode is the default unless the user explicitly requests real spending.

What happens if the user never approves the spend request?

The retrieve command polls every 3 seconds up to 60 attempts; if approval never arrives it exits with a POLLING_TIMEOUT error code. You can then report the timeout and either cancel the request or create a fresh one.

Can I use link-cli without installing it globally?

Yes, invoke it on demand with bunx @stripe/link-cli and substitute that prefix for every link-cli command. Authentication is still required via auth login with a client name before any spend operations work.