首页 > 解决方案 > 调用未定义的方法 Cartalyst\Stripe\Api\Account::createPerson()

问题描述

我正在使用以下语法创建一个带有 Laravel 的 Stripe 帐户:

$making_account = $stripe->account()->create(
    [
    'type' => 'custom',
    'country' => 'au',
    'account_token' => $request[0],
    'requested_capabilities' => [
        'card_payments',
        'transfers',
      ]
    ]
);

上面的代码运行良好并显示了预期的结果。但是,当我针对该帐户创建人员时,它给了我以下错误:

local.ERROR: Call to undefined method Cartalyst\Stripe\Api\Account::createPerson()

我关注的文档如下: https ://stripe.com/docs/connect/account-tokens

转到 Persons.php 后,我发现没有名为 的函数createPerson()。Stripe 文档中没有提到针对任何帐户创建人员的 Laravel 语法。任何人都知道在 Laravel 中创建帐户后如何在 Stripe 中创建一个人?

标签: laravelstripe-payments

解决方案


重要的是要注意 Stripe 的官方 PHP SDK 与任何可能扩展 Stripe 包或提供自己独特交互方式的第三方库之间的区别。

Stripe 有一个他们提供的官方 PHP SDK来与 Stripe API 交互。Stripe 的 API 文档中的 PHP 示例假设您正在使用此 SDK。如果你不是,你应该检查你正在使用的包,看看调用是否遵循相同的模式,或者有不同的实现。

您正在使用的包Cartalyst/Stripe不使用此 SDK,因此可能需要一组不同的调用来实现相同的功能

虽然它没有明确记录,但我认为Cartalyst 包中的等效 API 可能是:

$stripe->account()->persons()->create(/* ... */);

推荐阅读