GetPaid Accept payments webhooks API

Webhooks related to accepting payment events.

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/getpaid-accept-payments-webhooks-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

getpaid-accept-payments-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Getpaid Accept payments webhooks API
  version: v2
  contact:
    email: support@getpaid.io
  description: '# Getting started


    Our APIs provide programmatic access to the Getpaid solution.'
servers:
- url: https://api.getpaid.io
  description: Live
- url: https://api.sandbox.getpaid.io
  description: Sandbox
tags:
- name: Accept payments webhooks
  description: Webhooks related to accepting payment events.
paths: {}
webhooks:
  checkout_completed:
    post:
      summary: checkout_completed
      operationId: checkout_completed
      description: The `checkout_completed` webhook is sent when the checkout process is completed with a successful payment.
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: checkout_completed
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    - payment
                    properties:
                      id:
                        $ref: '#/components/schemas/CheckoutId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
                      payment:
                        description: The successful payment associated with the completed checkout.
                        type: object
                        required:
                        - id
                        properties:
                          id:
                            $ref: '#/components/schemas/PaymentId'
                          standing_instruction:
                            description: The standing instruction associated with the payment, if the payment is the first of a recurring series.
                            required:
                            - id
                            - status
                            properties:
                              id:
                                $ref: '#/components/schemas/StandingInstructionId'
                              status:
                                allOf:
                                - $ref: '#/components/schemas/StandingInstructionStatus'
                                - const: active
                                  example: active
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
  checkout_failed:
    post:
      summary: checkout_failed
      operationId: checkout_failed
      description: 'The `checkout_failed` webhook is sent when the checkout lifetime is reached without a successful payment attempt, and at least one payment was attempted but none were successful.


        It can be received days after the checkout is created depending on the payment method selected.'
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: checkout_failed
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    - payment
                    properties:
                      id:
                        $ref: '#/components/schemas/CheckoutId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
                      payment:
                        allOf:
                        - $ref: '#/components/schemas/WebhookCheckoutPayment'
                        - description: The last payment failed associated with the checkout.
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
  checkout_in_progress:
    post:
      summary: checkout_in_progress
      operationId: checkout_in_progress
      description: 'The `checkout_in_progress` webhook is sent when the checkout lifetime reaches its expiration, but a payment attempt is still in progress.


        Banking payment methods are typical examples where this webhook can be sent, as the payment processing can take several days depending on the bank processing times.'
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: checkout_in_progress
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    - payment
                    properties:
                      id:
                        $ref: '#/components/schemas/CheckoutId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
                      payment:
                        allOf:
                        - $ref: '#/components/schemas/WebhookCheckoutPayment'
                        - description: The payment in progress pending to be confirmed its final status and associated with the checkout.
                          type: object
                          properties:
                            estimated_update_before:
                              description: The estimated UTC datetime before which the payment status is expected to be updated.
                              allOf:
                              - $ref: '#/components/schemas/DateTime'
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
  checkout_unattempted:
    post:
      summary: checkout_unattempted
      operationId: checkout_unattempted
      description: The `checkout_unattempted` webhook is sent when the checkout lifetime is reached without a payment.
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: checkout_unattempted
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    properties:
                      id:
                        $ref: '#/components/schemas/CheckoutId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
  payment_captured:
    post:
      summary: payment_captured
      operationId: payment_captured
      description: The `payment_captured` webhook is sent when a payment is successfully captured and the funds are secured for the seller.
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: payment_captured
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    - capture_id
                    properties:
                      id:
                        $ref: '#/components/schemas/PaymentId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
                      capture_id:
                        $ref: '#/components/schemas/CaptureId'
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
  payment_failed:
    post:
      summary: payment_failed
      operationId: payment_failed
      description: The `payment_failed` webhook is sent when a payment fails due to business (decline) or technical issues.
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: payment_failed
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    - status
                    properties:
                      id:
                        $ref: '#/components/schemas/PaymentId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
                      status:
                        allOf:
                        - $ref: '#/components/schemas/PaymentStatus'
                        - example: failed
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
  payment_refunded:
    post:
      summary: payment_refunded
      operationId: payment_refunded
      description: The `payment_refunded` webhook is sent when a refund is successfully completed and the funds have been returned to the buyer.
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: payment_refunded
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    - refund
                    properties:
                      id:
                        $ref: '#/components/schemas/PaymentId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
                      refund:
                        description: The refund details.
                        type: object
                        required:
                        - id
                        - reference
                        properties:
                          id:
                            $ref: '#/components/schemas/RefundId'
                          reference:
                            allOf:
                            - $ref: '#/components/schemas/Reference'
                            - example: RFD-202510-0002
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
  payment_refund_failed:
    post:
      summary: payment_refund_failed
      operationId: payment_refund_failed
      description: The `payment_refund_failed` webhook is sent when a refund has failed.
      tags:
      - Accept payments webhooks
      security: []
      parameters:
      - $ref: '#/components/parameters/GetpaidTraceId'
      requestBody:
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/WebhookBaseRequest'
              - properties:
                  type:
                    const: payment_refund_failed
                  data:
                    type: object
                    required:
                    - id
                    - origin
                    - reference
                    - refund
                    properties:
                      id:
                        $ref: '#/components/schemas/PaymentId'
                      origin:
                        $ref: '#/components/schemas/PaymentOrigin'
                      reference:
                        $ref: '#/components/schemas/Reference'
                      refund:
                        description: The refund details.
                        type: object
                        required:
                        - id
                        - reference
                        properties:
                          id:
                            $ref: '#/components/schemas/RefundId'
                          reference:
                            allOf:
                            - $ref: '#/components/schemas/Reference'
                            - example: RFD-202510-0002
      responses:
        '429':
          description: The webhook action will be retried according to the workflow retry schedule
        2XX:
          description: Indicate success, the webhook will not be retried
        4XX:
          description: The webhook action will be disabled
        5XX:
          description: The webhook action will be retried according to the workflow retry schedule
components:
  schemas:
    PaymentMethodType:
      description: The type of payment method.
      type: string
      enum:
      - card
      - sepa_direct_debit
    PaymentOriginApi:
      allOf:
      - $ref: '#/components/schemas/PaymentOriginBase'
    RefundId:
      allOf:
      - $ref: '#/components/schemas/Id'
      - description: The unique identifier of the refund of a payment.
        example: rfd_4a4m2pjycdb1jbj68h1rvk9kcz
    CaptureId:
      allOf:
      - $ref: '#/components/schemas/Id'
      - description: The unique identifier of a capture
        example: cpt_57fm2pjycji1jbj68h1rvk9bnc
    CheckoutId:
      allOf:
      - $ref: '#/components/schemas/Id'
      - description: The unique identifier of the checkout.
        example: cko_4kf9v6xp00hzc99rdwr5m97wce
    StandingInstructionId:
      allOf:
      - $ref: '#/components/schemas/Id'
      - description: The unique identifier of the standing instruction.
        example: sti_4tbftjwzxja1h71nzas1g0g1xm
    PaymentOrigin:
      description: The origin of the payment creation.
      allOf:
      - $ref: '#/components/schemas/PaymentOriginApi'
      - $ref: '#/components/schemas/PaymentOriginCheckout'
      discriminator:
        propertyName: type
        mapping:
          api: '#/components/schemas/PaymentOriginApi'
          checkout: '#/components/schemas/PaymentOriginCheckout'
    PaymentId:
      allOf:
      - $ref: '#/components/schemas/Id'
      - description: The unique identifier of the payment.
        example: pay_4a4m2pjycdb1jbj68h1rvk9kcz
    Reference:
      allOf:
      - $ref: '#/components/schemas/ShortString'
      - description: An identifier in your system. It is recommended to make it unique but the uniqueness is not enforced by the solution.
        example: ORD-202510-0232
    PaymentOriginCheckout:
      allOf:
      - $ref: '#/components/schemas/PaymentOriginBase'
      - required:
        - id
        properties:
          id:
            $ref: '#/components/schemas/CheckoutId'
    Id:
      type: string
      format: id
      minLength: 30
      maxLength: 50
    PaymentStatus:
      description: 'The status of the payment.

        See the [list, transitions, and description of each status](/payments/lifecycle) for more details.

        '
      type: string
      enum:
      - initiated
      - action_required
      - submitted
      - authorized
      - captured
      - declined
      - failed
      - partially_refunded
      - refunded
    StandingInstructionStatus:
      description: 'The status of the standing instruction.


        - `new`: requested to creation as part of an initial payment.

        - `active`: standing instruction is active and can be used for subsequent payments.

        '
      type: string
      enum:
      - new
      - active
    WebhookCheckoutPayment:
      type: object
      required:
      - id
      - method
      properties:
        id:
          $ref: '#/components/schemas/PaymentId'
        method:
          description: The payment method used.
          type: object
          required:
          - type
          properties:
            type:
              $ref: '#/components/schemas/PaymentMethodType'
    DateTime:
      description: 'UTC timestamp in ISO 8601 format with milliseconds ([RFC 3339](https://www.rfc-editor.org/rfc/rfc3339.html)).

        Always includes the ''Z'' UTC indicator.

        '
      type: string
      format: date-time
      minLength: 24
      maxLength: 24
      example: '2025-09-01T22:05:48.479Z'
    EventId:
      allOf:
      - $ref: '#/components/schemas/Id'
      - description: The unique identifier of the event.
        example: evt_4a4m2pjycdb1jbj68h1rvk9kcz
    ShortString:
      type: string
      minLength: 1
      maxLength: 50
    PaymentOriginBase:
      type: object
      required:
      - type
      properties:
        type:
          description: 'The payment origin type.


            - `api`: The payment was created via the API.

            - `checkout`: The payment was created as an attempt of a checkout session.

            '
          type: string
          enum:
          - api
          - checkout
    WebhookBaseRequest:
      type: object
      required:
      - id
      - type
      - version
      - occurred_at
      - data
      properties:
        id:
          $ref: '#/components/schemas/EventId'
        type:
          description: The type of event.
          type: string
        version:
          description: The version of the event type.
          type: string
          const: v2
          example: v2
        occurred_at:
          $ref: '#/components/schemas/DateTime'
          description: The UTC date and time at which the event occurred.
        data:
          description: The event data specific to each event type and version.
          type: object
  parameters:
    GetpaidTraceId:
      name: Getpaid-Trace-Id
      in: header
      description: The trace identifier for the request. It is a good idea to log this and provide it with any support requests
      required: true
      schema:
        type: string
        example: 96ce50247f87f540bb2d86771b3728b8
  securitySchemes:
    OAuth:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://auth.getpaid.io/oauth/token
          scopes:
            accounts:read: Allows to read accounts and onboarding applications.
            accounts:read_write: Allows to read, create and/or operate accounts and onboarding applications.
            payments:read: Allows to read payments and checkouts.
            payments:read_write: Allows to read, create and/or operate payments and checkouts.
x-tagGroups:
- name: General
  tags:
  - Authentication
  - Documents
- name: Accept payments
  tags:
  - Checkouts
  - Payments
  - Accept payments webhooks
- name: Onboard sellers
  tags:
  - Accounts
  - Applications
  - Onboard sellers webhooks
- name: Operate
  tags:
  - Queries
  - Exports
  - Analytics
  - Operate webhooks