$ paggio docs_

    Notifications / Slack

    Slack Notifications

    Send webhook alerts straight into your Slack channels. Use it for production alerts, staging noise, or a single "webhooks" channel your team keeps open all day.

    Setup

    1

    Create a Slack App

    Go to api.slack.com/apps and click Create New App.

    In the dialog that appears, select From scratch.

    • App Name: Paggio (or anything you like)
    • Pick a workspace: choose your Slack workspace from the dropdown

    Click Create App. You'll land on your new app's settings page.

    Workspace permissions:You need to be an admin or have permission to install apps in your Slack workspace. If you don't see your workspace in the list, ask your admin to grant you access or create the app for you.
    2

    Enable Incoming Webhooks

    In your new app's settings page, find Incoming Webhooks in the left sidebar under Features.

    Click the toggle next to Activate Incoming Webhooks to turn it ON. The toggle should turn green.

    Once enabled, the page will expand to show options and a section titled Webhook URLs for Your Workspace.

    3

    Add Webhook to Workspace

    Scroll down to Webhook URLs for Your Workspace and click Add New Webhook to Workspace.

    You'll be redirected to an OAuth screen asking: "Where should [your app name] post?"

    Select the channel you want notifications in, for example:

    • #general — for team-wide visibility
    • #webhooks — recommended; create a dedicated channel
    • • Any private channel you have access to

    Click Allow. You'll be redirected back to the app settings page and the new webhook will appear under Webhook URLs for Your Workspace.

    4

    Copy the Webhook URL

    Back on the Incoming Webhooks page, scroll down to Webhook URLs for Your Workspace.

    You'll see a URL that looks like:

    bash
    https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX

    Click Copy next to the URL.

    Keep your webhook URL secret:Keep this URL private. Anyone with this URL can post messages directly into your Slack channel.
    5

    Add to Paggio

    Go to paggio.dev/dashboard → Settings → Notifications.

    In the Slack section:

    • • Toggle Enable Slack notifications to ON.
    • • Paste your webhook URL into the Slack Webhook URL field.
    • • Click Save.

    Then select your notification triggers:

    • • ✅ Failed — recommended, get pinged when something breaks.
    • • ☐ Delivered — optional, can be noisy at high volume.
    • • ☐ Captured — for endpoints with no destination URL yet.
    6

    Test it

    Send a test webhook to any of your Paggio endpoints:

    bash
    curl -X POST https://paggio.dev/api/webhook/YOUR-SLUG \
      -H "Content-Type: application/json" \
      -H "stripe-signature: t=1234,v1=test" \
      -d '{"type":"payment_intent.succeeded","amount":9900}'

    Within seconds you should see a message in your chosen Slack channel.

    What the Slack message looks like

    DELIVERED

    ┌─────────────────────────────────────┐
    │ ✅ Webhook Delivered                │
    │                                     │
    │ payment_intent.succeeded was        │
    │ successfully forwarded in 142ms     │
    │                                     │
    │ Source      Stripe                  │
    │ Status      Delivered               │
    │ Latency     142ms                   │
    │ Endpoint    stripe-prod             │
    │ Destination https://your-app.com/.. │
    │ Event ID    550e8400-e29b-41d4...   │
    └─────────────────────────────────────┘
      Paggio · Stripe · Today at 3:23 PM

    FAILED

    ┌─────────────────────────────────────┐
    │ ❌ Webhook Failed                   │
    │                                     │
    │ checkout.session.completed failed   │
    │ to forward after 30,000ms timeout   │
    │                                     │
    │ Source      Stripe                  │
    │ Status      Failed                  │
    │ Latency     30,000ms                │
    │ Endpoint    stripe-prod             │
    │ Destination https://your-app.com/.. │
    │ Event ID    7f3a9c12-b4e1-42d8...   │
    └─────────────────────────────────────┘
      Paggio · Stripe · Today at 3:25 PM
    Which notifications to enable:We recommend enabling Failed notifications only. Delivered notifications can get noisy fast — you usually only need to know when something breaks.

    Troubleshooting

    ProblemFix
    No message receivedCheck that the webhook URL is saved correctly in Paggio settings and that notifications for the relevant event type (failed / delivered / captured) are enabled.
    "channel_not_found" errorReinstall the Slack app to your workspace and ensure the webhook is created for a channel that still exists and that the app has permission to post there.
    URL shows as invalidMake sure the URL starts with https://hooks.slack.com and that there are no extra spaces or quotes when you paste it.
    Notifications stopped workingSlack may have rotated or invalidated the webhook URL. Generate a new webhook in the Slack app settings and update it in Paggio's notification settings.
    App not showing in workspaceConfirm you clicked Allow on the OAuth screen and that your workspace admin has permitted custom apps. If you still can't see it, ask an admin to install the app.
    Webhook URLs can change:Slack webhook URLs occasionally get invalidated if you reinstall the app, change permissions, or remove the app from a channel. If notifications stop working, generate a new webhook URL and update it in Paggio settings.