> ## Documentation Index
> Fetch the complete documentation index at: https://docs.beatpass.ca/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhooks

> Understand BeatPass payment event processing and the current outbound webhook availability for external integrations.

## Overview

BeatPass processes payment and payout events internally to keep purchases, licenses, and producer finance records up to date. There is currently no outbound webhook system for external developer integrations.

<Note>
  External apps should use the documented API to read purchase, license, and payout-history data. Do not send payment-provider webhook traffic to BeatPass or build against undocumented internal routes.
</Note>

***

## What Developers Can Rely On

<CardGroup cols={2}>
  <Card title="No outbound webhooks" icon="ban">
    BeatPass does not currently send webhook callbacks to partner or developer applications.
  </Card>

  <Card title="Documented APIs only" icon="book">
    Use the public developer docs for supported purchase, license, analytics, and payout-history reads.
  </Card>

  <Card title="Provider events stay internal" icon="shield-halved">
    Card payment, Stripe Connect, and BEATPAY provider events are handled by BeatPass, not external integrations.
  </Card>

  <Card title="Use polling carefully" icon="arrows-rotate">
    If your integration needs status updates, poll documented read endpoints conservatively and respect rate limits.
  </Card>
</CardGroup>

***

## Purchase Confirmation Flow

<Steps>
  <Step title="Buyer starts checkout">
    A buyer starts a track purchase through the documented commerce flow.
  </Step>

  <Step title="Payment is confirmed">
    BeatPass receives the provider confirmation internally and updates the purchase record.
  </Step>

  <Step title="License becomes available">
    BeatPass activates the license, generates the certificate when applicable, and updates the buyer and producer views.
  </Step>

  <Step title="Integration reads status">
    Your integration reads purchase or license state through the documented API instead of waiting for an outbound webhook.
  </Step>
</Steps>

***

## Payout and BEATPAY Events

Producer payout setup and payout-provider events are not public integration hooks. Producers manage payout setup in **Finances**, including BEATPAY bank payout setup when it is available to them.

For external integrations:

* Do not document, call, or probe BEATPAY setup routes
* Do not attempt to create or manage producer bank details through the public API
* Use documented read-only payout history or transaction endpoints only when your account is approved for them
* Send producers to [BEATPAY Bank Payouts](/help/earnings/beatpay) or [Producer Finances](/help/producer-dashboard/finances) for setup guidance

<Warning>
  Undocumented payout setup, provider, and administrative routes are off-limits. Unauthorized access attempts can result in token revocation and account action.
</Warning>

***

## Security Expectations

BeatPass verifies provider-originated payment events internally before updating purchases, licenses, or payout records. External developers should focus on protecting their own integration:

* Store Bearer tokens securely
* Use HTTPS for all requests
* Do not log payment secrets or user banking details
* Respect API rate limits and retry guidance
* Contact BeatPass before building any workflow that depends on near-real-time payment or payout state

***

## Related Resources

<CardGroup cols={3}>
  <Card title="Commerce & Licensing API" icon="cart-shopping" href="/developers/api-reference/commerce">
    Purchase flow, license certificates, and safe finance references.
  </Card>

  <Card title="Rate Limits" icon="gauge-high" href="/developers/rate-limits">
    Poll documented endpoints responsibly.
  </Card>

  <Card title="BEATPAY" icon="money-bill-transfer" href="/help/earnings/beatpay">
    Producer-facing bank payout setup guidance.
  </Card>
</CardGroup>
