Adyen · Arazzo Workflow

Adyen Checkout Payment and Cancel

Version 1.0.0

Authorise a card payment then cancel the authorisation.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub PaymentsFinancial-ServicesFintechArazzoWorkflows

Provider

adyen

Workflows

payment-and-cancel
Authorise a Checkout payment and cancel it by PSP reference.
Submits a payment and, once it is authorised, cancels the authorisation against the payment PSP reference before it is captured.
2 steps inputs: amount, cancelReference, merchantAccount, paymentMethod, reference, returnUrl outputs: cancelPspReference, paymentPspReference, status
1
makePayment
Submit the payment to obtain an authorisation and a payment PSP reference that can later be cancelled.
2
cancelPayment
Cancel the authorisation against the payment PSP reference, releasing the hold on the shopper's funds before capture.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Adyen Checkout Payment and Cancel
  summary: Authorise a card payment then cancel the authorisation.
  description: >-
    When an order can no longer be fulfilled before capture, the authorisation
    is cancelled to release the hold on the shopper's funds. This workflow makes
    a Checkout payment, confirms the authorisation, and cancels it against the
    returned PSP reference. Every step spells out its request inline so the flow
    can be read and executed without opening the underlying OpenAPI description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-1340.10
  - BC-1340.70
  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-1340.10
      capability_name: Payment Initiation Management
      spec: adyen-payments-api-openapi.yml
      confidence: 0.75
    - capability_id: BC-1340.70
      capability_name: Card Transaction Processing Management
      spec: adyen-cancels-api-openapi.yml
      confidence: 0.82
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: cancelsApi
  url: ../openapi/adyen-cancels-api-openapi.yml
  type: openapi
- name: paymentsApi
  url: ../openapi/adyen-payments-api-openapi.yml
  type: openapi
workflows:
- workflowId: payment-and-cancel
  summary: Authorise a Checkout payment and cancel it by PSP reference.
  description: >-
    Submits a payment and, once it is authorised, cancels the authorisation
    against the payment PSP reference before it is captured.
  inputs:
    type: object
    required:
    - merchantAccount
    - amount
    - reference
    - paymentMethod
    - returnUrl
    properties:
      merchantAccount:
        type: string
        description: The merchant account identifier that processes the payment.
      amount:
        type: object
        description: The payment amount object with currency and value.
      reference:
        type: string
        description: Your unique reference for the payment.
      paymentMethod:
        type: object
        description: The payment method details (e.g. type scheme with card data).
      returnUrl:
        type: string
        description: The URL the shopper is returned to after the payment.
      cancelReference:
        type: string
        description: Your unique reference for the cancellation request.
  steps:
  - stepId: makePayment
    description: >-
      Submit the payment to obtain an authorisation and a payment PSP reference
      that can later be cancelled.
    operationId: post-payments
    requestBody:
      contentType: application/json
      payload:
        merchantAccount: $inputs.merchantAccount
        amount: $inputs.amount
        reference: $inputs.reference
        paymentMethod: $inputs.paymentMethod
        returnUrl: $inputs.returnUrl
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      pspReference: $response.body#/pspReference
      resultCode: $response.body#/resultCode
    onSuccess:
    - name: authorised
      type: goto
      stepId: cancelPayment
      criteria:
      - context: $response.body
        condition: $.resultCode == "Authorised"
        type: jsonpath
  - stepId: cancelPayment
    description: >-
      Cancel the authorisation against the payment PSP reference, releasing the
      hold on the shopper's funds before capture.
    operationId: post-payments-paymentPspReference-cancels
    parameters:
    - name: paymentPspReference
      in: path
      value: $steps.makePayment.outputs.pspReference
    requestBody:
      contentType: application/json
      payload:
        merchantAccount: $inputs.merchantAccount
        reference: $inputs.cancelReference
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      cancelPspReference: $response.body#/pspReference
      status: $response.body#/status
  outputs:
    paymentPspReference: $steps.makePayment.outputs.pspReference
    cancelPspReference: $steps.cancelPayment.outputs.cancelPspReference
    status: $steps.cancelPayment.outputs.status

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/adyen-checkout-payment-and-cancel-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.