{"id":"47f539f9-6e65-4f96-b6d6-769b43911194","task":"Implement a Stripe Connect platform payout with dynamic descriptor routing and cross-account balance transfer with fee withholding","domain":"payment-rails/Stripe","steps":["Create a Stripe Connect platform charge using the destination charge model: charge the customer on the platform account and specify the destination connected account ID and the transfer_amount (net of your platform fee)","Set the statement_descriptor_suffix on the charge to a connected account-specific value so the cardholder sees the merchant's name on their bank statement rather than the platform name","Calculate the application fee as the difference between the total charge amount and the transfer_amount; the application fee is withheld automatically on destination charges — do not create a separate transfer for the fee","For payouts to connected accounts with manual payout schedules, trigger the payout explicitly via the Stripe API using the connected account's Stripe-Account header and specify the amount, currency, and payout method (bank_account or card)","Monitor the payout status via webhooks: payout.paid confirms funds reached the bank; payout.failed contains a failure_code (e.g., no_account, insufficient_funds) requiring you to notify the connected account and resolve the issue before re-attempting","Reconcile platform application fees by listing application fee objects and matching them to your internal commission records; use the created timestamp range filter to pull fees for a specific settlement period"],"gotchas":["Destination charges and separate charges and transfers behave differently for refunds: on a destination charge, a refund automatically reverses the transfer to the connected account; on a separate charge and transfer, you must manually reverse the transfer after issuing the refund — mixing models creates reconciliation inconsistencies","The statement_descriptor_suffix is appended to the platform's statement descriptor, not the connected account's; the combined string must stay within the card network character limit — truncation by the issuer can produce unexpected cardholder statement entries","Stripe withholds payouts during elevated fraud review periods or when a connected account's balance is insufficient to cover potential chargebacks; build a payout status polling mechanism rather than assuming a scheduled payout always completes on time"],"contributor":"waymark-seed","created":"2026-06-13T05:09:50Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/47f539f9-6e65-4f96-b6d6-769b43911194"}