"Ramp core workflow b \u2014 corporate card and expense management API\
Scanned 9/2/2026
Install to Claude Code
npx -y skills add jeremylongshore/tons-of-skills-marketplace --skill ramp-core-workflow-b --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Ramp Core Workflow B?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jeremylongshore-ramp-core-workflow-b-e716117c)More formats (shields.io, HTML) on the badges page.
---
name: ramp-core-workflow-b
description: "Ramp core workflow b \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 b\", \"ramp-core-workflow-b\"\
, \"corporate card API\".\n"
allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(curl:*), Grep
version: 1.4.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- ramp
- fintech
- expenses
- corporate-cards
compatibility: Designed for Claude Code
---
# Ramp Core Workflow B
## Overview
Manage transactions and expenses: list, categorize, attach receipts, and sync to accounting.
## Prerequisites
- Completed `ramp-core-workflow-a`
## Instructions
### Step 1: List Transactions with Filters
```python
resp = requests.get(f"{BASE}/transactions", headers=headers, params={
"start_date": "2026-01-01",
"end_date": "2026-03-22",
"merchant_name": "Amazon",
"page_size": 50,
})
transactions = resp.json()["data"]
total = sum(tx["amount"] for tx in transactions)
print(f"Amazon spend: ${total/100:.2f} across {len(transactions)} transactions")
```
### Step 2: Get Transaction Details
```python
tx_id = transactions[0]["id"]
detail = requests.get(f"{BASE}/transactions/{tx_id}", headers=headers)
tx = detail.json()
print(f"Amount: ${tx['amount']/100:.2f}")
print(f"Merchant: {tx['merchant_name']}")
print(f"Category: {tx['sk_category_name']}")
print(f"Card: {tx['card_holder']['first_name']} — last4: {tx['card_last_four']}")
```
### Step 3: Sync to Accounting
```python
# Fetch transactions ready for accounting sync
sync_resp = requests.get(f"{BASE}/accounting/transactions", headers=headers, params={
"sync_ready": True,
"page_size": 100,
})
for tx in sync_resp.json()["data"]:
# Map to your ERP's chart of accounts
journal_entry = {
"date": tx["user_transaction_time"],
"amount": tx["amount"],
"account": map_category_to_gl(tx["sk_category_name"]),
"vendor": tx["merchant_name"],
"external_id": tx["id"],
}
sync_to_erp(journal_entry)
# Mark as synced
requests.post(f"{BASE}/accounting/transactions/sync", headers={**headers, "Content-Type": "application/json"}, json={
"transaction_ids": [tx["id"] for tx in sync_resp.json()["data"]],
})
```
## Output
- Transactions filtered by date, merchant, category
- Detailed transaction data with card holder info
- Accounting sync with GL mapping
## Error Handling
| Error | Cause | Solution |
|-------|-------|----------|
| Empty results | Wrong date range | Check start_date/end_date format |
| Sync conflict | Already synced | Check sync status before re-syncing |
| Missing category | Uncategorized transaction | Use default GL account |
## Resources
- [Ramp API Documentation](https://docs.ramp.com/)
- [Accounting Guide](https://docs.ramp.com/developer-api/v1/guides/accounting)
## Next Steps
Handle events: `ramp-webhooks-events`
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!