https://github.com/astrotechlabs/pay2m-sdk
Uma abstração a API do Pay2M V1 para facilitar o uso dos serviços.
https://github.com/astrotechlabs/pay2m-sdk
api api-rest integration library pay2m pay2m-api php pix
Last synced: about 1 month ago
JSON representation
Uma abstração a API do Pay2M V1 para facilitar o uso dos serviços.
- Host: GitHub
- URL: https://github.com/astrotechlabs/pay2m-sdk
- Owner: AstrotechLabs
- License: mit
- Created: 2024-05-13T14:44:42.000Z (about 2 years ago)
- Default Branch: beta
- Last Pushed: 2024-05-14T14:47:13.000Z (about 2 years ago)
- Last Synced: 2025-02-12T23:29:00.176Z (over 1 year ago)
- Topics: api, api-rest, integration, library, pay2m, pay2m-api, php, pix
- Language: PHP
- Homepage:
- Size: 62.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Pay2M SDK para PHP
Este é um repositório que possui uma abstração a API da Pay2M, facilitando a criação de PIX Copia e Cola.
## Installation
A forma mais recomendada de instalar este pacote é através do [composer](http://getcomposer.org/download/).
Para instalar, basta executar o comando abaixo
```bash
$ php composer.phar require astrotechlabs/pay2m-sdk
```
ou adicionar esse linha
```
"astrotechlabs/pay2m-sdk": "^1.1"
```
na seção `require` do seu arquivo `composer.json`.
## Como Usar?
### Minimo para utilização
#### Criar uma cobrança
```php
use AstrotechLabs\Pay2MSdk\Pay2MGateway;
use AstrotechLabs\Pay2MSdk\Pay2MGatewayParams;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\PixData;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\GeneratorData;
// Crie uma instância de Pay2MGateway utilizando como parâmetros o seu ClientId e sua ClientSecret que podem ser adquiridos em seu painel PAY2M
$createPixChargeGateway = new Pay2MGateway(new Pay2MGatewayParams($_ENV['CLIENT_ID'], $_ENV['CLIENT_SECRET']));
// Chame o método createCharge() para criar uma cobrança, este método gera o token de autenticação e cria a cobrança na Pay2M
$response = $createPixChargeGateway->createCharge(new PixData(
generator: new GeneratorData(
name: 'Dev Teste', // STRING | Deve ser o mesmo nome que está na sua conta Pay2M
document: '###########' // STRING | Deve ser o mesmo documento da sua conta Pay2M
),
value: 1, // FLOAT | Valor mínimo 1;
));
print_r($response);
```
#### Saída
```php
[
"gatewayId" => "D77A2489850C4C2F93942BAFEDB419EC697",
"copyPasteUrl" => "00020101021226860014br.gov.bcb.pix256.........99",
"details" => [
"reference_code" => "D77A2489850C4C2F93942BAF......",
"content" => "00020101021226860014br.gov.bcb.pix2........99"
],
"qrCode" => "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATEAAAExCAIAAACbBwI/A......v1AwD/IZOQRSYhi0xCFpmELDIJWWQSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLPzd...............QSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLv+XfD4wqDsUhAAAAAElFTkSuQmCC"
];
```
### Alternativa
#### Criar uma cobrança com autênticação manual
```php
use AstrotechLabs\Pay2MSdk\Pay2MGateway;
use AstrotechLabs\Pay2MSdk\Pay2MGatewayParams;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\PixData;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\GeneratorData;
// Crie uma instância de Pay2MGateway utilizando como parâmetros o seu ClientId e sua ClientSecret que podem ser adquiridos em seu painel PAY2M
$createPixChargeGateway = new Pay2MGateway(new Pay2MGatewayParams($_ENV['CLIENT_ID'], $_ENV['CLIENT_SECRET']));
// Gere o token manualmente e armazene-o
$token = $createPixChargeGateway->getAuthToken();
// Chame o método createCharge() para criar uma cobrança e passe o parâmetro token
$response = $createPixChargeGateway->createCharge(new PixData(
generator: new GeneratorData(
name: 'Dev Teste', // STRING | Deve ser o mesmo nome que está na sua conta Pay2M
document: '###########', // STRING | Deve ser o mesmo documento da sua conta Pay2M
manualToken: true, // BOOL | O parâmetro como true irá cobrar o token e utilizará o mesmo para gerar a cobrança
token: $token // STRING | Deve ser o token gerado pelo metodo getAuthToken() da classe Pay2MGateway
),
value: 1, // FLOAT | Valor mínimo 1;
));
print_r($response);
```
#### Saída
```php
[
"gatewayId" => "D77A2489850C4C2F93942BAFEDB419EC697",
"copyPasteUrl" => "00020101021226860014br.gov.bcb.pix256.........99",
"details" => [
"reference_code" => "D77A2489850C4C2F93942BAF......",
"content" => "00020101021226860014br.gov.bcb.pix2........99"
],
"qrCode" => "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATEAAAExCAIAAACbBwI/A......v1AwD/IZOQRSYhi0xCFpmELDIJWWQSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLPzd...............QSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLv+XfD4wqDsUhAAAAAElFTkSuQmCC"
];
```
## Contributing
Pull Request são bem-vindas. Para mudanças importantes, abra primeiro uma issue para discutir o que você gostaria de mudar.
Certifique-se de atualizar os testes conforme apropriado.
## Licence
Este pacote é lançado sob a licença [MIT](https://choosealicense.com/licenses/mit/). Consulte o pacote [LICENSE](./LICENSE) para obter detalhes.