# Ramp Core Workflow A

> "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"

- Skill: `thedixitjain/ramp-core-workflow-a` (Agent Skill)
- Install (CLI): `npx skillmds add thedixitjain/ramp-core-workflow-a`
- Raw SKILL.md: https://api.skillmd.com/api/skills/thedixitjain/ramp-core-workflow-a/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Finance & Business
- Author: thedixitjain (https://skillmd.com/u/thedixitjain)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/thedixitjain/ramp-core-workflow-a

---


# 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`

---

**Source:** [`jeremylongshore/claude-code-plugins-plus-skills`](https://github.com/jeremylongshore/claude-code-plugins-plus-skills) → `skills/.curated/ramp-core-workflow-a/SKILL.md`

**Also appears in:** `jeremylongshore/claude-code-plugins-plus-skills/plugins/saas-packs/ramp-pack/skills/ramp-core-workflow-a/SKILL.md`

