action.skip

Payment Webhook Events

This topic describes the payment events sent by Megaport’s webhooks.

payment.card.registered

payment.card.registered is sent when a payment card is registered.

The payload of this event has the following structure:

  • company_uid (string, UUID)
  • metadata (object)
    • environment (string)
  • schema_version (string)
  • timestamp (string, date-time)
  • type (string)
  • data (object)
    • auto_pay (boolean)
    • billing_market (string)
    • last_four_digits (string)

For example:

{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "payment.card.registered",
  "data": {
    "auto_pay": true,
    "billing_market": "US",
    "last_four_digits": "1234"
  }
}

payment.card.registration.failed

payment.card.registration.failed is sent when a payment card registration failed.

The payload of this event has the following structure:

  • company_uid (string, UUID)
  • metadata (object)
    • environment (string)
  • schema_version (string)
  • timestamp (string, date-time)
  • type (string)
  • data (object)
    • billing_market (string)
    • failure_reason (string)
    • last_four_digits (string)

For example:

{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "payment.card.registration.failed",
  "data": {
    "billing_market": "US",
    "failure_reason": "Do Not Honor",
    "last_four_digits": "1234"
  }
}

payment.card.removed

payment.card.removed is sent when a payment card is removed.

The payload of this event has the following structure:

  • company_uid (string, UUID)
  • metadata (object)
    • environment (string)
  • schema_version (string)
  • timestamp (string, date-time)
  • type (string)
  • data (object)
    • billing_market (string)
    • last_four_digits (string)

For example:

{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "payment.card.removed",
  "data": {
    "billing_market": "US",
    "last_four_digits": "1234"
  }
}

payment.card.updated

payment.card.updated is sent when a payment card is updated.

The payload of this event has the following structure:

  • company_uid (string, UUID)
  • metadata (object)
    • environment (string)
  • schema_version (string)
  • timestamp (string, date-time)
  • type (string)
  • data (object)
    • auto_pay (boolean)
    • billing_market (string)
    • last_four_digits (string)

For example:

{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "payment.card.updated",
  "data": {
    "auto_pay": true,
    "billing_market": "US",
    "last_four_digits": "1234"
  }
}

payment.failed

payment.failed is sent when a payment failed.

The payload of this event has the following structure:

  • company_uid (string, UUID)
  • metadata (object)
    • environment (string)
  • schema_version (string)
  • timestamp (string, date-time)
  • type (string)
  • data (object)
    • amount (number, double)
    • billing_market (string)
    • currency (string)
    • failure_reason (string)
    • payment_date (string, date-time)
    • payment_method (string)
    • reference (string)

For example:

{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "payment.failed",
  "data": {
    "amount": 1000,
    "billing_market": "US",
    "currency": "AUD",
    "failure_reason": "Stripe blocked this charge as too risky.",
    "payment_date": "2026-05-12T03:00:00Z",
    "payment_method": "Credit Card",
    "reference": "007_asdf"
  }
}

payment.succeeded

payment.succeeded is sent when a payment was successful.

The payload of this event has the following structure:

  • company_uid (string, UUID)
  • metadata (object)
    • environment (string)
  • schema_version (string)
  • timestamp (string, date-time)
  • type (string)
  • data (object)
    • amount (number, double)
    • billing_market (string)
    • currency (string)
    • payment_date (string, date-time)
    • payment_method (string)
    • reference (string)

For example:

{
  "company_uid": "681ef39b-436b-40dd-a914-26391db2689c",
  "metadata": {
    "environment": "production"
  },
  "schema_version": "1",
  "timestamp": "2026-04-23T10:29:12Z",
  "type": "payment.succeeded",
  "data": {
    "amount": 1000,
    "billing_market": "US",
    "currency": "AUD",
    "payment_date": "2026-05-12T03:00:00Z",
    "payment_method": "Credit Card",
    "reference": "ch_12345abcdefg"
  }
}