Mercoa invoice > bulk API
The invoice > bulk API from Mercoa — 1 operation(s) for invoice > bulk.
The invoice > bulk API from Mercoa — 1 operation(s) for invoice > bulk.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/mercoa:mercoa-invoice-bulk-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Reference invoice > bulk API
version: 1.0.0
servers:
- url: https://api.mercoa.com
description: Production
tags:
- name: invoice > bulk
paths:
/invoices/download:
get:
operationId: invoice_bulk_download
summary: Download Bulk Invoices (Sync)
description: Get a URL to download a bulk invoice as a CSV/JSON file.
tags:
- invoice > bulk
parameters:
- name: format
in: query
description: Format of the file to download. Defaults to CSV.
required: false
schema:
$ref: '#/components/schemas/commons_BulkDownloadFormat'
- name: entityId
in: query
description: Filter invoices by the ID or foreign ID of the entity that is the payer or the vendor of the invoice.
required: false
schema:
$ref: '#/components/schemas/entityTypes_EntityId'
- name: entityGroupId
in: query
description: Filter invoices by the ID or foreign ID of the entity group that the entity belongs to.
required: false
schema:
$ref: '#/components/schemas/entityGroupTypes_EntityGroupId'
- name: startDate
in: query
description: Start date filter. Defaults to CREATED_AT unless specified the dateType is specified
required: false
schema:
type: string
format: date-time
- name: endDate
in: query
description: End date filter. Defaults to CREATED_AT unless specified the dateType is specified
required: false
schema:
type: string
format: date-time
- name: dateType
in: query
description: Type of date to filter by if startDate and endDate filters are provided. Defaults to CREATED_AT.
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_InvoiceDateFilter'
- name: orderBy
in: query
description: Field to order invoices by. Defaults to CREATED_AT.
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_InvoiceOrderByField'
- name: orderDirection
in: query
description: Direction to order invoices by. Defaults to asc.
required: false
schema:
$ref: '#/components/schemas/commons_OrderDirection'
- name: startingAfter
in: query
description: The ID of the invoice to start after. If not provided, the first page of invoices will be returned.
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_InvoiceId'
- name: search
in: query
description: Find invoices by vendor name, invoice number, check number, or amount. Partial matches are supported.
required: false
schema:
type: string
- name: metadata
in: query
description: Filter invoices by metadata. Each filter will be applied as an AND condition. Duplicate keys will be ignored.
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_MetadataFilter'
- name: lineItemMetadata
in: query
description: Filter invoices by line item metadata. Each filter will be applied as an AND condition. Duplicate keys will be ignored.
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_MetadataFilter'
- name: lineItemGlAccountId
in: query
description: Filter invoices by line item GL account ID. Each filter will be applied as an OR condition. Duplicate keys will be ignored.
required: false
schema:
type: string
- name: payerId
in: query
description: Filter invoices by payer ID or payer foreign ID.
required: false
schema:
$ref: '#/components/schemas/entityTypes_EntityId'
- name: vendorId
in: query
description: Filter invoices by vendor ID or vendor foreign ID.
required: false
schema:
$ref: '#/components/schemas/entityTypes_EntityId'
- name: creatorUserId
in: query
description: Filter invoices by the ID or foreign ID of the user that created the invoice.
required: false
schema:
$ref: '#/components/schemas/entityTypes_EntityUserId'
- name: approverId
in: query
description: Filter invoices by assigned approver user ID. Only invoices with all upstream policies approved will be returned.
required: false
schema:
$ref: '#/components/schemas/entityTypes_EntityUserId'
- name: approverAction
in: query
description: Filter invoices by approver action. Needs to be used with approverId. For example, if you want to find all invoices that have been approved by a specific user, you would use approverId and approverAction=APPROVE.
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_ApproverAction'
- name: invoiceId
in: query
description: Filter invoices by invoice ID or invoice foreign ID.
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_InvoiceId'
- name: status
in: query
description: Invoice status to filter on
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_InvoiceStatus'
- name: paymentType
in: query
description: Filter invoices by recurring status
required: false
schema:
type: array
items:
$ref: '#/components/schemas/invoiceTypes_PaymentType'
- name: invoiceTemplateId
in: query
description: Filter invoice by invoice template ID
required: false
schema:
$ref: '#/components/schemas/invoiceTypes_InvoiceTemplateId'
- name: returnPayerMetadata
in: query
description: Whether to return payer metadata in the response
required: false
schema:
type: boolean
- name: returnVendorMetadata
in: query
description: Whether to return vendor metadata in the response
required: false
schema:
type: boolean
responses:
'200':
description: Response with status 200
content:
application/json:
schema:
$ref: '#/components/schemas/commons_BulkDownloadResponse'
'400':
description: Error response with status 400
content:
application/json:
schema:
type: object
properties:
errorName:
type: string
enum:
- BadRequest
content:
type: string
required:
- errorName
- content
'401':
description: Error response with status 401
content:
application/json:
schema:
type: object
properties:
errorName:
type: string
enum:
- Unauthorized
content:
type: string
required:
- errorName
- content
'403':
description: Error response with status 403
content:
application/json:
schema:
type: object
properties:
errorName:
type: string
enum:
- Forbidden
content:
type: string
required:
- errorName
- content
'404':
description: Error response with status 404
content:
application/json:
schema:
type: object
properties:
errorName:
type: string
enum:
- NotFound
content:
type: string
required:
- errorName
- content
'409':
description: Error response with status 409
content:
application/json:
schema:
type: object
properties:
errorName:
type: string
enum:
- Conflict
content:
type: string
required:
- errorName
- content
'500':
description: Error response with status 500
content:
application/json:
schema:
type: object
properties:
errorName:
type: string
enum:
- InternalServerError
content:
type: string
required:
- errorName
- content
'501':
description: Error response with status 501
content:
application/json:
schema:
type: object
properties:
errorName:
type: string
enum:
- Unimplemented
content:
type: string
required:
- errorName
- content
security:
- default: []
components:
schemas:
invoiceTypes_InvoiceOrderByField:
type: string
enum:
- AMOUNT
- DUE_DATE
- CREATED_AT
- UPDATED_AT
- DEDUCTION_DATE
- INVOICE_DATE
- SETTLEMENT_DATE
- INVOICE_NUMBER
- VENDOR_NAME
- PAYER_NAME
title: InvoiceOrderByField
commons_BulkDownloadResponse:
type: object
properties:
url:
type: string
mimeType:
type: string
required:
- url
- mimeType
title: BulkDownloadResponse
commons_OrderDirection:
type: string
enum:
- ASC
- DESC
title: OrderDirection
invoiceTypes_PaymentType:
type: string
enum:
- oneTime
- recurring
title: PaymentType
entityGroupTypes_EntityGroupId:
type: string
title: EntityGroupId
invoiceTypes_InvoiceDateFilter:
type: string
enum:
- INVOICE_DATE
- DEDUCTION_DATE
- DUE_DATE
- SETTLEMENT_DATE
- CREATED_AT
- UPDATED_AT
title: InvoiceDateFilter
commons_BulkDownloadFormat:
type: string
enum:
- CSV
- JSON
title: BulkDownloadFormat
invoiceTypes_MetadataFilter:
type: object
properties:
key:
type: string
value:
$ref: '#/components/schemas/commons_StringOrStringArray'
description: If multiple values are provided, the filter will match if any of the values match (OR filter). To filter for the absence of a key, use the value 'NULL'. To filter for the presence of a key, use the value 'NOT NULL'.
required:
- key
- value
title: MetadataFilter
invoiceTypes_InvoiceId:
type: string
title: InvoiceId
entityTypes_EntityId:
type: string
title: EntityId
invoiceTypes_InvoiceStatus:
type: string
enum:
- UNASSIGNED
- DRAFT
- NEW
- APPROVED
- SCHEDULED
- PENDING
- PAID
- ARCHIVED
- REFUSED
- CANCELED
- FAILED
title: InvoiceStatus
invoiceTypes_ApproverAction:
type: string
enum:
- NONE
- APPROVE
- REJECT
title: ApproverAction
entityTypes_EntityUserId:
type: string
title: EntityUserId
commons_StringOrStringArray:
oneOf:
- type: string
- type: array
items:
type: string
title: StringOrStringArray
invoiceTypes_InvoiceTemplateId:
type: string
title: InvoiceTemplateId
securitySchemes:
default:
type: http
scheme: bearer