edgarsingui/proxypay

一个简单的包,用于简化与proxypay的集成

0.1.0 2022-01-14 13:30 UTC

This package is auto-updated.

Last update: 2024-09-14 19:20:24 UTC


README

这是一个简单的PHP包,用于通过proxypay生成支付

安装

如果您想安装此包,请执行以下命令

composer require edgarsingui/proxypay

简介

此SDK/包由4个简单方法组成,分别是

  1. generateReferenceId() - 负责生成/随机生成参考编号
  2. createPayment() - 负责在proxypay面板上创建参考
  3. allPayments() - 负责列出所有支付
  4. confirmPayment() - 支付完成后,我们需要处理它们,如果我们想手动处理,可以使用此方法

使用方法

我们需要实例化'ProxyPay'类并传递两个参数,分别是

  1. apikey -> 当proxypay提供sandbox或prd账户时获取的api密钥
  2. baseUrl -> proxypay的Base EndPoint,存在prd和sandbox的EndPoint

让我们开始吧。

require __DIR__.'/vendor/autoload.php';
use Singui\Proxypay;

$proxypay = new ProxyPay('SUA_CHAVE_DE_API');

请注意,我们没有传递第二个参数,因为第二个是可选的,如果没有插入,则默认使用prd的EndPoint。

实例化类后,我们可以使用现有方法。

$proxypay->generateReferenceId(); //Este apenas retorna um conjunto de 9 números

如果我们想生成一个支付参考,我们将使用以下函数

$proxypay->createPayment("4999.99","2022-01-15");

请注意,"createPayment()"函数接收两个参数,第一个是参考值,第二个是参考应该过期的日期,它还接收第三个参数,即支付后应调用的回调url,但它也是可选的。

如果我们想查看已完成的支付但尚未处理的支付,我们将使用我们的第三个方法

$proxypay()->allPayments();

这将返回一个包含所有已支付但尚未处理的参考数据的JSON,以下是一个示例。

[
  {
    "amount": "322.00",
    "custom_fields": {},
    "datetime": "2022-01-14T01:39:55Z",
    "entity_id": 99926,
    "fee": null,
    "id": 698200000089,
    "parameter_id": null,
    "period_end_datetime": "2022-01-14T19:00:00Z",
    "period_id": 6982,
    "period_start_datetime": "2022-01-13T19:00:00Z",
    "product_id": 1,
    "reference_id": 370313748,
    "terminal_id": "0000000001",
    "terminal_location": "LUANDA",
    "terminal_period_id": 1,
    "terminal_transaction_id": 1,
    "terminal_type": "ATM",
    "transaction_id": 89
  }
]

现在让我们处理这笔支付,我们始终需要处理支付,要处理这笔支付,我们将使用我们的最后一个方法。

$proxypay()->confirmPayment("698200000089");

此方法接收一个参数,即支付id,请注意,这不是参考,而是在此参考中完成的支付id,我们可以在上面的JSON中找到此id。