Supergood | TravelBank API
Programmatically access TravelBank travel bookings, expense reports, reimbursements, and corporate card transactions with a stable REST API. Supergood builds and operates production-grade, unofficial TravelBank integrations so your team can automate finance and travel operations without heavy custom engineering.
Plain English: TravelBank is travel and expense management software for companies to book trips, enforce policies, capture receipts, approve reports, and reimburse employees—often alongside corporate card feeds. An unofficial API lets you programmatically pull employees, departments, card transactions, expense reports, line items, receipts, trips, itineraries, approvals, policies, and budgets—and push new expenses, submit reports, attach receipts, and trigger approvals or reimbursements.
For a tech company integrating with TravelBank, this means you can ingest real-time spend and travel data to power analytics, sync card transactions and approved expenses to accounting (e.g., QuickBooks, Xero, NetSuite), automate per diem and mileage calculations, route policy violations for review, and unify travel itineraries in your platform. You can also create expense line items from your receipt capture flow, submit reports programmatically, generate alerts for non-compliant bookings, and keep ERP, BI, and HRIS systems in lockstep.
What is TravelBank?
TravelBank (https://travelbank.com/) is a cloud platform for corporate travel and expense (T&E) management that centralizes trip booking, policy enforcement, receipt capture, approvals, reimbursements, and spend analytics. Teams use TravelBank to book flights, hotels, and cars, manage expense reports and categories, reconcile corporate card transactions, set travel and expense policies, route approvals, and export data to accounting systems.
Core product areas include:
- Travel Booking (Flights, Hotels, Cars, Itineraries, Trip Management)
- Expense Management (Expense Reports, Categories, Receipt Capture, Per Diem, Mileage)
- Cards & Spend (Corporate Card Feeds, Transaction Matching, Budget Tracking)
- Policies & Approvals (Travel/Expense Policies, Multi-Step Approval Chains)
- Reimbursements & Accounting (ACH Payouts, GL Mapping, Exports to QuickBooks/Xero/NetSuite)
- Analytics & Insights (Spend Dashboards, Forecasting, Benchmarking)
Common data entities:
- Companies, Employees, Roles/Permissions (Admin, Approver, Booker, Employee)
- Departments, Cost Centers, Projects
- Cards and Transactions (Merchant, MCC, Amounts, Currency, Status)
- Expense Reports and Line Items (Categories, Taxes, Receipts, Mileage/Per Diem)
- Receipts (Images/PDFs, OCR Data)
- Trips and Bookings (PNR, Flight/Hotel/Car Segments, Policy Flags)
- Policies (Travel and Expense Rules, Budgets, Exceptions)
- Approvals (States, Approvers, Timestamps)
- Reimbursements (Methods, Status, Settlement Dates)
The TravelBank Integration Challenge
T&E teams rely on TravelBank daily, but turning portal-based workflows into API-driven automation can be challenging:
- Portal-first features: Booking flows, receipt capture, and approvals are optimized for the UI, not headless automation
- Data exports: Many teams report friction with CSV exports, scheduled reports, or manual downloads when they want near real-time syncs
- Limited/paid API access: Public endpoints and webhooks may be limited or gated behind premium plans, complicating automation budgets
- Role-aware views: Admins, approvers, and travelers see different data and policy states; compliance context matters
- Card transaction normalization: Mapping merchants, categories, taxes, and currencies requires careful handling
- Authentication complexity: SSO/MFA and session lifecycles make headless integrations brittle if not engineered thoughtfully
How Supergood Creates TravelBank APIs
Supergood reverse-engineers authenticated browser flows and network interactions to deliver a resilient API endpoint layer for your TravelBank tenant.
- Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely
- Maintains session continuity with automated refresh and change detection
- Normalizes responses so you can integrate once and rely on consistent objects across modules
- Aligns with customer entitlements and role-based permissions to ensure compliant access
Use Cases
Employee, Card & Spend Data Sync
- Mirror employees, departments, and cost centers into internal systems
- Keep card transactions current for analytics and reconciliations
- Normalize merchant names, MCCs, currencies, and tax amounts for multi-entity reporting
Expense Automation & Approvals
- Create expense line items from your receipt or OCR pipeline
- Submit reports programmatically and trigger approval workflows
- Track policy violations and drive SLA alerts or remediation flows
Travel Booking & Policy Enforcement
- Ingest trips and itineraries to enrich calendars, duty of care, and traveler dashboards
- Detect non-compliant bookings and escalate for approval or guidance
- Attach travel documents and unify itineraries with expense records
Accounting & Reimbursements
- Map categories and cost centers to GL accounts and export to ERP/accounting (e.g., QuickBooks, Xero, NetSuite)
- Track reimbursement states and settlement dates for payroll or ACH
- Streamline accruals and period-end reporting with normalized data
Available Endpoints
Authentication
POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.
curl --request POST \
--url https://api.supergood.ai/integrations/<integration_id>/sessions \
--header 'Authorization: Basic <Base64 encoded token>' \
--header 'Content-Type: application/json' \
--data '{
"username": "[email protected]",
"password": "<password>",
"mfa": { "type": "totp", "code": "123456" }
}'
Example response
{
"authToken": "eyJhbGciOi...",
"expiresIn": 3600,
"user": {
"id": "u_tbk_9f31c8",
"name": "Finance Admin",
"entitlements": ["travel", "expenses", "cards", "approvals", "reimbursements"]
}
}
Expense Reports
GET /expense-reports: List expense reports with filters and summary details.
Query parameters
- employeeId: string
- departmentId: string
- status: draft | submitted | approved | reimbursed | rejected
- submittedFrom, submittedTo: ISO 8601 timestamps
- updatedFrom: ISO 8601 timestamp
- page, pageSize: integers for pagination
Example response
{
"items": [
{
"reportId": "er_72c0f1",
"employeeId": "emp_18b7d3",
"employeeName": "Taylor Nguyen",
"departmentName": "Sales",
"currency": "USD",
"total": 684.72,
"reimbursableTotal": 322.45,
"cardTotal": 362.27,
"receiptCount": 7,
"status": "approved",
"policyViolations": [
{"code": "meal_limit", "severity": "minor", "amount": 12.00}
],
"submittedAt": "2026-01-12T16:28:00Z",
"approvedAt": "2026-01-14T09:33:12Z",
"reimbursedAt": "2026-01-18T18:02:11Z",
"updatedAt": "2026-01-18T18:02:11Z"
}
],
"page": 1,
"pageSize": 50,
"total": 1
}
Report Line Items
POST /expense-reports/{reportId}/expenses: Create a new expense line item with categorization, receipt, and metadata.
curl --request POST \
--url https://api.supergood.ai/integrations/<integration_id>/expense-reports/er_72c0f1/expenses \
--header 'Authorization: Bearer <authToken>' \
--header 'Content-Type: application/json' \
--data '{
"date": "2026-01-10",
"amount": 45.89,
"currency": "USD",
"categoryId": "cat_meals",
"merchantName": "Cafe Lumin",
"taxAmount": 3.21,
"memo": "Prospect lunch",
"location": {"city": "Austin", "region": "TX", "country": "US"},
"receipt": {"uploadToken": "upl_90baf7", "fileName": "receipt_0109.jpg"},
"cardTransactionId": "txn_c_5912bd",
"attendees": [
{"name": "Jordan Lee", "title": "VP Procurement", "company": "Acme Co."}
],
"expenseType": "receipt",
"referenceId": "crm-meeting-4821"
}'
Example response
{
"expenseId": "exp_1c83b9",
"status": "pending",
"policyFlags": [],
"createdAt": "2026-01-12T08:51:03Z"
}
Trips & Itineraries
GET /trips: List trips and itineraries with booking details and policy flags.
Query parameters
- travelerId: string
- status: requested | booked | canceled | completed
- startFrom, endTo: ISO 8601 dates for trip window
- page, pageSize: integers for pagination
Example response
{
"items": [
{
"tripId": "trip_4fb210",
"pnr": "AB12CD",
"travelerId": "emp_18b7d3",
"travelerName": "Taylor Nguyen",
"startDate": "2026-01-22",
"endDate": "2026-01-25",
"currency": "USD",
"totalCost": 812.40,
"segments": {
"flights": [
{
"carrier": "UA",
"flightNumber": "UA1286",
"depart": {"airport": "SFO", "time": "2026-01-22T09:10:00-08:00"},
"arrive": {"airport": "AUS", "time": "2026-01-22T14:45:00-06:00"},
"class": "economy"
}
],
"hotels": [
{
"name": "Hotel Meridian",
"checkIn": "2026-01-22",
"checkOut": "2026-01-25",
"address": {"city": "Austin", "region": "TX", "country": "US"}
}
],
"cars": []
},
"policyFlags": ["hotel_rate_above_budget"],
"approvalStatus": "approved",
"createdAt": "2026-01-15T12:21:09Z"
}
],
"page": 1,
"pageSize": 50,
"total": 1
}
Technical Specifications
- Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or customer-managed credentials
- Response format: JSON with consistent resource schemas and pagination across modules
- Rate limits: Tuned for enterprise throughput while honoring customer entitlements and usage controls
- Session management: Automatic reauth and cookie/session rotation with health checks
- Data freshness: Near real-time retrieval of trips, expense reports, receipts, card transactions, and approvals
- Security: Encrypted transport, scoped tokens, and audit logging; respects TravelBank role-based permissions
- Webhooks: Optional asynchronous delivery for long-running workflows (e.g., report approvals, reimbursement updates)
Performance Characteristics
- Latency: Sub-second responses for list/detail queries under normal load
- Throughput: Designed for high-volume expense report sync and receipt/transaction processing
- Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
- Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates
Getting Started
- Schedule Integration Assessment
Book a 30-minute session to confirm your modules, licensing, and authentication model.
- Supergood Builds and Validates Your API
We deliver a hardened TravelBank adapter tailored to your workflows and entitlements.
- Deploy with Monitoring
Go live with continuous monitoring and automatic adjustments as TravelBank evolves.
Frequently Asked Questions
Q: Which TravelBank modules can this integration cover?
Supergood supports workflows across commonly used modules such as Travel (Trips, Itineraries), Expenses (Reports, Line Items, Receipts), Cards & Spend (Corporate Card Transactions), Policies & Approvals, and Reimbursements/Accounting exports, subject to your licensing and entitlements. We scope coverage during integration assessment.
Q: How are MFA and SSO handled for automation?
We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. Sessions are refreshed automatically with secure challenge handling.
Q: Can you sync expenses and card transactions to our accounting system?
Yes. We can normalize expense categories, cost centers, and card transactions to match your ERP/accounting schema and deliver updates via webhooks or polling while complying with rate and permission constraints. We commonly integrate with QuickBooks, Xero, and NetSuite.
Q: Do you support policy flags and approvals?
Yes. Policy violations and approval states are modeled explicitly in our normalized responses. We support submitting reports, triggering approvals, and retrieving approval artifacts and timestamps.
Related Integrations
Intralinks API - Programmatically access the Intralinks VDR with Supergood
Ready to automate your TravelBank workflows?
Supergood can have your TravelBank integration live in days with no ongoing engineering maintenance.