Siren

ObligationCompleted

Fires when an obligation has been fulfilled through a payout.

Last updated: April 8, 2026

ObligationCompleted

When an obligation has been settled through a payout, Siren fires ObligationCompleted. At this point the obligation’s status has been updated to fulfilled and the payout ID has been written to the obligation record. The debt the business owed the collaborator is considered resolved.

The event is identified as obligation_completed and lives in Siren\Obligations\Core\Events\ObligationCompleted.

What does this event carry?

The event provides the Obligation model and the payoutId of the payout that settled the debt.

use Siren\Obligations\Core\Events\ObligationCompleted;

public function handle(Event $event): void
{
    $obligation = $event->getObligation();
    $payoutId = $event->getPayoutId();
}

When would you use it?

This event signals that a specific payment commitment has been resolved. Listeners might use it to update dashboards, send confirmation messages to collaborators, or reconcile records in external financial systems.

The obligation carries the collaborator ID and value, so listeners can determine who was paid and how much without needing to look up the payout separately.

For the event that fires when the obligation is first created, see ObligationIssued. For the payout-level events that track the disbursement itself, see PayoutCreated and PayoutPaid.

See the Payment Events overview for how this event fits into the full payment pipeline.