Claude-code-plugins-plus-skills ramp-core-workflow-b
install
source · Clone the upstream repo
git clone https://github.com/jeremylongshore/claude-code-plugins-plus-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jeremylongshore/claude-code-plugins-plus-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/plugins/saas-packs/ramp-pack/skills/ramp-core-workflow-b" ~/.claude/skills/jeremylongshore-claude-code-plugins-plus-skills-ramp-core-workflow-b && rm -rf "$T"
manifest:
plugins/saas-packs/ramp-pack/skills/ramp-core-workflow-b/SKILL.mdsource content
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
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
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
# 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
Next Steps
Handle events:
ramp-webhooks-events