PayMongo · AsyncAPI Specification

Paymongo Webhooks

Version

View Spec View on GitHub PaymentsFintechPhilippinesSoutheast AsiaGCashE-WalletCard PaymentsAsyncAPIWebhooksEvents

AsyncAPI Specification

Raw ↑
generated: '2026-07-17'
method: searched
source: https://docs.paymongo.com/docs/developer-tools-webhooks-events
spec_type: Webhooks
description: >-
  PayMongo's webhook event catalog. PayMongo does NOT publish an AsyncAPI
  document; it delivers signed HTTP POST callbacks (not a WebSocket/stream). Each
  delivery is a JSON event with data.attributes.type set to one of the event
  types below, and is verified via the Paymongo-Signature header (HMAC with the
  endpoint's signing secret). Event names captured verbatim from the events doc.
delivery:
  transport: HTTP POST callback to a registered endpoint
  signature_header: Paymongo-Signature
  verification: HMAC using the webhook endpoint's signing secret
  envelope: '{ "data": { "id": "evt_...", "type": "event", "attributes": { "type": <event_type>, "livemode": bool, "created_at": int, "data": { <resource> } } } }'
  management_operations:
    - 'openapi/paymongo-openapi.yml#createWebhook'
    - 'openapi/paymongo-openapi.yml#listWebhooks'
    - 'openapi/paymongo-openapi.yml#retrieveWebhook'
    - 'openapi/paymongo-openapi.yml#enableWebhook'
    - 'openapi/paymongo-openapi.yml#disableWebhook'
events:
  payment_acceptance:
    - {type: payment.paid, resource: payment, description: A payment succeeded.}
    - {type: payment.failed, resource: payment, description: A payment attempt failed.}
    - {type: payment_intent.succeeded, resource: payment_intent, description: A Payment Intent reached succeeded.}
    - {type: payment_intent.awaiting_payment_method, resource: payment_intent, description: A Payment Intent needs a (new) payment method attached.}
  disputes:
    - {type: dispute.created, resource: dispute, description: A chargeback/dispute was opened.}
    - {type: dispute.resolved, resource: dispute, description: A dispute was resolved.}
  refunds:
    - {type: refund.succeeded, resource: refund, description: A refund completed.}
  qr:
    - {type: qr.paid, resource: qrph, description: A QR Ph code was paid.}
    - {type: qr.expired, resource: qrph, description: A QR Ph code expired unpaid.}
  payouts:
    - {type: payout.deposited, resource: payout, description: A payout was deposited to the bank/e-wallet.}
    - {type: payout.returned, resource: payout, description: A payout was returned.}
  subscriptions:
    - {type: subscription.activated, resource: subscription, description: A subscription became active.}
    - {type: subscription.updated, resource: subscription, description: A subscription was updated.}
    - {type: subscription.past_due, resource: subscription, description: A subscription is past due.}
    - {type: subscription.unpaid, resource: subscription, description: A subscription is unpaid.}
    - {type: subscription.invoice.created, resource: invoice, description: A subscription invoice was created.}
    - {type: subscription.invoice.finalized, resource: invoice, description: A subscription invoice was finalized.}
    - {type: subscription.invoice.updated, resource: invoice, description: A subscription invoice was updated.}
    - {type: subscription.invoice.paid, resource: invoice, description: A subscription invoice was paid.}
    - {type: subscription.invoice.payment_failed, resource: invoice, description: A subscription invoice payment failed.}
  workflow:
    - {type: workflow.completed, resource: workflow, description: A workflow run completed.}
    - {type: workflow.failed, resource: workflow, description: A workflow run failed.}

Work with this as data

Every AsyncAPI spec 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 asyncapi

4 MCP tools reach this
  • find_asyncapisBrowse and filter every AsyncAPI spec 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 AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/paymongo-webhooks"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"

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

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.