Pliant Receipt Automatching API

This tag is for operations related to receipt automatching

Operations 5

POST /receipts/automatching Automatch and Attach File to Transaction #
POST /receipts/automatching/metadata Automatch Metadata to Transaction #
POST /receipts/automatching/subscription Callback: Add/Update #
DELETE /receipts/automatching/subscription Callback: Remove #
GET /receipts/automatching/{automatchingTaskId} Get Status of Automatching Task #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/pliant:pliant-receipt-automatching-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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 Specification

pliant-receipt-automatching-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    name: API Support
    email: support@getpliant.com
    url: https://www.getpliant.com
  title: Pliant Customer Receipt Automatching API
  description: Pliant Customer API
  version: 2.1.0
  license:
    name: MIT
    url: https://opensource.org/license/MIT
servers:
- url: https://partner-api.getpliant.com/api
  description: Pliant Production Server
- url: https://sandbox.partner-api.getpliant.com/api
  description: Pliant Sandbox Server
- url: https://pci-api.getpliant.com
  description: PCI Vault Production Server
- url: https://pci-sandbox.partner-api.getpliant.com
  description: PCI Vault Sandbox Server
security:
- bearerAuth: []
tags:
- name: Receipt Automatching
  description: This tag is for operations related to receipt automatching
paths:
  /receipts/automatching:
    post:
      summary: Automatch and Attach File to Transaction
      description: Send us a receipt (PDF, PNG, JPEG) and we try to find the corresponding transaction for this receipt and attach it to the matching transaction. This endpoint works **asynchronously** and only starts the automatching process. You will get a callback with the result once it is finished. Or you can query the status yourself.
      tags:
      - Receipt Automatching
      operationId: upload-receipt-to-automatcher
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - file
              - organizationId
              properties:
                file:
                  description: The receipt which should be matched to an existing transaction.
                  type: string
                  format: binary
                organizationId:
                  description: The organization this receipt belongs to. This is the minimum required data we need to automatch a receipt.
                  type: string
                  format: uuid
                metadata:
                  type: object
                  format: json
                  description: Additional metadata about the receipt. This is optional. If provided, it can enhance the matching process. It not provided, we will use OCR data to match the receipt. **This needs to be provided as a JSON string.**
                  properties:
                    amountInMinorUnit:
                      description: The amount stated on the receipt, in the minor value of the currency. E.g. `1000` for 10.00, or `13579` for 135.79 or `5` for 0.05. The currency itself it not necessary for automatching.
                      type: integer
                    merchantName:
                      description: The name of the merchant on the receipt.
                      type: string
                    referenceNumber:
                      description: The number which distinguishes this specific receipt or invoice.
                      type: string
                    transactionReference:
                      description: The number which references the credit card transaction, if provided with the receipt.
                      type: string
                    purchaseDate:
                      description: The date of the purchase etc. in format `yyyy-MM-dd`. Can also be the date of the invoice or receipt itself.
                      type: string
                      format: date
                    cardId:
                      description: The card the transaction was made with.
                      type: string
                      format: uuid
                    cardholderId:
                      description: The [cardholder](/docs/cardholder-entity) that made the transaction.
                      type: string
                      format: uuid
            encoding:
              file:
                contentType: image/png, image/jpeg, application/pdf
              metadata:
                contentType: application/json
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: object
                required:
                - automatchingTaskId
                properties:
                  automatchingTaskId:
                    type: string
                    format: uuid
                    description: The id of the automatching task for later fetching the status of this task. You will also get a callback if subscribed.
        '400':
          $ref: '#/paths/~1cards/get/responses/400'
        '401':
          $ref: '#/paths/~1cards/get/responses/401'
        '403':
          $ref: '#/paths/~1cards/get/responses/403'
        '404':
          $ref: '#/paths/~1cards/post/responses/404'
        '500':
          $ref: '#/paths/~1cards/get/responses/500'
  /receipts/automatching/metadata:
    post:
      summary: Automatch Metadata to Transaction
      description: Provide us with metadata about a receipt and we try to find the corresponding transaction for this metadata. Nothing is attached to the transaction, we just provide a matching `transactionId` if found. The more data provided, the better the matching result. This endpoint works **asynchronously** and only starts the automatching process. You will get a callback with the result once it is finished. Or you can query the status yourself.
      tags:
      - Receipt Automatching
      operationId: metadata-receipt-to-automatcher
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - organizationId
              - metadata
              properties:
                organizationId:
                  description: The organization this receipt metadata belongs to.
                  type: string
                  format: uuid
                metadata:
                  type: object
                  description: Metadata to find a matching transaction. The more data provided, the better the matching result.
                  required:
                  - amountInMinorUnit
                  properties:
                    amountInMinorUnit:
                      description: The amount stated on the receipt, in the minor value of the currency. E.g. `1000` for 10.00, or `13579` for 135.79 or `5` for 0.05. The currency itself it not necessary for automatching.
                      type: integer
                    merchantName:
                      description: The name of the merchant on the receipt.
                      type: string
                    referenceNumber:
                      description: The number which distinguishes this specific receipt or invoice.
                      type: string
                    transactionReference:
                      description: The number which references the credit card transaction, if provided with the receipt.
                      type: string
                    purchaseDate:
                      description: The date of the purchase etc. in format ´yyyy-MM-dd´. Can also be the date of the invoice or receipt itself.
                      type: string
                      format: date
                    cardId:
                      description: The card the transaction was made with.
                      type: string
                      format: uuid
                    cardholderId:
                      description: The [cardholder](/docs/cardholder-entity) that made the transaction.
                      type: string
                      format: uuid
                    cardAccountId:
                      description: The ID of the [card account](/docs/card-account) this transaction belongs to.
                      type: string
                      format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: object
                required:
                - automatchingTaskId
                properties:
                  automatchingTaskId:
                    type: string
                    format: uuid
                    description: The id of the automatching task for later fetching the status of this task. You will also get a callback if subscribed.
        '400':
          $ref: '#/paths/~1cards/get/responses/400'
        '401':
          $ref: '#/paths/~1cards/get/responses/401'
        '403':
          $ref: '#/paths/~1cards/get/responses/403'
        '404':
          $ref: '#/paths/~1cards/post/responses/404'
        '500':
          $ref: '#/paths/~1cards/get/responses/500'
  /receipts/automatching/subscription:
    post:
      summary: 'Callback: Add/Update'
      description: Subscribe to callbacks for this entity or change an existing callback.
      tags:
      - Receipt Automatching
      operationId: create-receipt-automatching-subscription
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                callbackUrl:
                  type: string
                  format: uri
                  example: https://myserver.com/send/callback/here
                  description: The URL to send the callback to. Must be a valid and reachable URL. We do some basic validation to ensure the URL is syntactically correct and reachable for Pliant. Only HTTPS URLs are supported.
                eventTypes:
                  type: array
                  description: The event types to subscribe to.
                  items:
                    type: string
                    enum:
                    - RECEIPT_AUTOMATCHING_FINISHED
              required:
              - callbackUrl
              - eventTypes
      responses:
        '201':
          description: Created
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '500':
          description: Internal Server Error
      callbacks:
        receiptUpdated:
          '{$request.body#/callbackUrl}':
            post:
              parameters:
              - in: header
                name: X-Organization-Id
                schema:
                  type: string
                  format: uuid
                  description: 'Referencing the organization this callback was sent for. See [guides](/docs/callbacks) for more details. Example value: `54e6e7e7-0c23-4a54-bccb-2d3ff2fd02df`.'
              - in: header
                name: X-Partner-Organization-Id
                schema:
                  type: string
                  description: 'Filled, if the value `partnerOrganizationId` is [set](/reference/update-organization) by the partner on the organization itself. Referencing the organization identifier of the partner. Example value: `abc123`.'
              - in: header
                name: X-Payment-Program-Id
                schema:
                  type: string
                  format: uuid
                  description: 'Referencing the payment program this callback was sent for. See [guides](/docs/callbacks) for more details. Example value: `54e6e7e7-0c23-4a54-bccb-2d3ff2fd02df`.'
              - in: header
                name: X-Callback-Id
                schema:
                  type: string
                  format: uuid
                  description: 'A unique identifier for this callback. Can be used to deduplicate callbacks to achieve idempotent behavior. See [guides](/docs/callbacks) for more details. Example value: `12a03093-eaad-4ae5-9d8d-42e7f6f8b7c6`.'
              - in: header
                name: X-Callback-Created-At
                schema:
                  type: string
                  format: date-time
                  description: 'The date and time when the callback was created. Can be used to reorder callbacks. See [guides](/docs/callbacks) for more details. Example value: `2024-03-15T15:55:58.623375258Z`.'
              requestBody:
                content:
                  application/json:
                    schema:
                      type: object
                      required:
                      - automatchingTaskId
                      - organizationId
                      - status
                      - transactionIds
                      properties:
                        automatchingTaskId:
                          type: string
                          format: uuid
                          description: The id of the automatching task.
                        organizationId:
                          type: string
                          format: uuid
                          description: The id of the organization this task belongs to.
                        matchedTransactions:
                          type: array
                          description: The transactions that were matched to the provided data. Can also be empty, if no match was found. In most cases this contains 0..1 matches, but some receipts or invoices refer to more than one transaction. This is then reflected here.
                          items:
                            type: object
                            properties:
                              transactionId:
                                type: string
                                format: uuid
                                description: The id of the transaction that is a possible match to the provided data.
                              score:
                                type: number
                                format: float
                                description: The score (from 0..1) of this match. The higher the score, the more likely the match is correct.
                        status:
                          type: string
                          enum:
                          - IN_PROGRESS
                          - ERROR_DURING_PROCESSING
                          - MATCHING_TRANSACTION_FOUND
                          - MATCHING_TRANSACTION_NOT_FOUND
                          description: The status of the automatching task.
                        additionalInformation:
                          type: string
                          description: Additional information about the status. E.g. an error message or a reason why no match was found.
              responses:
                '200':
                  description: Ok
    delete:
      summary: 'Callback: Remove'
      description: Remove a callback subscription for this entity.
      tags:
      - Receipt Automatching
      operationId: remove-receipt-automatching-subscription
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                eventTypes:
                  type: array
                  description: The event types to unsubscribe from.
                  items:
                    type: string
                    enum:
                    - RECEIPT_AUTOMATCHING_FINISHED
              required:
              - eventTypes
      responses:
        '200':
          description: Ok
  /receipts/automatching/{automatchingTaskId}:
    get:
      summary: Get Status of Automatching Task
      description: Query the status of the automatching task specified by path parameter `automatchingTaskId`.
      tags:
      - Receipt Automatching
      operationId: get-receipt-automatcher-status
      parameters:
      - name: automatchingTaskId
        in: path
        required: true
        description: The id of the automatching task.
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                type: object
                required:
                - automatchingTaskId
                - organizationId
                - status
                properties:
                  automatchingTaskId:
                    type: string
                    format: uuid
                    description: The id of the automatching task.
                  organizationId:
                    type: string
                    format: uuid
                    description: The id of the organization this task belongs to.
                  matchedTransactions:
                    type: array
                    description: The transactions that were matched to the provided data. Can also be empty, if no match was found. In most cases this contains 0..1 matches, but some receipts or invoices refer to more than one transaction. This is then reflected here.
                    items:
                      type: object
                      required:
                      - transactionId
                      - score
                      properties:
                        transactionId:
                          type: string
                          format: uuid
                          description: The id of the transaction that is a possible match to the provided data.
                        score:
                          type: number
                          format: float
                          description: The score (from 0..1) of this match. The higher the score, the more likely the match is correct.
                  status:
                    type: string
                    enum:
                    - IN_PROGRESS
                    - ERROR_DURING_PROCESSING
                    - ERROR_FEATURE_NOT_ACTIVE
                    - MATCHING_TRANSACTION_FOUND
                    - MATCHING_TRANSACTION_NOT_FOUND
                    description: The status of the automatching task.
                  additionalInformation:
                    type: string
                    description: Additional information about the status. E.g. a more detailed error message or a reason why no match was found.
        '400':
          $ref: '#/paths/~1cards/get/responses/400'
        '401':
          $ref: '#/paths/~1cards/get/responses/401'
        '403':
          $ref: '#/paths/~1cards/get/responses/403'
        '404':
          $ref: '#/paths/~1cards/post/responses/404'
        '500':
          $ref: '#/paths/~1cards/get/responses/500'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: This API uses oAuth2 with client credentials flow to [obtain the Bearer Token](/docs/authenticated-api-usage).
      bearerFormat: JWT
x-provenance:
  method: searched
  source: https://customer-api.getpliant.com/reference
  harvested: '2026-10-14'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://customer-api.getpliant.com/reference/activate-physical-card.md
  - https://customer-api.getpliant.com/reference/assign-project-team.md
  - https://customer-api.getpliant.com/reference/assign-to-team.md
  - https://customer-api.getpliant.com/reference/bulk-upsert-subscriptions.md
  - https://customer-api.getpliant.com/reference/card-pan-and-cvv-pci-vault.md
  - https://customer-api.getpliant.com/reference/card-pan-tokenized-from-pci-proxy.md
  - https://customer-api.getpliant.com/reference/claim-card-as-copilot.md
  - https://customer-api.getpliant.com/reference/create-account-entry-subscription.md
  - https://customer-api.getpliant.com/reference/create-accounting-project-subscription.md
  - https://customer-api.getpliant.com/reference/create-accounting-team-subscription.md
  - https://customer-api.getpliant.com/reference/create-accounting-transaction-subscription.md
  - https://customer-api.getpliant.com/reference/create-card-account-subscription.md
  - https://customer-api.getpliant.com/reference/create-card-account-transfer.md
  - https://customer-api.getpliant.com/reference/create-card-account.md
  - https://customer-api.getpliant.com/reference/create-card-copilot-subscription.md
  - https://customer-api.getpliant.com/reference/create-card-subscription.md
  - https://customer-api.getpliant.com/reference/create-cardholder-subscription.md
  - https://customer-api.getpliant.com/reference/create-custom-field-option.md
  - https://customer-api.getpliant.com/reference/create-custom-field.md
  - https://customer-api.getpliant.com/reference/create-payment-subscription.md
  - https://customer-api.getpliant.com/reference/create-project.md
  - https://customer-api.getpliant.com/reference/create-receipt-automatching-subscription.md
  - https://customer-api.getpliant.com/reference/create-receipt-subscription.md
  - https://customer-api.getpliant.com/reference/create-statement-subscription.md
  - https://customer-api.getpliant.com/reference/create-team.md
  - https://customer-api.getpliant.com/reference/create-transaction-subscription.md
  - https://customer-api.getpliant.com/reference/deactivate-card-account.md
  - https://customer-api.getpliant.com/reference/deactivate-cardholder.md
  - https://customer-api.getpliant.com/reference/deactivate-team.md
  - https://customer-api.getpliant.com/reference/delete-custom-field-option.md
  - https://customer-api.getpliant.com/reference/delete-custom-field.md
  - https://customer-api.getpliant.com/reference/delete-project.md
  - https://customer-api.getpliant.com/reference/delete-receipt.md
  - https://customer-api.getpliant.com/reference/delete-subscription.md
  - https://customer-api.getpliant.com/reference/delete-team.md
  - https://customer-api.getpliant.com/reference/delete-transaction-comment.md
  - https://customer-api.getpliant.com/reference/generate-test-transactions-in-sandbox.md
  - https://customer-api.getpliant.com/reference/get-account-entries.md
  - https://customer-api.getpliant.com/reference/get-accounting-transactions-batch.md
  - https://customer-api.getpliant.com/reference/get-available-cards.md
  - https://customer-api.getpliant.com/reference/get-callback-details.md
  - https://customer-api.getpliant.com/reference/get-callback-log.md
  - https://customer-api.getpliant.com/reference/get-callback-subscriptions.md
  - https://customer-api.getpliant.com/reference/get-callback.md
  - https://customer-api.getpliant.com/reference/get-card-account-details.md
  - https://customer-api.getpliant.com/reference/get-card-accounts-available-currencies.md
  - https://customer-api.getpliant.com/reference/get-card-accounts.md
  - https://customer-api.getpliant.com/reference/get-card-controls-by-card.md
  - https://customer-api.getpliant.com/reference/get-card-pin.md
  - https://customer-api.getpliant.com/reference/get-cardholder-details.md
  - https://customer-api.getpliant.com/reference/get-cards.md
  - https://customer-api.getpliant.com/reference/get-custom-field-options.md
  - https://customer-api.getpliant.com/reference/get-custom-fields.md
  - https://customer-api.getpliant.com/reference/get-multiple-card-details.md
  - https://customer-api.getpliant.com/reference/get-organization-details.md
  - https://customer-api.getpliant.com/reference/get-otp-for-pci-widget.md
  - https://customer-api.getpliant.com/reference/get-payments-detail.md
  - https://customer-api.getpliant.com/reference/get-payments.md
  - https://customer-api.getpliant.com/reference/get-projects.md
  - https://customer-api.getpliant.com/reference/get-receipt-automatcher-status.md
  - https://customer-api.getpliant.com/reference/get-receipt-detail.md
  - https://customer-api.getpliant.com/reference/get-receipts.md
  - https://customer-api.getpliant.com/reference/get-single-card-details.md
  - https://customer-api.getpliant.com/reference/get-statement-csv.md
  - https://customer-api.getpliant.com/reference/get-statement-detail.md
  - https://customer-api.getpliant.com/reference/get-statementpdf.md
  - https://customer-api.getpliant.com/reference/get-statements.md
  - https://customer-api.getpliant.com/reference/get-teams.md
  - https://customer-api.getpliant.com/reference/get-transactions-detail-batch.md
  - https://customer-api.getpliant.com/reference/get-transactions-detail.md
  - https://customer-api.getpliant.com/reference/get-transactions.md
  - https://customer-api.getpliant.com/reference/invite-cardholders.md
  - https://customer-api.getpliant.com/reference/issue-card-instant-with-pci.md
  - https://customer-api.getpliant.com/reference/issue-card-instant.md
  - https://customer-api.getpliant.com/reference/issue-card.md
  - https://customer-api.getpliant.com/reference/list-cardholders.md
  - https://customer-api.getpliant.com/reference/list-organizations.md
  - https://customer-api.getpliant.com/reference/load-cards-batch.md
  - https://customer-api.getpliant.com/reference/lock-card.md
  - https://customer-api.getpliant.com/reference/metadata-receipt-to-automatcher.md
  - https://customer-api.getpliant.com/reference/receipt-as-merged-pdf.md
  - https://customer-api.getpliant.com/reference/receipt-as-pdf.md
  - https://customer-api.getpliant.com/reference/receipt-original.md
  - https://customer-api.getpliant.com/reference/receipt-thumbnail.md
  - https://customer-api.getpliant.com/reference/register-cardholders.md
  - https://customer-api.getpliant.com/reference/remove-account-entry-subscription.md
  - https://customer-api.getpliant.com/reference/remove-accounting-project-subscription.md
  - https://customer-api.getpliant.com/reference/remove-accounting-team-subscription.md
  - https://customer-api.getpliant.com/reference/remove-accounting-transaction-subscription.md
  - https://customer-api.getpliant.com/reference/remove-card-account-subscription.md
  - https://customer-api.getpliant.com/reference/remove-card-copilot-subscription.md
  - https://customer-api.getpliant.com/reference/remove-cardholder-subscription.md
  - https://customer-api.getpliant.com/reference/remove-cards-subscription.md
  - https://customer-api.getpliant.com/reference/remove-payment-subscription.md
  - https://customer-api.getpliant.com/reference/remove-receipt-automatching-subscription.md
  - https://customer-api.getpliant.com/reference/remove-receipt-subscription.md
  - https://customer-api.getpliant.com/reference/remove-statement-subscription.md
  - https://customer-api.getpliant.com/reference/remove-transaction-subscription.md
  - https://customer-api.getpliant.com/reference/replace-card.md
  - https://customer-api.getpliant.com/reference/resend-callbacks.md
  - https://customer-api.getpliant.com/reference/search-callbacks.md
  - https://customer-api.getpliant.com/reference/simulate-prefund-payment.md
  - https://customer-api.getpliant.com/reference/simulate-transaction-status-transition.md
  - https://customer-api.getpliant.com/reference/terminate-card.md
  - https://customer-api.getpliant.com/reference/unassign-from-team.md
  - https://customer-api.getpliant.com/reference/unassign-project-team.md
  - https://customer-api.getpliant.com/reference/unlock-card.md
  - https://customer-api.getpliant.com/reference/update-card-account.md
  - https://customer-api.getpliant.com/reference/update-card-controls-by-card.md
  - https://customer-api.getpliant.com/reference/update-card-copilots.md
  - https://customer-api.getpliant.com/reference/update-card-label.md
  - https://customer-api.getpliant.com/reference/update-card-limit.md
  - https://customer-api.getpliant.com/reference/update-card-validity-period.md
  - https://customer-api.getpliant.com/reference/update-card.md
  - https://customer-api.getpliant.com/reference/update-cardholders.md
  - https://customer-api.getpliant.com/reference/update-custom-field-option.md
  - https://customer-api.getpliant.com/reference/update-custom-field.md
  - https://customer-api.getpliant.com/reference/update-custom-fields-on-accounting-transaction.md
  - https://customer-api.getpliant.com/reference/update-custom-fields-on-card.md
  - https://customer-api.getpliant.com/reference/update-project.md
  - https://customer-api.getpliant.com/reference/update-team.md
  - https://customer-api.getpliant.com/reference/update-transaction-category.md
  - https://customer-api.getpliant.com/reference/update-transaction-comment.md
  - https://customer-api.getpliant.com/reference/update-transaction-partner-submission-status-batch.md
  - https://customer-api.getpliant.com/reference/update-transaction-partner-submission-status.md
  - https://customer-api.getpliant.com/reference/update-transaction-receipt-upload.md
  - https://customer-api.getpliant.com/reference/upload-receipt-to-automatcher.md
  - https://customer-api.getpliant.com/reference/upload-receipt.md
  merge:
    pages: 128
    deduped: 452
    conflicts_kept_first: 0