Worldpay Query a payment API

The Query a payment API from Worldpay — 2 operation(s) for query a payment.

Operations 2

GET /payments/events/{linkData} Query payment status #
GET /payments/events Query payment status recovery #

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/worldpay-query-a-payment-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

worldpay-query-a-payment-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Card Payments Query a payment API
  description: Take online payments with our Card Payments API.
  version: '7'
  x-metadata:
    category:
    - Card Payments
    - Wallets
    business:
    - Enterprise
    - Marketplaces
    catalog-list: true
    generated: false
servers:
- url: https://try.access.worldpay.com
  description: Test (Try)
- url: https://access.worldpay.com
  description: Live
security:
- BasicAuth: []
tags:
- name: Query a payment
paths:
  /payments/events/{linkData}:
    get:
      tags:
      - Query a payment
      summary: Query payment status
      description: 'Send a request to find out the current status of your payment after it has been authorized using the events action link.


        **Note:** It can take up to 15 minutes for a payment event to update.'
      operationId: eventQuery
      parameters:
      - name: linkData
        in: path
        description: Action link that's received in your request.
        required: true
        schema:
          type: string
      - in: header
        name: Content-Type
        required: true
        schema:
          type: string
          example: application/vnd.worldpay.payments-v7+json
      - in: header
        name: Accept
        required: true
        schema:
          type: string
          example: application/vnd.worldpay.payments-v7+json
      responses:
        '200':
          description: Retrieve the last event of a payment
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/payments_events_200_response'
              examples:
                Querying a payment event with a transaction reference:
                  description: Querying a payment event with a transaction reference
                  value:
                    lastEvent: Authorized
                    _links:
                      cardPayments:cancel: /payments/authorizations/cancellations/:linkData
                      cardPayments:settle: /payments/settlements/full/:linkData
                      cardPayments:partialSettle: /payments/settlements/partials/:linkData
                      curies:
                      - name: payments
                        href: /rels/payments/{rel}
                        templated: true
        '400':
          description: Bad request
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ValidationErrorResponse'
              examples:
                Bad request:
                  description: Bad request
                  value:
                    errorName: bodyDoesNotMatchSchema
                    message: The json body provided does not match the expected schema
                    validationErrors:
                    - errorName: fieldMustBeString
                      message: Element at path must be a string
                      jsonPath: $.value.currency
        '401':
          description: Unauthorized
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  description: Unauthorized
                  value:
                    errorName: accessDenied
                    message: Access to the requested resource has been denied
        '404':
          description: Not found
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                notFound:
                  description: Not found
                  value:
                    errorName: endpointNotFound
                    message: Requested endpoint was not found.
        '415':
          description: Unsupported media type
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unsupported:
                  description: Unsupported media type
                  value:
                    errorName: headerHasInvalidValue
                    message: Bad content type
        '500':
          description: Internal server error
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /payments/events:
    get:
      tags:
      - Query a payment
      summary: Query payment status recovery
      description: 'Send a request to find out the current status of your payment after it has been authorized using the events action link.


        **Important:**


        Only use this for recovery purposes, for example when your authorization request has timed out or you are unable to locate a payment through our Payments Queries API. If the query returns results, you can manage the payment using the next action links returned in the response of your GET request.'
      operationId: eventRecovery
      parameters:
      - in: header
        name: Content-Type
        required: true
        schema:
          type: string
          example: application/vnd.worldpay.payments-v7+json
      - in: header
        name: Accept
        required: true
        schema:
          type: string
          example: application/vnd.worldpay.payments-v7+json
      responses:
        '200':
          description: Retrieve the last event of a payment
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/payments_events_recovery_200_response'
              examples:
                Querying a payment event with a transaction reference:
                  description: Querying a payment event with a transaction reference
                  value:
                    lastEvent: Authorized
                    _links:
                      cardPayments:cancel: /payments/authorizations/cancellations/:linkData
                      cardPayments:settle: /payments/settlements/full/:linkData
                      cardPayments:partialSettle: /payments/settlements/partials/:linkData
                      curies:
                      - name: payments
                        href: /rels/payments/{rel}
                        templated: true
        '400':
          description: Bad request
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ValidationErrorResponse'
              examples:
                Bad request:
                  description: Bad request
                  value:
                    errorName: bodyDoesNotMatchSchema
                    message: The json body provided does not match the expected schema
                    validationErrors:
                    - errorName: fieldMustBeString
                      message: Element at path must be a string
                      jsonPath: $.value.currency
        '401':
          description: Unauthorized
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unauthorized:
                  description: Unauthorized
                  value:
                    errorName: accessDenied
                    message: Access to the requested resource has been denied
        '404':
          description: Not found
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                notFound:
                  description: Not found
                  value:
                    errorName: endpointNotFound
                    message: Requested endpoint was not found.
        '415':
          description: Unsupported media type
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                unsupported:
                  description: Unsupported media type
                  value:
                    errorName: headerHasInvalidValue
                    message: Bad content type
        '500':
          description: Internal server error
          content:
            application/vnd.worldpay.payments-v7+json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ValidationErrorResponse:
      type: object
      properties:
        errorName:
          type: string
        message:
          type: string
        validationErrors:
          type: array
          description: Further error details
          items:
            type: object
            properties:
              errorName:
                type: string
              message:
                type: string
              jsonPath:
                type: string
    ErrorResponse:
      type: object
      properties:
        errorName:
          type: string
        message:
          type: string
    payments_events_200_response:
      required:
      - lastEvent
      type: object
      properties:
        lastEvent:
          type: string
          enum:
          - Authorized
          - Refused
          - Sent for Settlement
          - Sent for Refund
          - Sent for Cancellation
          - Refund failed
          - Settlement failed
          - Settled
          - Refunded
          - Error
          - Expired
          x-enumDescriptions:
            Authorized: The payment has been approved and the funds have been reserved in your customer's account.
            Refused: Your payment request has been declined.
            Sent for Settlement: A request has been made to move the reserved funds in your customer's account and transfer them to your Worldpay account.
            Sent for Refund: A request has been made to send funds back to your customer's account.
            Sent for Cancellation: A request has been made to cancel the payment without sending it for settlement.
            Refund failed: A refund request couldn't be processed and the funds were returned to your account.
            Settlement failed: A settlement request couldn't be processed. Funds have not been transferred to your Worldpay account.
            Settled: We have received the funds and are preparing to transfer them to your bank account. This event is only available in certain use cases.
            Refunded: The card issuer has received the refund request and they will return the funds to your customer's account. This event is only available in certain use cases.
            Error: The payment wasn't completed. You may want to reattempt the payment.
            Expired: The authorization validity period ended before a settlement or cancel request was made.
    payments_events_recovery_200_response:
      required:
      - lastEvent
      type: object
      properties:
        lastEvent:
          type: string
          enum:
          - Authorized
          - Refused
          - Sent for Settlement
          - Sent for Refund
          - Send for Cancellation
          - Refund failed
          - Settlement failed
          - Settled
          - Refunded
          - Error
          - Expired
          x-enumDescriptions:
            Authorized: The payment has been approved and the funds have been reserved in your customer's account.
            Refused: Your payment request has been declined.
            Sent for Settlement: A request has been made to move the reserved funds in your customer's account and transfer them to your Worldpay account.
            Sent for Refund: A request has been made to send funds back to your customer's account.
            Sent for Cancelation: A request has been made to cancel the payment without sending it for settlement.
            Refund failed: A refund request couldn't be processed and the funds were returned to your account.
            Settlement failed: A settlement request couldn't be processed. Funds have not been transferred to your Worldpay account.
            Settled: We have received the funds and are preparing to transfer them to your bank account. This event is only available in certain use cases.
            Refunded: The card issuer has received the refund request and they will return the funds to your customer's account. This event is only available in certain use cases.
            Error: The payment wasn't completed. You may want to reattempt the payment.
            Expired: The authorization validity period ended before a settlement or cancel request was made.
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic