Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.1k views
in Technique[技术] by (71.8m points)

payment processing - Stripe: getting "You cannot request any capability other than `transfers`" when only requesting transfers

I'm setting up a test connect account through Stripe, but for some reason during the onboarding I get:

You cannot request any capability other than transfers for accounts that are under the recipient service agreement.

even though I set the capabilities only to transfers.requested: true.

Full details:

1. I created a connect account

Request:

POST https://api.stripe.com/v1/accounts
x-www-form-urlencoded body:
tos_acceptance[service_agreement]: recipient
capabilities[transfers][requested]: true
country: AT
type: express

Response:

{
    "id": "acct_1IEKs6Q5kVIyiDKZ",
    "object": "account",
    "business_profile": {
        "mcc": null,
        "name": null,
        "product_description": null,
        "support_address": null,
        "support_email": null,
        "support_phone": null,
        "support_url": null,
        "url": null
    },
    "business_type": null,
    "capabilities": {
        "transfers": "inactive"
    },
    "charges_enabled": false,
    "country": "AT",
    "created": 1611780255,
    "default_currency": "eur",
    "details_submitted": false,
    "email": null,
    "external_accounts": {
        "object": "list",
        "data": [],
        "has_more": false,
        "total_count": 0,
        "url": "/v1/accounts/acct_1IEKs6Q5kVIyiDKZ/external_accounts"
    },
    "login_links": {
        "object": "list",
        "total_count": 0,
        "has_more": false,
        "url": "/v1/accounts/acct_1IEKs6Q5kVIyiDKZ/login_links",
        "data": []
    },
    "metadata": {},
    "payouts_enabled": false,
    "requirements": {
        "current_deadline": null,
        "currently_due": [
            "business_type",
            "external_account",
            "tos_acceptance.date",
            "tos_acceptance.ip"
        ],
        "disabled_reason": "requirements.past_due",
        "errors": [],
        "eventually_due": [
            "business_type",
            "external_account",
            "tos_acceptance.date",
            "tos_acceptance.ip"
        ],
        "past_due": [
            "business_type",
            "external_account",
            "tos_acceptance.date",
            "tos_acceptance.ip"
        ],
        "pending_verification": []
    },
    "settings": {
        "bacs_debit_payments": {},
        "branding": {
            "icon": null,
            "logo": null,
            "primary_color": null,
            "secondary_color": null
        },
        "card_payments": {
            "decline_on": {
                "avs_failure": false,
                "cvc_failure": false
            },
            "statement_descriptor_prefix": null
        },
        "dashboard": {
            "display_name": "Some business LLC",
            "timezone": "Etc/UTC"
        },
        "payments": {
            "statement_descriptor": null,
            "statement_descriptor_kana": null,
            "statement_descriptor_kanji": null
        },
        "payouts": {
            "debit_negative_balances": false,
            "schedule": {
                "delay_days": 7,
                "interval": "daily"
            },
            "statement_descriptor": null
        },
        "sepa_debit_payments": {}
    },
    "tos_acceptance": {
        "date": null,
        "ip": null,
        "service_agreement": "recipient",
        "user_agent": null
    },
    "type": "express"
}

2. Got the onboarding link:

Request:

POST https://api.stripe.com/v1/accounts
x-www-form-urlencoded body:
account: acct_1IEKs6Q5kVIyiDKZ
refresh_url: https://example.com/reauth
return_url: https://example.com/return
type: account_onboarding

Response:

{
    "object": "account_link",
    "created": 1611780861,
    "expires_at": 1611781161,
    "url": "https://connect.stripe.com/express/onboarding/<some string>"
}

3. Went to the onboarding link

I got an error after pressing Next on the Tell us about your business section.

You cannot request any capability other than transfers for accounts that are under the recipient service agreement. For more information on recipient service agreements, see https://stripe.com/docs/connect/service-agreement-types#recipient.

enter image description here

Why does stripe think I'm requesting capabilities other than transfers?

question from:https://stackoverflow.com/questions/65927424/stripe-getting-you-cannot-request-any-capability-other-than-transfers-when

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Stripe got back to me:

The error is a bit cryptic but it is likely due to the way you configured Connect Onboarding in your settings in the Dashboard. This error happens because we try to request the card_payments capability for this account but it's not supported because you use the recipient agreement type. The reason we ask for that capability comes from the fact that you configured Connect to require that capability for European accounts. You can change this default behaviour in your dashboard settings in Test mode here: https://dashboard.stripe.com/test/settings/applications/express (and you would do the same for Live mode). With your flow you want only Transfers as a capability.

The suggestion worked:

Incorrect Settings: enter image description here

Correct Settings: enter image description here

It's strange because I used to be able to create accounts from these requests. So the settings must have changed at some point. But to my knowledge I never went and changed them.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...