karlsen-technologies/gocardless-php

用于使用 GoCardless API 的非官方 PHP 包

1.0.0 2023-10-02 13:17 UTC

This package is auto-updated.

Last update: 2024-10-01 00:20:41 UTC


README

这是一个用于 GoCardless 银行账户数据 API 的非官方 PHP 库的GoCardless Bank Account Data API

它提供了与官方 API 相同的端点和参数,请查看端点的完整列表 这里

需求

  • PHP: 8.2 或更高版本

安装

您可以使用 composer 安装此库

composer require karlsen-technologies/gocardless-php

使用方法

为了使用此库,您首先需要设置一个应用程序,并从 GoCardless 控制台 获取您的凭据。

创建客户端

use KarlsenTechnologies\GoCardless\DataObjects\Api\Credentials;
use KarlsenTechnologies\GoCardless\Client;

$credentials = new Credentials('secret_id', 'secret_key');
$client = new Client($credentials);

使用客户端

请参阅官方的 API 文档 以获得端点和它们的参数的更详细解释。

use KarlsenTechnologies\GoCardless\Client;

$client = new Client(...);

$client->getInstitutions();
$client->getInstitutions('COUNTRY');
$client->getInstitution('INSTITUTION_ID');

$client->getAgreements(); // Default limit of 100, offset of 0
$client->getAgreements(100, 10);  // Limit of 100, offset of 10
$client->getAgreement('AGREEMENT_ID');
$client->createAgreement('INSTIUTION_ID', 90, 90, ['SCOPES']);
$client->deleteAgreement('AGREEMENT_ID');
$client->acceptAgreement('AGREEMENT_ID', 'GoCardless-PHP', '127.0.0.1');

$client->getRequisitions(); // Default limit of 100, offset of 0
$client->getRequisitions(100, 10);  // Limit of 100, offset of 10
$client->getRequisition('REQUISITION_ID');
$client->createRequisition('https://', 'INSTIUTION_ID', 'AGREEMENT_ID', 'REFRENCE', 'LANGUAGE', 'SSN', true, true);
$client->deleteRequisition('REQUISITION_ID');

$client->getAccount('ACCOUNT_ID');
$client->getAccountBalances('ACCOUNT_ID'); 
$client->getAccountDetails('ACCOUNT_ID');
$client->getAccountTransactions('ACCOUNT_ID', 'FROM_DATE', 'TO_DATE');

获取和设置访问令牌和刷新令牌

如果您想获取和设置认证令牌,可以这样做。如果您想缓存令牌并重复使用它们,以便每次使用 API 都无需认证,这将很有用。

注意:目前,当您尝试使用 API 时,库会自动进行认证。目前没有方法强制库在不使用 API 的情况下进行认证。

use KarlsenTechnologies\GoCardless\DataObjects\Api\Tokens;

$client = new Client(...);

$tokens = $client->getTokens();

$newTokens = new Tokens('access_token', 3600, 'refresh_token', 86400);

$client->setTokens($newTokens);

测试

使用以下命令运行测试

composer test

许可证

此库采用 MIT 许可证 许可。