Spend Management
Ramp
API integration
Ship Spend Management features without building the integration. Full Ramp API access via Proxy and 240+ MCP-ready tools for AI agents — extend models and mappings to fit your product.
Talk to usUse Cases
Why integrate with Ramp
Common scenarios for SaaS companies building Ramp integrations for their customers.
Automate employee lifecycle from HRIS to Ramp
HR and IT platforms can sync new hires, departments, and terminations into Ramp so cards and spend limits are provisioned or revoked the moment an employee's status changes—eliminating manual invites and post-termination spend risk.
Close the procurement-to-payment loop
Procurement and contract management tools can push approved purchase orders, vendor agreements, and draft bills into Ramp so approvals in the source system automatically become POs, bills, and payments—without finance re-keying data.
Issue just-in-time virtual cards for travel and marketplaces
Travel, booking, and B2B marketplace platforms can mint virtual cards with dynamic limits tied to a trip or supplier, then suspend or delete them when the underlying event changes—turning Ramp into their payment execution layer.
Power ML-driven accounting automation
FinOps and modern accounting tools can pull syncable transactions and receipts from Ramp, push back GL coding decisions, and mark transactions ready-to-sync so finance teams approve pre-categorized ledger entries instead of coding them by hand.
Embed external approvals into Ramp's spend workflow
Compliance, security, or vertical workflow tools can inject themselves into Ramp's approval chain via Blank Canvas approvals, letting their platform gate spend decisions with proprietary logic before funds are released.
What You Can Build
Ship these features with Truto + Ramp
Concrete product features your team can ship faster by leveraging Truto’s Ramp integration instead of building from scratch.
Two-way employee and department sync
Provision Ramp users, assign departments and locations, and bulk-deactivate employees on termination using deferred user creation, department, and bulk user update endpoints.
Automated PO and bill creation from external approvals
Create purchase orders with line items, attach item receipts, and generate draft bills in Ramp the moment a request is approved in your product.
Dynamic virtual card issuance with embedded card reveal
Mint virtual cards tied to Funds or Spend Programs and let end users view PAN and CVV inside your UI via Ramp's embedded card iframe.
GL coding push-back and sync orchestration
Fetch transactions, apply your own accounting coding via the coding endpoint, and trigger accounting sync jobs to finalize records back to the ERP.
Vendor and bill hold controls
Programmatically place or release holds on vendors and bills when compliance, contract, or risk signals in your platform indicate AP should pause.
Custom tables for proprietary reporting context
Inject your product's relational data—projects, cost centers, SKUs—into Ramp using Custom, Native, and Matrix Tables so it appears alongside transactions in Ramp's UI.
SuperAI
Ramp AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_ramp_accounting_accounts
List general ledger accounts in Ramp with optional filters by remote_id, code, active status, and accounting connection. Returns: accounting_connection_id, classification, code, created_at, entity_remote_ids, gl_account_category_info, id, is_active, name, provider_name, ramp_id, updated_at, visibility, remote_id, is_synced. If the account belongs to an inactive accounting connection,…
create_a_ramp_accounting_account
Upload general ledger accounts. Returns: accounting_connection_id, gl_accounts, uploaded. Required: gl_accounts.
get_single_ramp_accounting_account_by_id
Get a single Ramp general ledger account by id. Returns: accounting_connection_id, classification, code, created_at, entity_remote_ids, gl_account_category_info, id, is_active, name, provider_name, ramp_id, updated_at, visibility, remote_id, is_synced. If the account belongs to an inactive accounting connection, supply accounting_connection_id to retrieve it. Required: id.
update_a_ramp_accounting_account_by_id
Update the name or code of a general ledger account in Ramp. Returns: accounting_connection_id, classification, code, created_at, entity_remote_ids, gl_account_category_info, id, is_active, name, provider_name, ramp_id, updated_at, visibility, remote_id, is_synced. Required: id.
delete_a_ramp_accounting_account_by_id
Delete a general ledger account in Ramp by id. Returns an empty 204 response on success. Required: id.
list_all_ramp_accounting_all_connections
List all accounting connections for the current business in Ramp, including both active and inactive connections. Returns a list of accounting connection records with their id and provider details. No required parameters. This endpoint replaces the deprecated /accounting/connection endpoint.
create_a_ramp_accounting_coding
Post accounting coding selections to a Ramp object such as a transaction or bill. Returns the created accounting coding object on success (201). Requires a JSON request body specifying the coding selections to apply. Required: accounting_coding_selections, object_id, object_type.
list_all_ramp_accounting_connections
Fetch the current active accounting connection in Ramp. Deprecated — use the all-connections endpoint instead. Returns: id. May return an empty response when no active connection exists.
create_a_ramp_accounting_connection
Register a new API-based accounting connection in Ramp. If a Universal CSV connection already exists, it will be upgraded to an API-based connection. Returns: connection_type, created_at, id, is_active, is_ready_to_migrate, last_linked_at, remote_provider_name, settings, status. A JSON request body is required. Required: remote_provider_name.
get_single_ramp_accounting_connection_by_id
Get a specific Ramp accounting connection by id. Returns: connection_type, created_at, id, is_active, is_ready_to_migrate, last_linked_at, remote_provider_name, settings, status. Required: id.
update_a_ramp_accounting_connection_by_id
Update an accounting connection in Ramp by id. Returns: connection_type, created_at, id, is_active, is_ready_to_migrate, last_linked_at, remote_provider_name, settings, status. Restricted to Accounting API based connections. A JSON request body is required. Required: id.
ramp_accounting_connections_bulk_delete
Disconnect an API-based accounting connection in Ramp. Only API-based connections can be disconnected through this endpoint. Returns an empty 204 response on success.
create_a_ramp_reactivate
Reactivate a previously unlinked Ramp accounting connection, changing its status back to linked while preserving previous field configurations and settings. Returns: connection_type, created_at, id, is_active, is_ready_to_migrate, last_linked_at, remote_provider_name, settings, status. The business must not have any other active accounting connections. Required: connection_id.
create_a_ramp_ready_to_migrate
Mark an inactive Ramp accounting connection as ready to migrate, making it available in the ERP migration flow UI. Returns the updated accounting connection (AccountingProvider) object including its id. There must be a separate active accounting connection the customer will migrate away from. Required: connection_id.
create_a_ramp_accounting_entity
Upload accounting entities to Ramp in an all-or-nothing batch of up to 500. Returns a 201 success response confirming the uploaded entities. Requires a JSON request body. Required: entities.
list_all_ramp_accounting_field_option_filter_rules
List Ramp field option filter rules that define which target field options are available based on selected trigger field options. Returns: required_selections, target_field_option_remote_id, target_field_remote_id, id, accounting_connection_id.
create_a_ramp_accounting_field_option_filter_rule
Bulk create Ramp field option filter rules that define which target field options are available based on selected trigger field options. Multiple rules for the same target option use OR logic; multiple required_selections within a rule use AND logic. Returns a bulk operation response. Required: rules.
ramp_accounting_field_option_filter_rules_bulk_delete
Bulk delete Ramp field option filter rules by specifying rules identified by their target option and required selections. Rules that don't exist are counted as duplicates (no-op). Returns a bulk operation response. Required: rules.
list_all_ramp_accounting_field_options
List options for a given custom Ramp accounting field, filterable by remote_id, is_active, code, visibility, and accounting_connection_id. Returns the custom accounting field option records. Required: field_id.
create_a_ramp_accounting_field_option
Upload up to 500 new field options for a custom accounting field in Ramp as an all-or-nothing batch; if any option is malformed or already exists, the entire batch is rejected. Returns the upload result. Max 500 options per batch. Required: field_id, options.
get_single_ramp_accounting_field_option_by_id
Get a custom accounting field option in Ramp by id. Returns the custom accounting field option object. If the option belongs to an inactive accounting connection, accounting_connection_id must also be supplied. Required: id.
update_a_ramp_accounting_field_option_by_id
Update a custom accounting field option in Ramp by id. Returns the updated custom accounting field option object. Required: id.
delete_a_ramp_accounting_field_option_by_id
Delete a custom accounting field option in Ramp by id. Returns an empty 204 response on success. Required: id.
ramp_accounting_field_options_partial_update
Partially update a custom accounting field option in Ramp. Returns the updated option including id, field_id, remote_id, is_active, code, visibility, and accounting_connection_id. Required: id.
list_all_ramp_accounting_fields
List custom accounting fields in Ramp, filterable by remote_id, is_active, and accounting_connection_id. Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id. Max 100 per page.
create_a_ramp_accounting_field
Create a new custom accounting field in Ramp. If a field with the same id already exists, the existing field is returned instead (and reactivated if it was inactive). Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id. Required: id, input_type, name.
get_single_ramp_accounting_field_by_id
Get a single custom accounting field in Ramp by id. Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id. Required: id.
update_a_ramp_accounting_field_by_id
Update a custom accounting field in Ramp by id. Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id. Required: id.
delete_a_ramp_accounting_field_by_id
Delete a custom accounting field in Ramp by id. Returns an empty 204 response on success. Required: id.
list_all_ramp_accounting_inventory_items
Fetch the Ramp inventory item accounting field for the current accounting connection. Returns: accounting_connection_id, display_name, id, name, ramp_id, created_at, updated_at.
create_a_ramp_accounting_inventory_item
Create a new inventory item accounting field in Ramp. There can only be one active inventory item accounting field per accounting connection. Returns: accounting_connection_id, display_name, id, name, ramp_id, created_at, updated_at. Required: name.
ramp_accounting_inventory_items_bulk_update
Update the inventory item accounting field for the current Ramp accounting connection. Returns: accounting_connection_id, display_name, id, name, ramp_id, created_at, updated_at.
ramp_accounting_inventory_items_bulk_delete
Delete the inventory item accounting field for a Ramp accounting connection. Returns an empty 204 response on success.
list_all_ramp_inventory_item_options
List inventory item options. Returns: accounting_connection_id, entity_remote_ids, gl_account_id, id, is_active, name, ramp_id.
create_a_ramp_inventory_item_option
Upload inventory item options in Ramp. There must be an active inventory item accounting field for the accounting connection. Returns the uploaded inventory item options including id, code, remote_id, is_active, and is_synced. Required: options.
update_a_ramp_inventory_item_option_by_id
Update a Ramp inventory item option by id. Returns the updated option including id, remote_id, code, is_active, is_synced, and accounting_connection_id. Required: id.
delete_a_ramp_inventory_item_option_by_id
Delete a Ramp inventory item option by id. The request body must include accounting_connection_id when the option belongs to an inactive accounting connection. Returns an empty 204 response on success. Required: id.
create_a_ramp_accounting_ramp_field_option
Upload new options for a Ramp-only accounting field in Ramp. Returns: accounting_connection_id, options, uploaded, field_id. Required: accounting_connection_id, field_id, options.
update_a_ramp_accounting_ramp_field_option_by_id
Update a Ramp-only field option in Ramp by id. Returns: accounting_connection_id, code, created_at, display_name, entity_remote_ids, id, is_active, provider_name, ramp_id, updated_at, value, visibility, remote_id, field_id. Required: id, accounting_connection_id.
delete_a_ramp_accounting_ramp_field_option_by_id
Delete a Ramp-only field option in Ramp by id. Returns an empty 204 response on success. Required: id, accounting_connection_id.
list_all_ramp_accounting_ramp_fields
List Ramp-only accounting fields with optional filters by remote ID, active status, and accounting connection. Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id.
create_a_ramp_accounting_ramp_field
Create a Ramp-only accounting field in Ramp. Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id. Required: id, input_type, name.
get_single_ramp_accounting_ramp_field_by_id
Get a single Ramp-only accounting field by id. Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id. If the field belongs to an inactive accounting connection, supply accounting_connection_id. Required: id.
update_a_ramp_accounting_ramp_field_by_id
Update a Ramp-only accounting field by id. Returns: accounting_connection_id, created_at, display_name, id, input_type, is_active, is_required_for, is_splittable, name, provider_name, ramp_id, updated_at, remote_id. Required: id.
delete_a_ramp_accounting_ramp_field_by_id
Delete a Ramp-only accounting field by id. Returns an empty 204 response on success. Required: id.
create_a_ramp_accounting_ready_to_sync
Mark Ramp objects (such as transactions) as ready to sync to your connected accounting provider (ERP), flagging them as reviewed and complete for inclusion in the next accounting sync. Returns an empty 204 response on success. Required: object_ids, object_type.
create_a_ramp_accounting_sync
Notify Ramp of a list of accounting sync results by posting sync statuses. Returns the synced object confirming receipt. An idempotency key is required to ensure that subsequent requests are properly handled. Required: idempotency_key, sync_type.
list_all_ramp_tax_codes
Fetch the tax code accounting field for the current Ramp accounting connection. Returns: accounting_connection_id, display_name, id, name, ramp_id. This endpoint returns a single resource, not a paginated list.
create_a_ramp_tax_code
Create a new tax code accounting field in Ramp. Only one active tax code field is allowed per accounting connection. Returns: accounting_connection_id, display_name, id, name, ramp_id. Required: name.
ramp_tax_codes_bulk_update
Update the tax code accounting field for the current Ramp accounting connection. Returns: accounting_connection_id, display_name, id, name, ramp_id.
ramp_tax_codes_bulk_delete
Delete the tax code accounting field for a Ramp accounting connection. Returns an empty 204 response on success.
list_all_ramp_code_options
List Ramp tax code options, filterable by code, active status, sync status, remote ID, and accounting connection. Returns: accounting_connection_id, entity_remote_ids, id, is_active, name, ramp_id, tax_rate_ids, code, remote_id, is_synced. Max 100 per page.
create_a_ramp_code_option
Upload tax code options to Ramp for an active tax code accounting field. Returns the created tax code options including id, code, and remote_id. There must be an active tax code accounting field for the accounting connection. Required: options.
update_a_ramp_code_option_by_id
Update a Ramp tax code option by id. Returns the updated tax code option including id, code, is_active, and accounting_connection_id. Required: id.
delete_a_ramp_code_option_by_id
Delete a Ramp tax code option by id. Returns an empty 204 response on success. Required: id.
list_all_ramp_tax_rates
List Ramp accounting tax rates. Returns: accounting_connection_id, accounting_gl_account_id, id, name, ramp_id, rate. Specify accounting_connection_id when the tax rate belongs to an inactive accounting connection. Max 100 per page.
create_a_ramp_tax_rate
Upload up to 500 tax rates to Ramp in an all-or-nothing batch. Returns: accounting_connection_id, tax_rates, id. If any rate in the batch is malformed or violates a constraint, the entire batch is disregarded. Required: tax_rates.
update_a_ramp_tax_rate_by_id
Update a Ramp tax rate by id. Returns: accounting_connection_id, accounting_gl_account_id, id, name, ramp_id, rate. Required: id.
delete_a_ramp_tax_rate_by_id
Delete a Ramp tax rate by id. Returns an empty 204 response on success. Required: id.
list_all_ramp_accounting_vendors
List accounting vendors in Ramp with optional filters by remote_id, is_active, code, is_synced, and accounting_connection_id. Returns: accounting_connection_id, code, created_at, entity_remote_ids, id, is_active, is_synced, name, provider_name, ramp_id, updated_at, vendor_category_info, remote_id. Page size must be between 2 and 100 (defaults to 20).
create_a_ramp_accounting_vendor
Upload vendors. Returns: uploaded, vendors. Required: vendors.
get_single_ramp_accounting_vendor_by_id
Get a specific Ramp accounting vendor by id. Returns: accounting_connection_id, code, created_at, entity_remote_ids, id, is_active, is_synced, name, provider_name, ramp_id, updated_at, vendor_category_info, remote_id. If the vendor belongs to an inactive accounting connection, pass accounting_connection_id to retrieve it. Required: id.
update_a_ramp_accounting_vendor_by_id
Update a Ramp accounting vendor by id. Returns: accounting_connection_id, code, created_at, entity_remote_ids, id, is_active, is_synced, name, provider_name, ramp_id, updated_at, vendor_category_info, remote_id. Required: id.
delete_a_ramp_accounting_vendor_by_id
Delete a Ramp accounting vendor by id. Returns an empty 204 response on success. A JSON request body is required; include accounting_connection_id when the vendor belongs to an inactive accounting connection. Required: id.
list_all_ramp_developer_applications
Fetch the active financing application for a Ramp business. Returns a single application object per the ApiApplicationResource schema (field definitions not enumerated in available documentation). Each business can only have one active financing application, so the endpoint always returns a single record. No required parameters.
create_a_ramp_developer_application
Create a Ramp financing application for an applicant, creating a new business and emailing sign-up instructions. Returns an undocumented 2XX success response. If the email already exists, an invitation is re-sent when the business is in the application stage; if already approved, the operation is a no-op. Required: applicant.
list_all_ramp_audit_logs_events
List Ramp audit log events with optional filters by user, date range, event type, actor type, or referenced object. Returns: id, created_at, business_id. Page size must be between 2 and 100 (defaults to 20).
list_all_ramp_developer_bank_accounts
List Ramp bank accounts, optionally filtered by connection provider. Returns: account_name, account_number_last_four, account_subtype, connection_provider, financial_institution_name, id. Max 100 per page.
get_single_ramp_developer_bank_account_by_id
Get a single Ramp bank account by id. Returns: account_name, account_number_last_four, account_subtype, connection_provider, financial_institution_name, id. Required: id.
list_all_ramp_banking_accounts
List all banking accounts for the business in Ramp, including checking, brokerage, and investment accounts. Returns: account_type, id, name, display_name.
list_all_ramp_account_balance_histories
List daily available balance snapshots for a Ramp banking account. Returns: amount, date. Results can be filtered to a specific date range using ISO 8601 formatted start and end dates. Required: account_id.
list_all_ramp_banking_syncable_transactions
List syncable banking transactions in Ramp available for syncing to an accounting provider. Returns: amount, date, description, destination_account_name, entity_id, id, source_account_name, sync_status, treasury_transfer_type. Requires an active accounting provider connection. Max 100 per page.
list_all_ramp_developer_bills
List Ramp bills with filters by vendor, entity, approval/payment/sync status, payment method, date ranges, and amount. Returns the bill object including id, vendor_id, invoice_number, amount, due_at, issued_at, payment_method, payment_status, sync_status, created_at, line_items, and accounting_field_selections.
create_a_ramp_developer_bill
Create a bill in Ramp from a draft bill. Batch payments cannot be created in the API. Returns the created bill including id, vendor_id, invoice_number, amount, due_at, issued_at, payment_method, payment_status, sync_status, created_at, line_items, and accounting_field_selections. Required: due_at, entity_id, invoice_currency, invoice_number, issued_at, vendor_id.
get_single_ramp_developer_bill_by_id
Fetch a single Ramp bill by id. Returns the bill object including id, vendor_id, invoice_number, amount, due_at, issued_at, payment_method, payment_status, sync_status, created_at, line_items, and accounting_field_selections. Required: id.
update_a_ramp_developer_bill_by_id
Update an approved bill in Ramp. Only approved bills can be updated. Returns the updated bill object including id, invoice_number, vendor_id, entity_id, amount, due_at, issued_at, payment_method, payment_status, approval_status, status_summary, and created_at. Required: id.
delete_a_ramp_developer_bill_by_id
Archive a bill in Ramp. This is a destructive action — associated inflight payments will be cancelled and any attached one-time-card will be terminated. Paid bills and bills belonging to a batch payment cannot be deleted. Returns an empty 204 response on success. Required: id.
ramp_developer_bills_attach
Upload a file attachment to an existing Ramp bill. INVOICE type attachments cannot be uploaded if one already exists on the bill. Returns: id, type, created_at, business_id, object. Required: bill_id.
list_all_ramp_bills_drafts
List draft bills in Ramp with optional filters by entity, vendor, invoice number, remote ID, and date ranges. Returns: accounting_date, accounting_field_selections, amount, bill_owner, created_at, due_at, entity_id, id, inventory_line_items, invoice_number, invoice_urls, issued_at, line_items, memo, posting_date, remote_id, status, sync_status, vendor, vendor_memo, vendor_id.
create_a_ramp_bills_draft
Create a new draft bill in Ramp. Returns: accounting_date, accounting_field_selections, amount, bill_owner, created_at, due_at, entity_id, id, inventory_line_items, invoice_number, invoice_urls, issued_at, line_items, memo, posting_date, remote_id, status, sync_status, vendor, vendor_memo, vendor_id. Required: vendor_id.
get_single_ramp_bills_draft_by_id
Get a single Ramp draft bill by id. Returns: accounting_date, accounting_field_selections, amount, bill_owner, created_at, due_at, entity_id, id, inventory_line_items, invoice_number, invoice_urls, issued_at, line_items, memo, posting_date, remote_id, status, sync_status, vendor, vendor_memo, vendor_id. Required: id.
update_a_ramp_bills_draft_by_id
Update an existing Ramp draft bill by id. Returns: accounting_date, accounting_field_selections, amount, bill_owner, created_at, due_at, entity_id, id, inventory_line_items, invoice_number, invoice_urls, issued_at, line_items, memo, posting_date, remote_id, status, sync_status, vendor, vendor_memo, vendor_id. Required: id.
ramp_bills_drafts_attach
Upload a file attachment to an existing Ramp draft bill. INVOICE type attachments cannot be uploaded if one already exists on the draft bill. Returns: id, type, created_at, business_id, object. Required: draft_bill_id.
create_a_ramp_bill_hold
Place a hold on a Ramp bill, blocking all payment rails and descheduling pending payments. Returns the updated Bill object including id, vendor_id, payment_status, amount, and created_at. Required: bill_id.
create_a_ramp_bill_release
Release a bill hold in Ramp, allowing payments to be scheduled on the bill. Returns the Bill object including id, vendor_id, invoice_number, amount, approval_status, and payment_status. Required: bill_id.
list_all_ramp_bill_remittance_receipts
Download a Ramp bill remittance receipt as a PDF file. Returns the receipt as a binary PDF (content-type: application/pdf). Required: bill_id.
create_a_ramp_blank_canvas_approvals_document
Upload a document for a Ramp blank canvas approval workflow step using multipart/form-data. The document is sent as an attachment part and metadata as form-data parts. Returns an empty 204 response on success.
create_a_ramp_developer_blank_canvas_approval
Approve or reject a Ramp blank canvas workflow step by submitting a decision for the given approval trigger instance. Returns a success response from the BlankCanvasApprovalResponse schema confirming the workflow step decision. Required: blank_canvas_approval_id, action.
ramp_blank_canvas_approval_metadata_bulk_update
Update metadata for a blank canvas external approval request in Ramp. Returns the blank canvas approval metadata resource. Required: approval_trigger_instance_id.
list_all_ramp_developer_busineses
Get the Ramp business (company) information for the current authenticated business. Returns the Business object including id. The full field set is referenced as #/components/schemas/Business upstream; consult the Ramp API reference for the complete property breakdown.
list_all_ramp_business_balances
Fetch the company balance information from Ramp. Returns the BusinessBalance object containing the company's current balance details.
list_all_ramp_cards_physicals
List physical cards in Ramp, filterable by owner, display name, activation status, and termination status. Returns: automatic_routing_enabled, cardholder_id, cardholder_name, created_at, display_name, expiration, fulfillment, fund_id, has_program_overridden, id, is_physical, is_primary, is_suspended, last_four, state, user_id. Page size between 2 and 100, defaults to 20.
create_a_ramp_cards_physical
Create a new physical card in Ramp. Returns: automatic_routing_enabled, cardholder_id, cardholder_name, created_at, display_name, expiration, fulfillment, fund_id, has_program_overridden, id, is_physical, is_primary, is_suspended, last_four, state, user_id. Required: shipping_address, user_id.
get_single_ramp_cards_physical_by_id
Get a single Ramp physical card by id. Returns: automatic_routing_enabled, cardholder_id, cardholder_name, created_at, display_name, expiration, fulfillment, fund_id, has_program_overridden, id, is_physical, is_primary, is_suspended, last_four, state, user_id. Required: id.
update_a_ramp_cards_physical_by_id
Update a Ramp physical card by id. Returns: automatic_routing_enabled, cardholder_id, cardholder_name, created_at, display_name, expiration, fulfillment, fund_id, has_program_overridden, id, is_physical, is_primary, is_suspended, last_four, state, user_id. Required: id.
delete_a_ramp_cards_physical_by_id
Terminate a Ramp physical card by id. This action is irreversible. Returns an empty 204 response on success. Required: id.
create_a_ramp_suspension
Suspend a physical Ramp card by card_id. The suspension is revertable and can be undone via the unsuspend endpoint. Returns the PhysicalCard object including id, display_name, and user_id. Required: card_id.
ramp_suspensions_bulk_delete
Unsuspend a Ramp physical card, removing its suspended state. Returns the updated PhysicalCard object including id, display_name, and user_id. Required: card_id.
create_a_ramp_cards_vault
Create a spend limit and retrieve sensitive card details in Ramp. Returns the created PCI limit object including its id. Required: user_id.
get_single_ramp_cards_vault_by_id
Get a Ramp card's sensitive details by id. Returns the card details object including its id. Required: id.
list_all_ramp_cards_virtuals
List virtual cards for a Ramp business, filterable by business entity, card owner, and termination status. Returns: created_at, fund_id, id, is_card_suspended, user_id. Page size must be between 2 and 100.
get_single_ramp_cards_virtual_by_id
Fetch a virtual card. Returns: created_at, fund_id, id, is_card_suspended, user_id. Required: id.
list_all_ramp_developer_cashbacks
List Ramp cashback payments with optional filters by sync status, business entity, statement, and date range. Returns: amount, created_at, entity_id, id, sync_status. Max 100 per page.
get_single_ramp_developer_cashback_by_id
Get a single Ramp cashback payment by id. Returns: amount, created_at, entity_id, id, sync_status. Required: id.
list_all_ramp_developer_comments
List comments on a Ramp object's discussion thread, paginated by keyset cursor. Returns: created_at, id, message, user_id, updated_at. Required: object_id, object_type.
create_a_ramp_developer_comment
Create a comment on a Ramp object's discussion thread. Returns the created comment including id, created_at, and updated_at. Required: object_id, object_type, message.
get_single_ramp_collections_response_by_id
Get a single Ramp custom form collection response by id. Returns: custom_form_collection_response, id. Required: id.
create_a_ramp_configure_custom_table
Create a custom table in Ramp for storing custom record data. Returns an empty 200 response on success. Required: table_label, table_name.
create_a_ramp_custom_table_column
Create Custom Table column. Returns: column_id. Required: custom_table_name.
update_a_ramp_custom_table_column_by_id
Change the API name of a Custom Table's Column. Required: id, custom_table_name, new_name.
list_all_ramp_custom_table_columns
List Custom Table columns. Returns: allows_writes, display_name, id, name, type. Required: custom_table_name.
create_a_ramp_configure_native_table
Extend a Native Ramp table in Ramp by submitting a JSON request body identifying the table to configure. Returns a 200 response confirming the table extension. Required: table_name.
create_a_ramp_native_table_column
Create a new custom column for a Native Ramp table in Ramp. Returns the created column object including its id. Required: native_table_name.
update_a_ramp_native_table_column_by_id
Change the API name of a Native Ramp table's custom record column in Ramp. Returns an empty 204 response on success. Required: id, native_table_name, new_name.
list_all_ramp_native_table_columns
List custom columns for a Native Ramp table in Ramp. Returns each column with its id. Required: native_table_name.
list_all_ramp_custom_records_custom_tables
List all Custom Tables available for the Ramp business. Returns each table reference including id, label, and name. No required parameters.
list_all_ramp_custom_table_rows
List rows from a Ramp Custom Table by custom_table_name. Returns: cells, display_name, external_key, id. Max 100 rows per page. Required: custom_table_name.
delete_a_ramp_custom_table_row_by_id
Delete rows from a Ramp Custom Table by custom_table_name. Returns: metadata. Required: custom_table_name, data.
ramp_custom_table_rows_partial_update
Change the external key of a single Ramp Custom Table row. Returns an empty 204 response on success. Required: id, custom_table_name, new_external_key.
create_a_ramp_custom_table_row
Append cells to rows in a Ramp Custom Table by table_name. Returns: metadata. Required: table_name, data.
ramp_custom_table_rows_bulk_delete
Remove cells from a Custom Table. Returns: metadata. Required: table_name, data.
ramp_custom_table_rows_bulk_update
Set values for rows in a Ramp Custom Table by custom_table_name. Returns: metadata. Required: custom_table_name, data.
list_all_ramp_custom_records_matrix_tables
List all Matrix tables for the business in Ramp. Matrix tables are special-purpose lookup tables where unique combinations of input values map to result values. Returns a list of matrix tables including their id and name. No required parameters.
create_a_ramp_custom_records_matrix_table
Create a Matrix table. Returns: table_id. Required: input_columns, label, result_columns.
create_a_ramp_matrix_table_column
Add a result column to an existing Ramp Matrix table. Returns the created result column. Only result columns (users and accounting_field_options) can be added; input columns cannot be added after table creation. Required: table_name, cardinality, label, native_table.
update_a_ramp_matrix_table_column_by_id
Change the API name of a Ramp Matrix table column (input or result) while preserving the human-readable label. Returns an empty 204 response on success. Required: id, table_name, new_name.
create_a_ramp_matrix_table_list_row
List rows from a Ramp Matrix table by table name, returning each row with inputs and results separated. Inputs are always complete (all input columns), while results are sparse (only set values). Returns: id, inputs, results. Required: table_name.
create_a_ramp_matrix_table_rename
Change the API name of a Matrix table in Ramp. Returns an empty 204 response on success. The request body is required but its field definitions are not enumerated in the available OpenAPI spec. Required: table_name, new_name.
delete_a_ramp_matrix_table_row_by_id
Delete a single Ramp matrix table row by id. Returns an empty 204 response on success. Required: id, table_name.
create_a_ramp_matrix_table_row
Append cells to Ramp matrix table rows by adding values to many-to-many result columns without replacing existing values. Only works on many-to-many result columns. Set ignore_duplicates=true to skip existing duplicate cells instead of erroring. Returns: metadata. Required: table_name, data.
ramp_matrix_table_rows_bulk_delete
Remove specific values from many-to-many result columns of Ramp matrix table rows without affecting other values. Returns: metadata. Required: table_name, data.
ramp_matrix_table_rows_bulk_update
Upsert (create or update) Ramp matrix table rows by table name. Row identity is defined by external_key within the input values, and result values can be partially updated. Returns: metadata. Required: table_name, data.
list_all_ramp_custom_records_native_tables
List Native Ramp tables available for custom records. Returns: table_name, type.
list_all_ramp_native_table_rows
List custom column values for rows of a Native Ramp table in Ramp. Returns: cells, display_name, external_key, id. Filter by ramp_id to retrieve rows for specific Ramp objects; max 100 rows per page. Required: native_table_name.
create_a_ramp_native_table_row
Append cells to a Native Ramp table in Ramp. Returns: metadata. Required: native_table_name, data.
delete_a_ramp_native_table_row_by_id
Remove cells from a Native Ramp table in Ramp. Returns: metadata. Required: native_table_name, data.
ramp_native_table_rows_bulk_update
Set values for rows of a Native Ramp table in Ramp. Returns: metadata. Required: native_table_name, data.
list_all_ramp_developer_departments
List departments in Ramp with cursor-based pagination. Returns: id, name. Page size must be between 2 and 100, defaulting to 20.
create_a_ramp_developer_department
Create a new department in Ramp. Returns the created department object including its id. Requires a JSON request body with department details. Required: name.
get_single_ramp_developer_department_by_id
Fetch a department. Returns: id, name. Required: id.
update_a_ramp_developer_department_by_id
Update a Ramp department by id. Returns the updated department object including its id. Required: id, name.
create_a_ramp_card_embed
Create an embed init token for a Ramp card to initialize Ramp Embedded. Returns the embed initialization response (Ramp Embedded Initialized). The specified card must be activated and currently active. Required: card_id, parent_origin.
list_all_ramp_developer_entities
List business entities in Ramp, filterable by currency, name, and primary status. Returns: accounts, connected_subsidiary, currency, custom_record_fields, default_bill_pay_payment_account_id, entity_name, id, is_primary, location_ids, payment_accounts. Results are paginated; max 100 per page, defaults to 20.
get_single_ramp_developer_entity_by_id
Get a single business entity in Ramp by id. Returns: accounts, connected_subsidiary, currency, custom_record_fields, default_bill_pay_payment_account_id, entity_name, id, is_primary, location_ids, payment_accounts. Required: id.
list_all_ramp_developer_funds
List Ramp funds with optional filters by display name, spend program, entity, card, user, termination status, and member roles. Returns: balance, cards, created_at, display_name, entity_id, id, is_exempt_from_policy_agent, is_shareable, members, overrides_spend_program, permitted_spend_types, spend_program_id, spending_restrictions, state, suspension, user_id, is_terminated. Max 100 per page.
create_a_ramp_developer_fund
Create a Ramp fund either with a spend_program_id (inherits program defaults) or standalone (must provide display_name, spending_restrictions, and permitted_spend_types). Returns: balance, cards, created_at, display_name, entity_id, id, is_exempt_from_policy_agent, is_shareable, members, overrides_spend_program, permitted_spend_types, spend_program_id, spending_restrictions, state, suspension,…. Required: user_id.
get_single_ramp_developer_fund_by_id
Get a single Ramp fund by id. Returns: balance, cards, created_at, display_name, entity_id, id, is_exempt_from_policy_agent, is_shareable, members, overrides_spend_program, permitted_spend_types, spend_program_id, spending_restrictions, state, suspension, user_id, is_terminated. Required: id.
update_a_ramp_developer_fund_by_id
Update a Ramp fund by id. Returns: balance, cards, created_at, display_name, entity_id, id, is_exempt_from_policy_agent, is_shareable, members, overrides_spend_program, permitted_spend_types, spend_program_id, spending_restrictions, state, suspension, user_id, is_terminated. Required: id.
delete_a_ramp_developer_fund_by_id
Terminate a Ramp fund by id. Returns: balance, cards, created_at, display_name, entity_id, id, is_exempt_from_policy_agent, is_shareable, members, overrides_spend_program, permitted_spend_types, spend_program_id, spending_restrictions, state, suspension, user_id, is_terminated. Required: id.
create_a_ramp_member_suspension
Suspend a fund member in Ramp. Returns the updated Fund object including id, display_name, spend_program_id, entity_id, is_terminated, and created_at. Required: fund_id, user_id.
ramp_member_suspensions_bulk_delete
Unsuspend a fund member in Ramp. Returns the updated Fund object including id, display_name, spend_program_id, entity_id, is_terminated, and created_at. Required: fund_id, user_id.
create_a_ramp_fund_suspension
Suspend a fund in Ramp. Returns the Fund object including its id and schema-specific attributes. Required: fund_id.
ramp_fund_suspensions_bulk_delete
Unsuspend a fund in Ramp, reversing a prior suspension. Returns the Fund object including its id and schema-specific attributes. Required: fund_id.
list_all_ramp_developer_item_receipts
List item receipts in Ramp with optional filters by entity, purchase order, or purchase order line item. Returns: archived_at, created_at, documents, id, item_receipt_number, line_items, memo, purchase_order_id, received_at, remote_id, entity_id, purchase_order_line_item_id. Archived receipts are excluded by default; set include_archived to true to include them.
create_a_ramp_developer_item_receipt
Create an item receipt in Ramp associated with a purchase order. Returns the created item receipt including id, entity_id, and purchase_order_id. Required: item_receipt_line_items, item_receipt_number, purchase_order_id, received_at.
get_single_ramp_developer_item_receipt_by_id
Get a single Ramp item receipt by id. Returns: archived_at, created_at, documents, id, item_receipt_number, line_items, memo, purchase_order_id, received_at, remote_id, entity_id, purchase_order_line_item_id. Required: id.
delete_a_ramp_developer_item_receipt_by_id
Delete an item receipt in Ramp by id. Returns an empty 204 response on success. Required: id.
list_all_ramp_developer_locations
List Ramp locations, optionally filtered by associated business entity. Returns: entity_id, id, name. Page size must be between 2 and 100; defaults to 20.
create_a_ramp_developer_location
Create a new location in Ramp. Returns the created Location object including its id. The request body is required and its fields are defined by the Ramp ApiLocationCreateRequestBody schema. Required: name.
get_single_ramp_developer_location_by_id
Get a single Ramp location by id. Returns: entity_id, id, name. Required: id.
update_a_ramp_developer_location_by_id
Update a Ramp location by id with a JSON request body. Returns: entity_id, id, name. The request body fields are defined by the Ramp ApiLocationUpdateRequestBody schema. Required: id, name.
list_all_ramp_developer_memos
List transaction memos in Ramp with optional filters by card, department, location, manager, merchant, user, and date range. Returns: id, memo, transaction_id, created_at, updated_at.
get_single_ramp_developer_memo_by_id
Get a single transaction memo in Ramp by id. Returns: id, memo, transaction_id, created_at, updated_at. Required: id.
create_a_ramp_developer_memo
Upload a new memo for a Ramp transaction. Returns: id, memo, transaction_id, created_at, updated_at. Required: memo_id, memo.
list_all_ramp_developer_merchants
List merchants. Returns: id, is_auto_approved, merchant_name, sk_category_name.
list_all_ramp_developer_purchase_orders
List Ramp purchase orders with optional filters by creation source, date range, external ID, remote ID, receipt status, entity, spend request, and three-way match status. Returns: accounting_field_selections, amount, archived_at, bill_ids, billing_status, created_at, creation_source, entity_id, external_id, id, item_receipt_ids, line_items, memo, name, net_payment_terms, owner_id, promise_date,…
create_a_ramp_developer_purchase_order
Create a new Ramp purchase order. Returns the created purchase order including id, creation_source, created_at, external_id, receipt_status, entity_id, three_way_match_enabled. Required: currency, entity_id, line_items, three_way_match_enabled.
get_single_ramp_developer_purchase_order_by_id
Get a single Ramp purchase order by id. Returns: accounting_field_selections, amount, archived_at, bill_ids, billing_status, created_at, creation_source, custom_form_collection_response, entity_id, external_id, id, item_receipt_ids, line_items, memo, name, net_payment_terms, owner_id, promise_date, purchase_order_number, ramp_url, receipt_status, remote_id, ship_to_address, ship_to_company_name,…. Required: id.
update_a_ramp_developer_purchase_order_by_id
Update an approved Ramp purchase order by id. Returns the updated purchase order including id, creation_source, created_at, external_id, receipt_status, entity_id, three_way_match_enabled. The purchase order must be approved. Required: id.
ramp_developer_purchase_orders_archive
Archive a Ramp purchase order by purchase_order_id. Returns an empty 204 response on success. Required: purchase_order_id.
create_a_ramp_purchase_order_line_item
Add line items to an existing Ramp purchase order. Returns the updated purchase order detail including id, created_at, creation_source, and receipt_status. Required: purchase_order_id, line_items.
update_a_ramp_purchase_order_line_item_by_id
Update a single line item on an existing Ramp purchase order. The purchase order must be approved. Returns the updated purchase order detail including id, created_at, creation_source, and receipt_status. Required: id, purchase_order_id.
delete_a_ramp_purchase_order_line_item_by_id
Delete a single line item from an approved Ramp purchase order. Returns the updated purchase order detail including id, created_at, creation_source, and receipt_status. The purchase order must be approved. Required: id, purchase_order_id.
list_all_ramp_receipt_integrations_opt_outs
List emails opted out of Ramp receipt integrations. Returns: email, id.
create_a_ramp_receipt_integrations_opt_out
Add a new email to the Ramp receipt integrations opt-out list. Returns: email, id. Required: business_id, email.
delete_a_ramp_receipt_integrations_opt_out_by_id
Remove an email from the Ramp receipt integration opt-out list, opting it back in to receipt integrations. Returns an empty 204 response on success. Required: id.
list_all_ramp_developer_receipts
List Ramp receipts with optional filters by creation date, transaction, or reimbursement. Returns: created_at, id, ocr, receipt_url, reimbursement_id, transaction_id, user_id, user_transaction_time. Page size must be between 2 and 100.
create_a_ramp_developer_receipt
Upload a receipt image to Ramp, optionally associating it with a transaction. If no transaction_id is provided, Ramp auto-matches the receipt to the most relevant transaction. Returns: id, created_at. Required: idempotency_key, user_id.
get_single_ramp_developer_receipt_by_id
Get a single Ramp receipt by id. Returns: created_at, id, ocr, receipt_url, reimbursement_id, transaction_id, user_id, user_transaction_time. Required: id.
list_all_ramp_developer_reimbursements
List Ramp reimbursements with filters for state, direction, sync status, date ranges, user, entity, and approval. Returns: accounting_date, accounting_field_selections, approved_at, attendees, created_at, direction, distance, employee_id, end_location, entity_amount, entity_id, fund_id, id, line_items, memo, merchant, merchant_amount, merchant_id, payee_amount, payment_batch_id, payment_id,…
get_single_ramp_developer_reimbursement_by_id
Get a single Ramp reimbursement by id. Returns: accounting_date, accounting_field_selections, approved_at, attendees, created_at, direction, distance, employee_id, end_location, entity_amount, entity_id, fund_id, id, line_items, memo, merchant, merchant_amount, merchant_id, payee_amount, payment_batch_id, payment_id, payment_processed_at, receipts, spend_limit_id, start_location, state,…. Required: id.
create_a_ramp_reimbursements_mileage
Create a mileage reimbursement in Ramp. Returns the created reimbursement object including its id, state, and user_id. A JSON request body is required. Required: distance, reimbursee_id, trip_date.
create_a_ramp_reimbursements_submit_receipt
Upload a receipt to create or link a Ramp reimbursement. When reimbursement_id is supplied the receipt links to that reimbursement; otherwise Ramp creates a draft reimbursement via OCR. Returns: accounting_date, accounting_field_selections, approved_at, attendees, created_at, direction, distance, employee_id, end_location, entity_amount, entity_id, fund_id, id, line_items, memo, merchant,…. Required: idempotency_key, reimbursee_id.
list_all_ramp_developer_repayments
List Ramp repayments ordered by creation date in descending order. Returns: entity_id, funding_method, id, original_transaction_id, repaid_at, repayment_amount, status, user_id, user_signature, created_at. Entity_id filtering is not yet supported.
list_all_ramp_developer_spend_programs
List spend programs in Ramp with paginated results. Returns: description, display_name, icon, id, is_shareable, issue_physical_card_if_needed, permitted_spend_types, restrictions, spending_restrictions. Max 100 per page.
create_a_ramp_developer_spend_program
Create a spend program in Ramp. Returns: description, display_name, icon, id, is_shareable, issue_physical_card_if_needed, permitted_spend_types, restrictions, spending_restrictions. Required: description, display_name, icon, permitted_spend_types, spending_restrictions.
get_single_ramp_developer_spend_program_by_id
Get a single Ramp spend program by id. Returns the spend program detail object including id, display_name, and spending_restrictions. Required: id.
list_all_ramp_spend_program_workflow_nodes
List External Approval Request workflow nodes for a Ramp spend program, filtered by the external approval integration key configured on each node. Returns: workflow_nodes. Required: spend_program_id, service_key.
create_a_ramp_spend_requests_draft_via_ocr
Create a draft spend request in Ramp by uploading a receipt or document image for OCR processing. Returns the created draft spend request including its id. A request body is required and must be sent as multipart/form-data. Required: idempotency_key, requester_user_id, spend_intent_id.
list_all_ramp_developer_statements
List Ramp statements with optional end_date range filtering. Returns: balance_sections, charges, credits, end_date, ending_balance, id, opening_balance, payments, preceding_statement_id, start_date, statement_lines, statement_url. Use from_date and to_date (ISO8601) to filter by the statement's end_date. Max 100 per page.
get_single_ramp_developer_statement_by_id
Get a single Ramp statement by id. Returns: balance_sections, charges, credits, end_date, ending_balance, id, opening_balance, payments, preceding_statement_id, start_date, statement_lines, statement_url. Required: id.
create_a_ramp_developer_token
Create an OAuth 2.0 access token in Ramp using authorization_code, refresh_token, or client_credentials grant. Returns: access_token, expires_in, id_token, refresh_token, refresh_token_expires_in, scope, token_type. Required: grant_type.
create_a_ramp_token_revoke
Revoke a Ramp access or refresh token. Returns an empty 200 response on success. Required: token.
list_all_ramp_developer_transactions
List Ramp transactions with extensive filtering by category, department, user, card, state, amount range, sync status, and more. Returns: accounting_categories, accounting_date, accounting_field_selections, all_requirements_met_and_approved, amount, attendees, card_holder, card_id, card_present, currency_code, decline_details, disputes, entity_amount, entity_id, fund_id, id, limit_id, line_items,…
get_single_ramp_developer_transaction_by_id
Get a single Ramp transaction by id. Returns: accounting_categories, accounting_date, accounting_field_selections, all_requirements_met_and_approved, amount, attendees, card_holder, card_id, card_present, currency_code, decline_details, disputes, entity_amount, entity_id, fund_id, id, limit_id, line_items, memo, merchant_amount, merchant_category_code, merchant_category_code_description,…. Required: id.
update_a_ramp_developer_transaction_by_id
Split a Ramp transaction into line items or update an existing split by sending line_items with amounts in minor units that sum to the transaction amount. Returns: accounting_categories, accounting_date, accounting_field_selections, all_requirements_met_and_approved, amount, attendees, card_holder, card_id, card_present, currency_code, decline_details, disputes, entity_amount, entity_id, fund_id,…. Required: id.
list_all_ramp_developer_transfers
List Ramp transfer payments with optional filters by status, sync status, entity, statement, and date range. Returns: amount, bank_account_id, created_at, entity_id, id, payment_id, status, sync_status.
get_single_ramp_developer_transfer_by_id
Get a single Ramp transfer payment by id. Returns: amount, bank_account_id, created_at, entity_id, id, payment_id, status, sync_status. Required: id.
list_all_ramp_developer_trips
List all Ramp trips for the business, filterable by user IDs, status, date range, amount, and trip name. Returns: id, name. Max 100 per page.
get_single_ramp_developer_trip_by_id
Get a single Ramp trip by id. Returns: created_at, description, end_date, id, length_in_days, locations, name, spend_events, start_date, status, total_spend, total_spend_amount, travel_types, updated_at, user_id, amount. Required: id.
list_all_ramp_developer_unified_requests
List Ramp unified requests with optional filters by department, entity, location, owner, spend program, type, status, and amount range. Returns: id, created_at. Page size 2–100. Response schema not finalized.
get_single_ramp_developer_unified_request_by_id
Get a single Ramp unified request by id. Returns: id, created_at. Response schema is not yet finalized and subject to breaking changes. Required: id.
list_all_ramp_developer_users
List Ramp users with optional filters by employee_id, role, status, entity, department, email, and location. Returns the user object including id and additional fields defined by the Ramp User schema. Max 100 per page.
get_single_ramp_developer_user_by_id
Get a single Ramp user by id. Returns the user object including id and additional fields defined by the Ramp User schema. Required: id.
update_a_ramp_developer_user_by_id
Update a Ramp user by id. Returns an empty 204 response on success. Required: id.
ramp_developer_users_invite
Manage a Ramp draft user's invite lifecycle — schedule a future invitation, cancel a pending scheduled invitation, or send the invite immediately. The user must be in DRAFT status for SCHEDULE and SEND_NOW. Returns an empty object on success. Required: user_id, action.
ramp_developer_users_bulk_update
Deactivate a Ramp user by user_id. Deactivated users can no longer log in, spend on cards, or receive Ramp notifications. Returns an empty object on success. Required: user_id.
create_a_ramp_users_deferred
Create a deferred user invite in Ramp, triggering an async task that emails an invitation the recipient must accept to be onboarded. Returns: id. The request body is required; specify location_id to assign the user to a specific entity. Required: email, first_name, idempotency_key, last_name, role.
get_single_ramp_deferred_status_by_id
Fetch the status of a deferred Ramp user invite task by id. Returns: context, data, id, status. Required: id.
ramp_user_reactivates_bulk_update
Reactivate a Ramp user so they can log in again, spend on previously issued cards, and resume receiving Ramp notifications. Returns an empty response body on success. Required: user_id.
create_a_ramp_vault_card
Create a spend limit and retrieve sensitive card details in Ramp. Returns: allowed_overage_percent_override, card, created_at, display_name, restrictions, spend_limit_id, spend_program_id, user_id. Requires a JSON request body. This endpoint is deprecated. Required: user_id.
get_single_ramp_vault_card_by_id
Get a Ramp card's sensitive vault details by id. Returns the card's id and an attributes object containing sensitive card data (PAN, CVV). This endpoint is deprecated. Required: id.
list_all_ramp_developer_vendors
List vendors. Returns: accounting_vendor_remote_id, address, addresses, billing_frequency, contacts, country, created_at, default_entity_id.
create_a_ramp_developer_vendor
Create a new vendor. Returns: accounting_vendor_remote_id, address, addresses, billing_frequency, contacts, country, created_at, default_entity_id. Required: business_vendor_contacts, country.
get_single_ramp_developer_vendor_by_id
Get a single Ramp vendor by id. Returns: accounting_vendor_remote_id, address, addresses, approval_status, billing_frequency, contacts, country, created_at, custom_form_collection_response, custom_record_fields, default_entity_id, default_payment_method, description, external_vendor_id, federal_tax_classification, id, is_active, is_deletable, merchant_id, name, name_legal, parent_vendor_id,…. Required: id.
update_a_ramp_developer_vendor_by_id
Update a vendor. Returns: accounting_vendor_remote_id, address, addresses, billing_frequency, contacts, country, created_at, default_entity_id. Required: id.
delete_a_ramp_developer_vendor_by_id
Delete a Ramp vendor by id. Returns an empty 204 response on success. A vendor cannot be deleted if it has associated transactions, bills, contracts, spend requests, or child vendors. Required: id.
create_a_ramp_vendors_agreement
List Ramp vendor agreements by submitting a query request body. Returns: auto_renewal, available_actions, contract_owners, created_at, currency, custom_record_field_values, days_remaining, deleted_at, department, description, draft_spend_requests, end_date, has_approved_renewal_request, id, is_snoozed, is_up_for_renewal, last_date_to_terminate, latest_renewal_request, logo, name,…
get_single_ramp_vendors_agreement_by_id
Get a single Ramp vendor agreement by id. Returns: archived_at, auto_renewal, available_actions, comment_thread_uuid, contract_owners, created_at, currency, custom_record_field_values, days_remaining, deleted_at, description, draft_spend_requests, end_date, has_approved_renewal_request, id, is_active, is_snoozed, is_up_for_renewal, last_date_to_terminate, latest_rejected_renewal_request,…. Required: id.
update_a_ramp_vendors_agreement_by_id
Update a Ramp vendor agreement by id. Returns: archived_at, auto_renewal, available_actions, comment_thread_uuid, contract_owners, created_at, currency, custom_record_field_values, days_remaining, deleted_at, description, draft_spend_requests, end_date, has_approved_renewal_request, id, is_active, is_snoozed, is_up_for_renewal, last_date_to_terminate, latest_rejected_renewal_request, line_items,…. Required: id.
delete_a_ramp_vendors_agreement_by_id
Delete a Ramp vendor agreement by id. Returns an empty 204 response on success. Required: id.
create_a_ramp_agreement_document
Upload documents to a Ramp vendor agreement as multipart form-data, including each file as a repeated `documents` part. Returns: batch_id, document_count, job_id. An X-Idempotency-Key header must also be supplied. Required: agreement_id.
create_a_ramp_agreement_link
Link purchase orders or documents to a Ramp vendor agreement. Returns the link operation result object whose field-level schema is not enumerated in the discovered API reference. Required: agreement_id.
create_a_ramp_agreement_link_spend_request
Link a spend request to a Ramp vendor agreement. Returns: agreement, number_of_documents_linked, number_of_purchase_orders_linked. Required: agreement_id, source, spend_request_id.
ramp_agreement_unlinks_bulk_delete
Unlink purchase orders or documents from a Ramp vendor agreement. Returns a success response confirming the unlink operation. Required: agreement_id.
list_all_ramp_vendors_credits
List all Ramp vendor credits for a business, with optional filters by entity, created_at range, accounting date range, and fully-used status. Returns: id, created_at. Max 100 per page.
get_single_ramp_vendors_credit_by_id
Get a single Ramp vendor credit by id. Returns: accounting_date, accounting_field_selections, applied_bills, applied_draft_bills, created_at, entity_id, expense_line_items, id, inventory_line_items, reference_bill_id, reference_number, remaining_amount, total_amount, total_applied_amount, vendor_id. Required: id.
list_all_ramp_vendor_accounts
List vendor bank accounts for a specific Ramp vendor. Returns: account_nickname, account_number_last_four, currency, id, is_default, payment_method. Required: vendor_id.
ramp_vendor_accounts_archive
Archive a Ramp vendor bank account. If the bank account has associated bills, drafts, or recurring templates, a replacement_bank_account_id must be provided in the request body. Returns an empty 204 response on success. Required: bank_account_id, vendor_id.
get_single_ramp_vendor_account_by_id
Get a Ramp vendor bank account by id. Returns: account_nickname, account_number_last_four, currency, id, is_default, payment_method. Required: id, vendor_id.
create_a_ramp_vendor_agreement
Create a vendor agreement for a specific Ramp vendor. Returns the created vendor agreement object. Required: vendor_id, auto_renewal, name, notifications_on, start_date, total_value.
list_all_ramp_vendor_childrens
List child vendors of a parent vendor. Returns: accounting_vendor_remote_id, address, addresses, billing_frequency, contacts, country, created_at, default_entity_id. Required: vendor_id.
list_all_ramp_vendor_contacts
List vendor contacts for a specific Ramp vendor. Returns the vendor contact object including id and contact-specific attributes defined upstream. Required: vendor_id.
get_single_ramp_vendor_contact_by_id
Get a single Ramp vendor contact by id. Returns the vendor contact object including id and contact-specific attributes defined upstream. Required: id, vendor_id.
list_all_ramp_vendor_credits
List vendor credits for a specific Ramp vendor. Returns: id, created_at. Fully used credits are excluded by default. Required: vendor_id.
create_a_ramp_vendor_hold
Place a hold on a Ramp vendor to block payments. Open, unpaid bills that can still be modified are removed from scheduled payment flows. Returns an empty 204 response on success. Required: vendor_id.
create_a_ramp_vendor_release
Release the active vendor-scoped hold in Ramp, allowing new payments to be scheduled for the vendor. Payments removed while the hold was active must be re-scheduled afterward. Returns an empty 204 response on success. Required: vendor_id.
create_a_ramp_vendor_update_bank_account
Add payment details to a Ramp vendor's bank account through the approval workflow, supporting ACH (routing and account numbers), Wire (routing and account numbers), and Crypto (stablecoin wallet address and network) payment methods. The proposal may require approval depending on the business's approval policies. Returns the bank account update response. Required: vendor_id.
list_all_ramp_developer_webhooks
List all Ramp webhook subscriptions. Returns: business_id, created_at, endpoint_url, event_types, id, status, updated_at, type, object.
create_a_ramp_developer_webhook
Create a new Ramp webhook subscription. The subscription starts in a pending verification state and must be verified before receiving events. Returns: additional_headers, business_id, created_at, endpoint_url, event_types, id, secret, status, updated_at, type, object. Required: endpoint_url, event_types.
get_single_ramp_developer_webhook_by_id
Get a single Ramp webhook subscription by id. Returns: business_id, created_at, endpoint_url, event_types, id, status, updated_at, type, object. Required: id.
delete_a_ramp_developer_webhook_by_id
Delete a Ramp webhook subscription by id. Returns an empty 204 response on success. Required: id.
ramp_developer_webhooks_verify
Verify a pending Ramp webhook subscription by submitting the challenge string Ramp sent to your endpoint during setup. Returns: success. Required: webhook_id, challenge.
create_a_ramp_webhooks_mock_webhook_event
Create a mock Ramp webhook event delivered to active subscriptions matching the specified event type. Returns the event payload including id, type, created_at, business_id, and object. Required: event_type, object_id, object_metadata.
create_a_ramp_fund_member
Add members to a Ramp fund by fund_id. Returns the updated Fund object including id, display_name, members, and spend_program_id. Required: fund_id, user_ids.
ramp_fund_members_bulk_delete
Remove members from a Ramp fund by submitting their user IDs. Returns the updated fund object including id, display_name, entity_id, is_terminated, and members. This is a beta endpoint. Required: fund_id, user_ids.
Why Truto
Why use Truto’s MCP server for Ramp
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with Ramp in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Ramp account
Use Truto’s frontend SDK to connect your customer’s Ramp account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Ramp
Truto’s Proxy API is a 1-to-1 mapping of the Ramp API. You call us, we call Ramp, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Ramp’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Ramp on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How does authentication work for end users connecting their Ramp account?
Ramp uses OAuth 2.0 for partner integrations. Truto handles the OAuth flow, token storage, and refresh so your end users authorize once and your product receives a persistent connection without you managing credentials.
Can we push accounting coding decisions back into Ramp?
Yes. You can create accounting coding selections on transactions, then call the accounting sync endpoint to finalize records. This is the standard pattern for ML-driven categorization tools that want finance to just approve, not code.
Does Truto support Ramp's Embedded card flows, including PCI-sensitive card data?
Yes. Truto exposes both the card embed endpoint (browser iframe for showing card numbers securely to end users) and the vault card endpoints (server-side, requires Ramp PCI qualification) so you can pick the model that matches your compliance posture.
Can we listen to Ramp events like new transactions or approvals?
Yes. You can create and manage Ramp developer webhooks through Truto, verify webhook signatures, and test with mock webhook events. Truto normalizes delivery so your handlers receive a consistent event stream.
How do we handle custom fields and dimensions that vary by customer?
Ramp supports Accounting Fields, Field Options, and Custom/Native/Matrix Tables for customer-specific dimensions. Truto exposes list, create, update, and delete operations on each so you can dynamically render and write to whatever chart of accounts or metadata schema a given customer uses.
What procurement-to-pay operations are supported?
You can create and update purchase orders and their line items, upload item receipts, create and hold or release bills, and link vendor agreements to spend requests—covering the full 3-way match lifecycle from PO through bill payment.
From the Blog
Ramp integration guides
Deep dives, architecture guides, and practical tutorials for building Ramp integrations.
Ramp
Get Ramp integrated into your app
Our team understands what it takes to make a Ramp integration successful. A short, crisp 30 minute call with folks who understand the problem.