eonx-com / eoneopay-phpsdk
v1.0.8
2019-12-05 03:27 UTC
Requires
- php: >=7.1
- ext-json: *
- eonx-com/sdkblueprint: ^1.0
- eonx-com/utils: ^1.0
- symfony/validator: ^4.2
Requires (Dev)
- eonx-com/standards: ^0.2
- friendsofphp/php-cs-fixer: ^2.9
- indigophp/doctrine-annotation-autoload: ^0.1.0
- laravel/lumen-framework: ^5.5
- phpmd/phpmd: ^2.6
- phpstan/phpstan: ^0.11
- phpstan/phpstan-phpunit: ^0.11
- phpstan/phpstan-strict-rules: ^0.11
- phpunit/phpunit: ^7.0
- roave/security-advisories: dev-master
- sebastian/phpcpd: ^4.0
- squizlabs/php_codesniffer: 3.*
- vlucas/phpdotenv: ^3.3
Suggests
- laravel/framework: ^5.5
- laravel/lumen-framework: ^5.5
- sensiolabs/security-checker: Check project's dependencies for known vulnerabilities
- vlucas/phpdotenv: When using the lumen bridge, phpdotenv is required
- dev-master
- v1.0.8
- v1.0.7
- v1.0.6
- v1.0.5
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
- v1.0.0-RC7
- v1.0.0-RC6
- v1.0.0-RC5
- v1.0.0-RC4
- v1.0.0-RC3
- v1.0.0-RC2
- v1.0.0-RC1
- v1.0.0-beta17
- v1.0.0-beta16
- v1.0.0-beta15
- v1.0.0-beta14
- v1.0.0-beta13
- v1.0.0-beta12
- v1.0.0-beta11
- v1.0.0-beta10
- v1.0.0-beta9
- v1.0.0-beta8
- v1.0.0-beta7
- v1.0.0-beta6
- v1.0.0-beta5
- v1.0.0-beta4
- v1.0.0-beta3
- v1.0.0-beta2
- v1.0.0-beta1
- dev-bugfix/PYMT-1594-add-credit-card-cvc
- dev-bugfix/PYMT-1594-missing-cvc
- dev-feature/fix-amount-missing-fees
- dev-development
- dev-feature/fix-token-missing-calculate-fees
- dev-feature/transaction-allocation-fix-tests
- dev-feature/transaction-allocation-allow-null
- dev-feature/PYMT-1424-float-loc-controller
- dev-fix/PYMT-1052-optional-approved-property
This package is auto-updated.
Last update: 2019-12-09 01:03:54 UTC
README
交易
可以通过状态属性确定交易状态。存在交易可能被批准或完成但稍后撤销的情况。状态属性是确定交易实际状态的唯一方法。以下表格列出了状态字段每个值的含义。
值 | 状态 | 描述 |
---|---|---|
1 | 挂起 | 已收到请求,等待处理 |
2 | 处理中 | 请求正在处理 |
10 | 临时批准 | 可能被撤销,但资金可能在清算后可用 |
11 | 批准 | 资金将在清算后可用 |
90 | 失败/撤销/拒绝 | 资金无法转账,不可用 |
80 | 最终确定/清算 | 资金已转入目的地,可用 |
开发
主要仓库: https://github.com/loyaltycorp/eoneopay-phpsdk
添加实体
实体是 SDK 在以 JSON 形式发送到支付之前暴露的类类型,以及响应反序列化到的类类型。
实体位于 src/Endpoints
目录下,在 EoneoPay\PhpSdk\Endpoints
命名空间中。
URI
URI 列出了可以对给定实体执行的可接受操作。这些可以通过在实体实例上调用 uris()
方法以编程方式访问。
实体序列化 / @Groups
@Groups
注解表示在以 JSON 发送之前将要序列化的字段。注解使用 Symfony\Component\Serializer\Annotation\Groups
。
在以下示例中,$actionUrl
会在发送到支付进行 create
和 update
调用时序列化,但 $amount
只会在初始 create
调用中发送。
use Symfony\Component\Serializer\Annotation\Groups; trait SecurityTrait { /** * @Groups({"create", "update"}) */ protected $actionUrl; /** * @Groups({"create"}) */ protected $amount;
可以在与 @Assert
注解相同的字段上使用 @Groups
注解。
实体反序列化 / 验证
验证应用于支付返回的 JSON 响应,以确保返回的字段有效。
在以下示例中,$id
必须是字符串,不能为空。 $ewallet
必须反序列化为有效的 Ewallet 类型对象。
注意,使用 @var
注解来发现 $ewallet
内容应该反序列化为的实体类型。
use Symfony\Component\Validator\Constraints as Assert; trait EwalletFundingTrait { /** * @Assert\NotNull() * @Assert\Type(type="\EoneoPay\PhpSdk\Endpoints\Ewallet") * @var \EoneoPay\PhpSdk\Endpoints\Ewallet|null */ protected $ewallet; /** * @Assert\NotNull() * @Assert\Type(type="string") * @var string|null */ protected $id;