--- name: ramp-core-workflow-a description: "Ramp core workflow a \u2014 corporate card and expense management API\ \ integration.\nUse when working with Ramp for card management, expenses, or accounting\ \ sync.\nTrigger with phrases like \"ramp core workflow a\", \"ramp-core-workflow-a\"\ , \"corporate card API\".\n" allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(curl:*), Grep version: 2.0.0 license: MIT author: Jeremy Longshore tags: - saas - ramp - fintech - expenses - corporate-cards compatibility: Designed for Claude Code, also compatible with Codex and OpenClaw --- # Ramp Core Workflow A ## Overview Issue and manage virtual cards with spending limits, policies, and lifecycle management. ## Prerequisites - Completed `ramp-hello-world` ## Instructions ### Step 1: Issue a Virtual Card ```python card = requests.post(f"{BASE}/cards", headers={**headers, "Content-Type": "application/json"}, json={ "holder_name": "Jane Smith", "spending_restrictions": { "amount": 50000, # $500.00 in cents "interval": "monthly", # monthly, yearly, total }, "display_name": "Marketing Software", "fulfillment": { "card_type": "virtual" }, }) card.raise_for_status() card_id = card.json()["id"] print(f"Virtual card issued: {card_id}") ``` ### Step 2: Update Card Limit ```python requests.patch(f"{BASE}/cards/{card_id}", headers={**headers, "Content-Type": "application/json"}, json={ "spending_restrictions": { "amount": 100000, # Increase to $1,000 "interval": "monthly", }, }) ``` ### Step 3: Suspend Card ```python requests.post(f"{BASE}/cards/{card_id}/suspend", headers=headers) print(f"Card {card_id} suspended") ``` ### Step 4: Terminate Card ```python requests.post(f"{BASE}/cards/{card_id}/terminate", headers=headers) print(f"Card {card_id} terminated") ``` ## Output - Virtual card issued with spending limits - Card limits updated - Card suspended/terminated ## Error Handling | Error | Cause | Solution | |-------|-------|----------| | `422 Invalid holder` | User not found | Verify holder is a Ramp user | | `400 Invalid amount` | Amount not in cents | Multiply dollars by 100 | | Card already terminated | Cannot modify | Check card state first | ## Resources - [Virtual Cards API](https://docs.ramp.com/developer-api/v1/virtual-cards) - [Cards and Funds](https://docs.ramp.com/developer-api/v1/cards-and-funds) ## Next Steps Transaction management: `ramp-core-workflow-b`