openapi: 3.1.0 info: title: Workday Financials Workday Revenue Management API description: >- API for managing revenue recognition, contracts, billing, and revenue accounting in compliance with ASC 606 and IFRS 15 within Workday Revenue Management. version: v38.2 contact: name: Workday Support url: https://www.workday.com/en-us/company/latest/support.html termsOfService: https://www.workday.com/en-us/legal.html externalDocs: description: Workday Revenue Management API Documentation url: https://community.workday.com/sites/default/files/file-hosting/productionapi/index.html servers: - url: https://{tenant}.workday.com/api/revenueManagement/v38.2 description: Workday Revenue Management Production variables: tenant: description: Workday tenant identifier default: your-tenant tags: - name: Billing Schedules description: Manage billing schedules and invoice generation - name: Revenue Contracts description: Manage revenue contracts and performance obligations - name: Revenue Recognition description: Revenue recognition events and processing - name: Revenue Schedules description: Access and manage revenue recognition schedules security: - bearerAuth: [] paths: /revenueContracts: get: operationId: listRevenueContracts summary: Workday Financials List revenue contracts description: >- Retrieve a collection of revenue contracts. tags: - Revenue Contracts parameters: - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - name: status in: query description: Filter by contract status schema: type: string enum: - Draft - Active - Completed - Canceled responses: '200': description: Revenue contracts retrieved successfully content: application/json: schema: type: object properties: total: type: integer data: type: array items: $ref: '#/components/schemas/RevenueContract' '401': $ref: '#/components/responses/Unauthorized' /revenueContracts/{id}: get: operationId: getRevenueContract summary: Workday Financials Get a revenue contract description: >- Retrieve details of a specific revenue contract. tags: - Revenue Contracts parameters: - $ref: '#/components/parameters/resourceId' responses: '200': description: Revenue contract details content: application/json: schema: $ref: '#/components/schemas/RevenueContract' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' /revenueContracts/{id}/performanceObligations: get: operationId: listPerformanceObligations summary: Workday Financials List performance obligations for a contract description: >- Retrieve performance obligations associated with a revenue contract. tags: - Revenue Contracts parameters: - $ref: '#/components/parameters/resourceId' responses: '200': description: Performance obligations retrieved successfully content: application/json: schema: type: object properties: total: type: integer data: type: array items: $ref: '#/components/schemas/PerformanceObligation' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' /revenueSchedules: get: operationId: listRevenueSchedules summary: Workday Financials List revenue schedules description: >- Retrieve a collection of revenue recognition schedules. tags: - Revenue Schedules parameters: - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' responses: '200': description: Revenue schedules retrieved successfully content: application/json: schema: type: object properties: total: type: integer data: type: array items: $ref: '#/components/schemas/RevenueSchedule' '401': $ref: '#/components/responses/Unauthorized' /revenueSchedules/{id}: get: operationId: getRevenueSchedule summary: Workday Financials Get a revenue schedule description: >- Retrieve details of a specific revenue recognition schedule. tags: - Revenue Schedules parameters: - $ref: '#/components/parameters/resourceId' responses: '200': description: Revenue schedule details content: application/json: schema: $ref: '#/components/schemas/RevenueSchedule' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' /billingSchedules: get: operationId: listBillingSchedules summary: Workday Financials List billing schedules description: >- Retrieve a collection of billing schedules. tags: - Billing Schedules parameters: - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' responses: '200': description: Billing schedules retrieved successfully content: application/json: schema: type: object properties: total: type: integer data: type: array items: $ref: '#/components/schemas/BillingSchedule' '401': $ref: '#/components/responses/Unauthorized' /billingSchedules/{id}: get: operationId: getBillingSchedule summary: Workday Financials Get a billing schedule description: >- Retrieve details of a specific billing schedule. tags: - Billing Schedules parameters: - $ref: '#/components/parameters/resourceId' responses: '200': description: Billing schedule details content: application/json: schema: $ref: '#/components/schemas/BillingSchedule' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' /revenueRecognitionEvents: get: operationId: listRevenueRecognitionEvents summary: Workday Financials List revenue recognition events description: >- Retrieve a collection of revenue recognition events. tags: - Revenue Recognition parameters: - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - name: fromDate in: query description: Filter events from this date schema: type: string format: date - name: toDate in: query description: Filter events to this date schema: type: string format: date responses: '200': description: Revenue recognition events retrieved successfully content: application/json: schema: type: object properties: total: type: integer data: type: array items: $ref: '#/components/schemas/RevenueRecognitionEvent' '401': $ref: '#/components/responses/Unauthorized' components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth 2.0 bearer token obtained from Workday authentication parameters: resourceId: name: id in: path required: true description: Unique identifier of the resource (WID) schema: type: string limit: name: limit in: query description: Maximum number of results to return schema: type: integer default: 20 maximum: 100 offset: name: offset in: query description: Number of results to skip for pagination schema: type: integer default: 0 responses: Unauthorized: description: Authentication credentials are missing or invalid NotFound: description: The requested resource was not found schemas: RevenueContract: type: object properties: id: type: string description: Workday ID (WID) for the revenue contract contractNumber: type: string description: Contract reference number customer: $ref: '#/components/schemas/CustomerRef' startDate: type: string format: date description: Contract start date endDate: type: string format: date description: Contract end date totalContractValue: type: number format: double description: Total contract value currency: $ref: '#/components/schemas/CurrencyRef' status: type: string enum: - Draft - Active - Completed - Canceled description: Current contract status revenueRecognitionStandard: type: string enum: - ASC_606 - IFRS_15 description: Revenue recognition standard applied company: $ref: '#/components/schemas/CompanyRef' PerformanceObligation: type: object properties: id: type: string description: Workday ID (WID) for the performance obligation name: type: string description: Name of the performance obligation transactionPrice: type: number format: double description: Allocated transaction price satisfactionMethod: type: string enum: - OverTime - PointInTime description: How the obligation is satisfied percentComplete: type: number format: double description: Percentage of obligation completed minimum: 0 maximum: 100 status: type: string enum: - Open - Satisfied - Canceled description: Current obligation status RevenueSchedule: type: object properties: id: type: string description: Workday ID (WID) for the revenue schedule revenueContract: $ref: '#/components/schemas/ContractRef' scheduledDate: type: string format: date description: Scheduled recognition date amount: type: number format: double description: Revenue amount to be recognized currency: $ref: '#/components/schemas/CurrencyRef' status: type: string enum: - Scheduled - Recognized - Reversed description: Schedule status BillingSchedule: type: object properties: id: type: string description: Workday ID (WID) for the billing schedule revenueContract: $ref: '#/components/schemas/ContractRef' billingDate: type: string format: date description: Scheduled billing date amount: type: number format: double description: Billing amount currency: $ref: '#/components/schemas/CurrencyRef' status: type: string enum: - Scheduled - Invoiced - Canceled description: Billing schedule status RevenueRecognitionEvent: type: object properties: id: type: string description: Workday ID (WID) for the recognition event revenueContract: $ref: '#/components/schemas/ContractRef' recognitionDate: type: string format: date description: Date revenue was recognized amount: type: number format: double description: Recognized revenue amount currency: $ref: '#/components/schemas/CurrencyRef' recognitionType: type: string description: Type of recognition event CustomerRef: type: object properties: id: type: string description: Workday ID of the customer descriptor: type: string description: Display name of the customer CompanyRef: type: object properties: id: type: string description: Workday ID of the company descriptor: type: string description: Display name of the company CurrencyRef: type: object properties: id: type: string description: Workday ID of the currency descriptor: type: string description: Currency code (e.g., USD, EUR) ContractRef: type: object properties: id: type: string description: Workday ID of the revenue contract descriptor: type: string description: Display name of the contract