parthenon / transaction-cloud
一个PHP库,用于提供与transaction.cloud的集成
v0.2
2022-09-30 16:58 UTC
Requires
- php: ^7.4 || ^8.0
- brick/money: ^0.6.0
- php-http/client-common: ^2.5
- php-http/discovery: ^1.14
- psr/http-client: ^1.0
- psr/http-message: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.11
- nyholm/psr7: ^1.5
- php-http/guzzle7-adapter: ^1.0
- phpunit/phpunit: ^9.5
README
这是一个库,用于提供对Transaction.cloud支付提供商系统的集成。
Transaction.cloud是一个分销支付提供商。它作为记录商家的角色,而不是你自己。这意味着他们处理所有实际销售所需的全部法律文件,你只需拿到钱,无需所有烦恼。
入门指南
composer require parthenon/transaction-cloud symfony/http-client nyholm/psr7
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); // and if you want to use the sandbox $transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password", true);
示例
获取管理交易的URL
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $url = $transactionCloud->getUrlToManageTransactions("iain.cambridge@example.org");
获取管理仪表板的URL
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $url = $transactionCloud->getUrlToAdmin();
通过电子邮件检索交易
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $transactions = $transactionCloud->getTransactionsByEmail("iain.cambridge@example.org"); /** @var $transaction \TransactionCloud\Model\Transaction **/ foreach ($transactions as $transaction) { // Do something with transaction }
通过交易ID检索交易
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $transaction = $transactionCloud->getTransactionById("TC-TR_xxyyxxx"); // do something with transaction.
通过交易ID分配电子邮件地址
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $success = $transactionCloud->assignTransactionToEmail("TC-TR_xxyyxxx", "new.iain@example.org");
取消订阅
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $success = $transactionCloud->cancelSubscription("TC-TR_xxyyxxx");
退款交易
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $refundData = $transactionCloud->refundTransaction("TC-TR_xxyyxxx");
检索状态更改的交易
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $transactions = $transactionCloud->fetchChangedTransactions(); /** @var $transaction \TransactionCloud\Model\ChangedTransaction **/ foreach ($transactions as $transaction) { // Do something with transaction }
将交易标记为已处理
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $success = $transactionCloud->markTransactionAsProcessed("TC-TR_xxyyxxx");
按需自定义产品
$price = \Brick\Money::of("100", "USD"); $product = new \TransactionCloud\Model\Product(); $product->setPrices([$price]); $product->setDescription("Custom product"); $product->setPayload("Payload"); $product->settTansactionIdToMigrate("TC-PR_kdljfdskl"); $transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $productData = $transacloudCloud->customizeProduct("TC-PR_kdjfde", $product); // $productData instanceof \TransactionCloud\Model\ProductData
获取产品的支付URL
$transactionCloud = new \TransactionCloud\TransactionCloud::create("api_key", "api_key_password"); $url = $transactionCloud->getPaymentUrlForProduct("TC-TR_3jsd94");
常见问题解答
这是免费使用的吗?
是的。这个库是完全开源的,并且可以无限制地免费使用。
我可以获得哪些支持?
你可以在本存储库中创建一个问题,我们将能够提供支持。
这是官方SDK吗?
不是,但我们确实与Transaction.Cloud有合作关系。
为什么我应该使用Transaction.Cloud而不是Paddle?
它更便宜。4.9%对5%。虽然不多,但都会累积。
他们在支持方面也非常响应。我们可以在几小时内得到答案。