openapi: 3.0.3 info: title: SAP Concur Expense Expense Reports Expenses API description: REST API for managing expense reports, entries, allocations, and attendees. Supports creating, updating, and submitting expense reports with receipt images, policy validation, and approval workflows. version: '4.0' contact: name: SAP Concur Developer Support url: https://developer.concur.com/ x-generated-from: documentation x-last-validated: '2026-04-18' servers: - url: https://us.api.concursolutions.com description: US Production - url: https://emea.api.concursolutions.com description: EMEA Production security: - bearerAuth: [] tags: - name: Expenses description: Manage individual expense entries paths: /expensereports/v4/reports/{reportId}/expenses: get: operationId: getExpenses summary: SAP Concur Get Expenses for Report description: Retrieves all expense entries for a specific report. tags: - Expenses parameters: - name: reportId in: path required: true description: The unique identifier of the expense report. schema: type: string responses: '200': description: Successfully retrieved expenses. content: application/json: schema: $ref: '#/components/schemas/ExpenseCollection' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createExpense summary: SAP Concur Create Expense Entry description: Creates a new expense entry within an expense report. tags: - Expenses parameters: - name: reportId in: path required: true description: The unique identifier of the expense report. schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ExpenseCreate' responses: '201': description: Expense entry created successfully. content: application/json: schema: $ref: '#/components/schemas/Expense' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: Expense: type: object description: An individual expense entry. properties: expenseId: type: string description: Unique identifier for the expense entry. example: '600456' expenseTypeName: type: string description: Name of the expense type. example: Airfare transactionDate: type: string format: date description: Date of the transaction. example: '2026-03-10' transactionAmount: type: number format: double description: Amount of the transaction. example: 875.5 transactionCurrencyCode: type: string description: Currency code of the transaction. example: USD vendorName: type: string description: Name of the vendor. example: United Airlines description: type: string description: Description of the expense. example: Flight from SFO to JFK receiptRequired: type: boolean description: Whether a receipt is required. example: true ExpenseCollection: type: object description: Collection of expense entries. properties: expenses: type: array items: $ref: '#/components/schemas/Expense' ExpenseCreate: type: object description: Request body for creating an expense entry. required: - expenseTypeName - transactionDate - transactionAmount - transactionCurrencyCode properties: expenseTypeName: type: string description: Name of the expense type. example: Airfare transactionDate: type: string format: date description: Date of the transaction. example: '2026-03-10' transactionAmount: type: number format: double description: Amount of the transaction. example: 875.5 transactionCurrencyCode: type: string description: Currency code. example: USD vendorName: type: string description: Name of the vendor. example: United Airlines description: type: string description: Description of the expense. example: Flight from SFO to JFK securitySchemes: bearerAuth: type: http scheme: bearer description: OAuth 2.0 Bearer Token authentication.