AllocationCompleted
Fires when an individual collaborator's share of a distribution has been calculated and recorded.
Last updated: April 8, 2026
AllocationCompleted
AllocationCompleted fires when an individual collaborator’s share of a distribution has been calculated and recorded. This is the bridge between the distribution system and the standard payment pipeline. The allocation’s value becomes the obligation amount, so from this point forward the flow is identical to what happens after a program-based conversion.
The event ID is allocation_completed, and its fully qualified class is Siren\Distributions\Core\Events\AllocationCompleted.
What does this event carry?
The event carries the Allocation model, which records which collaborator received the allocation, how much they were allocated, and which distribution it came from.
use Siren\Distributions\Core\Events\AllocationCompleted;
public function handle(Event $event): void
{
$allocation = $event->getAllocation();
// The allocation model links a specific collaborator
// to their calculated share of the distribution's reward pool
}
Where does the allocation go next?
The allocation value enters the obligation pipeline just as a conversion-based reward would. An obligation is created for the collaborator at the allocated amount, and from there it follows the standard approval and fulfillment workflow: pending, approved, and eventually paid out.
This design means the fulfillment system does not need to distinguish between program-based rewards and distribution-based rewards. Both arrive as obligations with an amount and a collaborator, and both are processed the same way during payout generation.
For the full lifecycle of distribution events and how they connect to the fulfillment pipeline, see the Distribution Events overview.