feat(payouts): implement promoter earnings viewing, request flow, and admin Stripe processing with webhooks

Add model methods for accurate net calculations (€0.50 + 1.5% fees), eligibility, refund handling
Update promoter/payouts controller for index (pending events), create (eligibility checks)
Integrate admin processing via Stripe::Transfer, webhook for status sync
Enhance views: index pending cards, events/show preview/form
Add comprehensive tests (models, controllers, service, integration); run migrations
This commit is contained in:
kbe
2025-09-17 02:07:52 +02:00
parent 47f4f50e5b
commit 3c1e17c2af
31 changed files with 1096 additions and 148 deletions

View File

@@ -0,0 +1,5 @@
class AddIndexToPayoutsOnEventIdAndStatus < ActiveRecord::Migration[7.1]
def change
add_index :payouts, [ :event_id, :status ]
end
end

View File

@@ -0,0 +1,5 @@
class AddIndexToEarningsOnStatus < ActiveRecord::Migration[7.1]
def change
add_index :earnings, :status
end
end

View File

@@ -0,0 +1,5 @@
class AddIndexToTicketsOnStatusAndOrderId < ActiveRecord::Migration[7.1]
def change
add_index :tickets, [ :status, :order_id ]
end
end