Skip to main content
WEBHOOK
transaction.past_due
{
  "event_id": "evt_01hv8xbx1sxvjqpp24m7j3xthf",
  "event_type": "transaction.past_due",
  "occurred_at": "2024-04-12T10:24:03.642083Z",
  "notification_id": "ntf_01hv8xbx5rj101psexq5wndwd3",
  "data": {
    "id": "txn_01hv8xbtmb6zc7c264ycteehth",
    "items": [
      {
        "price": {
          "id": "pri_01gsz8x8sawmvhz1pv30nge1ke",
          "name": "Monthly (per seat)",
          "type": "standard",
          "status": "active",
          "quantity": {
            "maximum": 999,
            "minimum": 1
          },
          "tax_mode": "account_setting",
          "created_at": "2023-02-23T13:55:22.538367Z",
          "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg",
          "unit_price": {
            "amount": "3000",
            "currency_code": "USD"
          },
          "updated_at": "2024-04-11T13:54:52.254748Z",
          "custom_data": null,
          "description": "Monthly",
          "trial_period": null,
          "billing_cycle": {
            "interval": "month",
            "frequency": 1
          },
          "unit_price_overrides": [],
          "import_meta": null
        },
        "quantity": 10,
        "proration": {
          "rate": "1",
          "billing_period": {
            "ends_at": "2024-06-12T10:18:47.635628Z",
            "starts_at": "2024-05-12T10:18:47.635628Z"
          }
        }
      },
      {
        "price": {
          "id": "pri_01h1vjfevh5etwq3rb416a23h2",
          "name": "Monthly (recurring addon)",
          "type": "standard",
          "status": "active",
          "quantity": {
            "maximum": 100,
            "minimum": 1
          },
          "tax_mode": "account_setting",
          "created_at": "2023-06-01T13:31:12.625056Z",
          "product_id": "pro_01h1vjes1y163xfj1rh1tkfb65",
          "unit_price": {
            "amount": "10000",
            "currency_code": "USD"
          },
          "updated_at": "2024-04-09T07:23:00.907834Z",
          "custom_data": null,
          "description": "Monthly",
          "trial_period": null,
          "billing_cycle": {
            "interval": "month",
            "frequency": 1
          },
          "unit_price_overrides": [],
          "import_meta": null
        },
        "quantity": 1,
        "proration": {
          "rate": "1",
          "billing_period": {
            "ends_at": "2024-06-12T10:18:47.635628Z",
            "starts_at": "2024-05-12T10:18:47.635628Z"
          }
        }
      }
    ],
    "origin": "subscription_recurring",
    "status": "past_due",
    "details": {
      "totals": {
        "fee": null,
        "tax": "3549",
        "total": "43549",
        "credit": "0",
        "balance": "43549",
        "discount": "0",
        "earnings": null,
        "subtotal": "40000",
        "grand_total": "43549",
        "currency_code": "USD",
        "credit_to_balance": "0"
      },
      "line_items": [
        {
          "id": "txnitm_01hv8xbv0wdggp4a9338b18ckn",
          "totals": {
            "tax": "2662",
            "total": "32662",
            "discount": "0",
            "subtotal": "30000"
          },
          "product": {
            "id": "pro_01gsz4t5hdjse780zja8vvr7jg",
            "name": "AeroEdit Pro",
            "type": "standard",
            "status": "active",
            "image_url": "https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png",
            "created_at": "2023-02-23T12:43:46.605Z",
            "updated_at": "2024-04-05T15:53:44.687Z",
            "custom_data": {
              "features": {
                "sso": false,
                "route_planning": true,
                "payment_by_invoice": false,
                "aircraft_performance": true,
                "compliance_monitoring": true,
                "flight_log_management": true
              },
              "suggested_addons": [
                "pro_01h1vjes1y163xfj1rh1tkfb65",
                "pro_01gsz97mq9pa4fkyy0wqenepkz"
              ],
              "upgrade_description": "Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring."
            },
            "description": "Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations.",
            "tax_category": "standard",
            "import_meta": null
          },
          "price_id": "pri_01gsz8x8sawmvhz1pv30nge1ke",
          "quantity": 10,
          "tax_rate": "0.08875",
          "proration": {
            "rate": "1",
            "billing_period": {
              "ends_at": "2024-06-12T10:18:47.635628Z",
              "starts_at": "2024-05-12T10:18:47.635628Z"
            }
          },
          "unit_totals": {
            "tax": "266",
            "total": "3266",
            "discount": "0",
            "subtotal": "3000"
          }
        },
        {
          "id": "txnitm_01hv8xbv0wdggp4a933cx2m9qc",
          "totals": {
            "tax": "887",
            "total": "10887",
            "discount": "0",
            "subtotal": "10000"
          },
          "product": {
            "id": "pro_01h1vjes1y163xfj1rh1tkfb65",
            "name": "Analytics addon",
            "type": "standard",
            "status": "active",
            "image_url": "https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png",
            "created_at": "2023-06-01T13:30:50.302Z",
            "updated_at": "2024-04-05T15:47:17.163Z",
            "custom_data": null,
            "description": "Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights.",
            "tax_category": "standard",
            "import_meta": null
          },
          "price_id": "pri_01h1vjfevh5etwq3rb416a23h2",
          "quantity": 1,
          "tax_rate": "0.08875",
          "proration": {
            "rate": "1",
            "billing_period": {
              "ends_at": "2024-06-12T10:18:47.635628Z",
              "starts_at": "2024-05-12T10:18:47.635628Z"
            }
          },
          "unit_totals": {
            "tax": "887",
            "total": "10887",
            "discount": "0",
            "subtotal": "10000"
          }
        }
      ],
      "payout_totals": null,
      "tax_rates_used": [
        {
          "totals": {
            "tax": "3549",
            "total": "43549",
            "discount": "0",
            "subtotal": "40000"
          },
          "tax_rate": "0.08875"
        }
      ],
      "adjusted_totals": {
        "fee": "0",
        "tax": "3549",
        "total": "43549",
        "earnings": "0",
        "subtotal": "40000",
        "grand_total": "43549",
        "currency_code": "USD"
      }
    },
    "checkout": {
      "url": "https://aeroedit.com/pay?_ptxn=txn_01hv8xbtmb6zc7c264ycteehth"
    },
    "payments": [
      {
        "amount": "43549",
        "status": "error",
        "created_at": "2024-04-12T10:24:01.692772Z",
        "error_code": "authentication_failed",
        "captured_at": null,
        "method_details": {
          "card": {
            "type": "visa",
            "last4": "3184",
            "expiry_year": 2025,
            "expiry_month": 1,
            "cardholder_name": "Michael McGovern"
          },
          "type": "card"
        },
        "payment_method_id": "paymtd_01hv8x1tpjfnttxddw73xnqx6s",
        "payment_attempt_id": "ff8123f6-9cfc-4f04-9984-75e4ad04b169",
        "stored_payment_method_id": "281ff2ca-8550-42b9-bf39-15948e7de62d"
      }
    ],
    "billed_at": "2024-04-12T10:24:01.163479Z",
    "address_id": "add_01hv8gq3318ktkfengj2r75gfx",
    "created_at": "2024-04-12T10:24:01.588479Z",
    "invoice_id": null,
    "updated_at": "2024-04-12T10:24:03.19700142Z",
    "revised_at": null,
    "business_id": null,
    "custom_data": null,
    "customer_id": "ctm_01hv6y1jedq4p1n0yqn5ba3ky4",
    "discount_id": null,
    "currency_code": "USD",
    "billing_period": {
      "ends_at": "2024-06-12T10:18:47.635628Z",
      "starts_at": "2024-05-12T10:18:47.635628Z"
    },
    "invoice_number": null,
    "billing_details": null,
    "collection_mode": "automatic",
    "subscription_id": "sub_01hv8x29kz0t586xy6zn1a62ny"
  }
}

Headers

Paddle-Signature
string
required

Signature for this request. Use to verify that webhooks come from Paddle.

Example:

"ts=1671552777;h1=eb4d0dc8853be92b7f063b9f3ba5233eb920a09459b6e6b2c26705b4364db151"

Body

application/json

Occurs when a transaction becomes past due. Its status field changes to past_due.

  • Automatically-collected transactions for subscription renewals become past due when a payment attempt fails.
  • Manually-collected transactions become past due when no payment has been received and the payment terms have elapsed.

The status against the related subscription for a transaction also changes to past_due, and subscription.past_due occurs.

data
Transaction Notification · object

Response

200

Respond with an HTTP 200 status code within 5 seconds to let Paddle know that you successfully received the message.

If your server sends another kind of status code or doesn't respond, Paddle automatically retries using an exponential backoff schedule.