okitcom/ok-lib-php

OK LIB API 的 PHP 客户端

1.6.3 2018-03-21 10:08 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:31:20 UTC


README

Build Status

OK LIB 客户端

这是 OK lib API 的 PHP 客户端实现。兼容 PHP 5.5+,需要 cURL PHP 库。

功能

PHP 库实现了四个 OK 服务:Open、Cash、Ticket 和 OKTicket。

用法

使用 OKWORKS 凭据从 OK\Service 实例化一个服务

示例

设置

首先创建必要的凭据。

$credentials = new OK\Credentials\CashCredentials(PUBLICKEY, PRIVATEKEY, new ProductionEnvironment())

然后,初始化服务。

$cash = new OK\Service\Cash($credentials)

现在,我们可以使用构建器向 OK API 发送请求

// Create a transaction with one line item
$request = (new TransactionBuilder())
            ->setAmount(Amount::fromCents(1000))
            ->setReference("internal reference")
            ->addLineItem(
                (new LineItemBuilder())
                    ->setAmount(Amount::fromEuro(10.00))
                    ->setVat(0)
                    ->setCurrency("EUR")
                    ->setQuantity(1)
                    ->setDescription("Awesome product")
                    ->setProductCode("SKU-AWESOME")
                    ->build()
            )
            ->build();
            
$cash->request($request);

OK Open

进行授权请求

// Set up credentials
$credentials = new OK\Credentials\OpenCredentials(PUBLICKEY, PRIVATEKEY, new ProductionEnvironment());
$open = new OK\Service\Open($credentials)
  
$request = (new AuthorisationRequestBuilder())
            ->setAction("Login")
            ->setReference("reference")
            ->setPermissions("NewPendingTrigger")
            ->setLocation(
                (new LocationBuilder())
                    ->setLat(1.2345)
                    ->setLon(5.1231)
                    ->build()
            )
            ->addAttribute(
                (new AttributeBuilder())
                ->setType(Attribute::TYPE_NAME)
                ->setKey("name")
                ->setLabel("Name")
                ->setRequired(true)
                ->build()
            )
            ->build();
              
// Submit the request
$response = $open->request($request);

测试

该软件包包含 PHPUnit 测试。为了运行测试,请将凭据包含在环境变量中。以下凭据存在

KEY_OPEN
KEY_CASH
KEY_TICKET