xsuchy09/uctenkovka

用于连接 Uctenkovka API 的库(将 EET 发票发送到 Uctenkovka)。

v1.0.0 2019-02-14 14:00 UTC

This package is auto-updated.

Last update: 2024-09-15 02:06:28 UTC


README

用于与 Uctenkovka 通信(EET 捷克共和国发票竞赛)的 PHP 库。请参阅 Uctenkovka.cz。需要 PHP 7.1+。

作者

概述

Uctenkovka 库可以直接将发票发送到 Uctenkovka 比赛。

安装(通过 composer)

获取 composer 并将其添加到 composer.json 的 requires 部分

{
    "require": {
        "xsuchy09/uctenkovka": "*"
    }
}

然后

composer install

或者只需

composer require xsuchy09/uctenkovka

使用方法

您需要自己的证书才能与 Uctenkovka 通信。有关更多信息,请参阅 etrzby。在捷克语中,有两个重要的文件

此库涵盖规范,但您必须满足所有条件。

基本示例

您可以在本存储库中查看包含的测试。要运行这些测试,您需要与测试服务器通信的自己的证书(请参阅 条件,捷克语)。将您的 test_crt.pemtest_key.pem 保存到 /src/certs/ 文件夹中,然后您可以运行测试,这将生成 PhpUnit 覆盖报告(100%)。

如何将发票/请求发送到 Uctenkovka

use xsuchy09\Uctenkovka\Request;
use xsuchy09\Uctenkovka\Uctenkovka;

$request = new Request();
$request->setEmail('test@example.com')
	->setPhone('777777777')
	->setBasicConsent(true)
	->setFik('B3A09B52-7C87-4014')
	->setBkp('01234567-89abcdef')
	->setDate('2018-03-17')
	->setTime('16:41')
	->setAmount(4570) // in hellers
	->setSimpleMode(false);

$uctenkovka = new Uctenkovka();
$uctenkovka->setMode(Uctenkovka::MODE_TESTING);
$uctenkovka->setSslCert(__DIR__ . '/../src/certs/test_crt.pem');
$uctenkovka->setSslKey(__DIR__ . '/../src/certs/test_key.pem');
$uctenkovka->send($request);

您可以使用 \DateTime 对象一次性设置发票(请求)的日期和时间

$request->setDateTime(DateTime::createFromFormat('Y-m-d H:i:s', $date)); // seconds are optional

您可以将所有发票/请求值作为数组设置 - 不是 Request 构造函数的必需参数

use xsuchy09\Uctenkovka\Request;

$request = new Request([
    'email' => 'test@example.com',
    'phone' => '777777777',
    'basicConsent' => true,
    'fik' => 'B3A09B52-7C87-4014',
    'bkp' => '01234567-89abcdef',
    'date' => '2018-03-17',
    'time' => '16:41',
    'amount' => 4570,
    'simpleMode' => false
]);

更多示例可以在 /tests/ 目录中找到。

使用方法简单明了。如果您需要,可以 联系我