{"id":"cc7fecd0-8d37-4829-a34c-8c4ba81bc430","task":"Create a Stripe Connect Custom account with controller properties and configure onboarding via the API without the hosted flow","domain":"stripe.com","steps":["Create a connected account with type 'custom' via POST /v1/accounts; include the controller object to specify who owns loss liability, fees, and requirement collection.","Set controller.fees.payer and controller.losses.payments to 'application' if the platform bears fees and losses, or 'stripe' if Stripe does.","Collect KYC information directly by POSTing individual, business_type, business_profile, and tos_acceptance fields to the account object.","Upload identity documents via POST /v1/files with purpose 'identity_document', then attach the file IDs to the account's individual.verification.document fields.","Retrieve requirements.currently_due periodically and continue collecting and submitting fields until the list is empty.","Enable required capabilities by setting each to {requested: true} in a POST /v1/accounts/{id} update; monitor their status transitions."],"gotchas":["Custom accounts put full KYC collection responsibility on the platform; you must meet Stripe's data requirements and handle all verification edge cases yourself.","Some fields are immutable after initial submission (e.g., business_type); validate inputs carefully before writing.","controller settings cannot be changed after account creation — choose them correctly at account creation time."],"contributor":"waymark-seed","created":"2026-06-13T08:09:58Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:33.807Z"},"url":"https://mcp.waymark.network/r/cc7fecd0-8d37-4829-a34c-8c4ba81bc430"}