Oracle E-Business Suite · Arazzo Workflow

Oracle EBS AP Invoice Payment Reconciliation

Version 1.0.0

Read an AP invoice, then branch on whether a matching payment already exists.

1 workflow 1 source API 1 provider
View Spec View on GitHub Business ApplicationsE-Business SuiteEnterpriseERPOracleArazzoWorkflows

Provider

oracle-e-business-suite

Workflows

reconcile-ap-invoice-payment
Read an AP invoice and check whether its vendor has a recorded payment.
Fetches an AP invoice by identifier, lists payments for the same vendor, and branches on whether any payment record exists to mark the invoice reconciled or open.
4 steps inputs: invoiceId outputs: openApprovalStatus, paymentStatusFlag, vendorId
1
getInvoice
Read the AP invoice by identifier to capture its vendor and amount.
2
listPayments
List Accounts Payable payments for the invoice vendor, returning at most one, to determine whether the invoice has been paid.
3
markReconciled
Re-read the invoice to confirm its paid status now that a matching payment was found for the vendor.
4
markOpen
Re-read the invoice to surface its open balance when no matching payment was found for the vendor.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Oracle EBS AP Invoice Payment Reconciliation
  summary: Read an AP invoice, then branch on whether a matching payment already exists.
  description: >-
    A reconciliation flow for Oracle Accounts Payable. The workflow reads a
    specific AP invoice, lists payments for its vendor, and branches: when a
    payment exists it reports the invoice as reconciled, and when none is found
    it surfaces the still-open invoice for follow-up. Each step inlines its
    request so the reconciliation can be executed without opening the OpenAPI
    source.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-200.20
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-200.20
      capability_name: Accounts Payable Management
      spec: oracle-e-business-suite-accounts-payable-api-openapi.yml
      confidence: 0.95
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: accountsPayableApi
  url: ../openapi/oracle-e-business-suite-accounts-payable-api-openapi.yml
  type: openapi
workflows:
- workflowId: reconcile-ap-invoice-payment
  summary: Read an AP invoice and check whether its vendor has a recorded payment.
  description: >-
    Fetches an AP invoice by identifier, lists payments for the same vendor,
    and branches on whether any payment record exists to mark the invoice
    reconciled or open.
  inputs:
    type: object
    required:
    - invoiceId
    properties:
      invoiceId:
        type: integer
        description: AP invoice identifier to reconcile.
  steps:
  - stepId: getInvoice
    description: >-
      Read the AP invoice by identifier to capture its vendor and amount.
    operationId: getApInvoiceById
    parameters:
    - name: invoiceId
      in: path
      value: $inputs.invoiceId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      vendorId: $response.body#/vendorId
      invoiceAmount: $response.body#/invoiceAmount
      amountPaid: $response.body#/amountPaid
  - stepId: listPayments
    description: >-
      List Accounts Payable payments for the invoice vendor, returning at most
      one, to determine whether the invoice has been paid.
    operationId: getPayments
    parameters:
    - name: vendorId
      in: query
      value: $steps.getInvoice.outputs.vendorId
    - name: limit
      in: query
      value: 1
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      checkId: $response.body#/items/0/checkId
    onSuccess:
    - name: paymentFound
      type: goto
      stepId: markReconciled
      criteria:
      - context: $response.body
        condition: $.items.length > 0
        type: jsonpath
    - name: paymentMissing
      type: goto
      stepId: markOpen
      criteria:
      - context: $response.body
        condition: $.items.length == 0
        type: jsonpath
  - stepId: markReconciled
    description: >-
      Re-read the invoice to confirm its paid status now that a matching
      payment was found for the vendor.
    operationId: getApInvoiceById
    parameters:
    - name: invoiceId
      in: path
      value: $inputs.invoiceId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      paymentStatusFlag: $response.body#/paymentStatusFlag
    onSuccess:
    - name: done
      type: end
  - stepId: markOpen
    description: >-
      Re-read the invoice to surface its open balance when no matching payment
      was found for the vendor.
    operationId: getApInvoiceById
    parameters:
    - name: invoiceId
      in: path
      value: $inputs.invoiceId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      approvalStatus: $response.body#/approvalStatus
  outputs:
    vendorId: $steps.getInvoice.outputs.vendorId
    paymentStatusFlag: $steps.markReconciled.outputs.paymentStatusFlag
    openApprovalStatus: $steps.markOpen.outputs.approvalStatus

Work with this as data

Every workflow 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 arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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 workflow
curl "https://apis.io/api/v1/arazzo/oracle-e-business-suite-ap-invoice-payment-reconciliation-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?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.