openapi: 3.1.0 info: title: Mercoa Entities Invoices API description: 'The Mercoa REST API powers embedded accounts payable and accounts receivable workflows inside vertical SaaS platforms. This spec is a curated subset of the canonical Mercoa OpenAPI document (https://github.com/mercoa-finance/openapi). All requests authenticate with a Bearer token (API key or JWT) in the Authorization header. ' version: '1.0' contact: name: Mercoa url: https://docs.mercoa.com/ servers: - url: https://api.mercoa.com description: Production security: - bearerAuth: [] tags: - name: Invoices paths: /invoices: get: tags: - Invoices summary: List invoices across the organization responses: '200': description: Paginated invoices post: tags: - Invoices summary: Bulk create invoices responses: '201': description: Created put: tags: - Invoices summary: Bulk update invoices responses: '200': description: Updated /invoices/approve: post: tags: - Invoices summary: Bulk approve invoices responses: '200': description: Approved /invoice: post: tags: - Invoices summary: Create invoice responses: '201': description: Created /invoice/{invoiceId}: parameters: - $ref: '#/components/parameters/InvoiceId' get: tags: - Invoices summary: Get invoice responses: '200': description: Invoice post: tags: - Invoices summary: Update invoice responses: '200': description: Updated delete: tags: - Invoices summary: Delete invoice responses: '204': description: Deleted /invoice/{invoiceId}/events: parameters: - $ref: '#/components/parameters/InvoiceId' get: tags: - Invoices summary: List invoice events responses: '200': description: Events /invoice/{invoiceId}/add-approver: parameters: - $ref: '#/components/parameters/InvoiceId' post: tags: - Invoices summary: Add approver to invoice responses: '200': description: Added /invoice/{invoiceId}/approve: parameters: - $ref: '#/components/parameters/InvoiceId' post: tags: - Invoices summary: Approve invoice responses: '200': description: Approved /invoice/{invoiceId}/reject: parameters: - $ref: '#/components/parameters/InvoiceId' post: tags: - Invoices summary: Reject invoice responses: '200': description: Rejected components: parameters: InvoiceId: name: invoiceId in: path required: true schema: type: string securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: token description: 'Mercoa API key or JWT. Send as "Authorization: Bearer {token}". API keys are issued from the Mercoa Dashboard and are backend-only. JWTs scope access to an entity or entity group. '