PHPackages                             piggly/php-pix-app - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. piggly/php-pix-app

ActiveProject[Payment Processing](/categories/payments)

piggly/php-pix-app
==================

Um projeto simples de uma aplicação para gerar os pix para pagamento de forma mais rápida e prática.

1.0.0(5y ago)7426MITPHPPHP ^7.4

Since Feb 11Pushed 5y agoCompare

[ Source](https://github.com/piggly-dev/php-pix-app)[ Packagist](https://packagist.org/packages/piggly/php-pix-app)[ RSS](/packages/piggly-php-pix-app/feed)WikiDiscussions master Synced 5d ago

READMEChangelogDependencies (3)Versions (2)Used By (0)

Gere códigos Pix de um jeito fácil, rápido e prático
====================================================

[](#gere-códigos-pix-de-um-jeito-fácil-rápido-e-prático)

[![Latest Version on Packagist](https://camo.githubusercontent.com/36ad2cd89783b2cb6dda6b9c5703af33be53828df670070ab63d767ec551c464/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f706967676c792f7068702d7069782d6170702e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/piggly/php-pix-app) [![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE)

Com a chegada do Pix muitas lojas físicas começaram a se adaptar ao novo movimento. Mas, ainda tem um problema: *é complicado gerar um Pix*. Alguns de nossos clientes, por exemplo, precisam que vários colaboradores diferentes gerem um Pix. Mas, claro, nem todos eles podem acessar o app do banco para gerar um pix.

Esse projeto surge para resolver esse problema. Ele é uma micro interface que gera códigos Pix em **QR Code** e no formato **Pix Copia &amp; Cola**. Veja como ela funciona:

> Se você apreciar a função desta aplicação e quiser apoiar este trabalho, sinta-se livre para fazer qualquer doação para a chave aleatória Pix `aae2196f-5f93-46e4-89e6-73bf4138427b` ❤.

Sobre a aplicação
-----------------

[](#sobre-a-aplicação)

1. O usuário abre a plataforma a partir de um domínio `https://pix.empresa.com.br` e insere seu usuário/ senha;
2. Ele é direcionado para uma interface para selecionar a Conta Pix e preencher os dados como: valor da compra, ID da transação e descrição;
3. Ao clicar no botão "Gerar Pix" uma nova interface exibe o **QR Code** que pode ser escaneado por outro aparelho ou um **Pix Copia &amp; Cola** para compartilhar via internet.

Legal, não? O intuito aqui é ser simples. Por essa razão, não utilizamos frameworks disponíveis ou bancos de dados. Os usuários e as contas Pix são armazenados em `/app/config/users.php` e `/app/config/accounts.php` respectivamente.

### Quando devo utilizá-la?

[](#quando-devo-utilizá-la)

- Se você quer gerar códigos Pix de uma maneira simples, fácil e rápido;
- Você quer que terceiros gerem um código Pix para você;
- Você não quer ficar entrando no app do Banco (e fazer um processo chato) o tempo todo para gerar novos Pix;
- Se você quer gerar os Pix sem plataformas/apis de terceiros que poderão cobrar taxas por isso.
- Se você quer começar a vender com Pix de um jeito simples, fácil e rápido.

### Quais são os requisitos mínimos?

[](#quais-são-os-requisitos-mínimos)

Você precisa ter um servidor Web como o **Apache** ou **Nginx**. Uma versão do **PHP 7.4** ou superior.

### Não sei como instalar/configurar, o que eu faço?

[](#não-sei-como-instalarconfigurar-o-que-eu-faço)

Entre em contato com a gente pelo e-mail  que iremos fazer o possível para ajudar você a implementar essa aplicação.

### Os usuários da aplicação

[](#os-usuários-da-aplicação)

Só existe uma razão para nossa aplicação ter usuários: *previnir acesso deliberado*. As informações da aplicação não são sensíveis. São extremamente simples e utilizadas apenas para gerar os códigos Pix. Por essa razão o sistema de login e usuários é tão simples quanto. Apenas uma `array` com uma lista de usuários/senhas.

### As contas Pix da aplicação

[](#as-contas-pix-da-aplicação)

Também representam uma `array` com todas as contas cadastradas, que poderão ser selecionadas durante a geração dos códigos Pix. Nada demais e, novamente, não são informações sensíveis, logo não há com o que se preocupar.

### Como aumentar a segurança?

[](#como-aumentar-a-segurança)

Neste caso, recomendando que crie as suas contas Pix na aplicação com as chaves aleatórias. Assim, você não expõe qualquer dado "sensível" como: e-mail, telefone, CPF ou CNPJ.

Sobre o Pix
-----------

[](#sobre-o-pix)

O **Pix** é o mais novo método de pagamento eletrônico criado pelo **Banco Central do Brasil**. Você encontra todos os detalhes na [página oficial](https://www.bcb.gov.br/estabilidadefinanceira/pix) do Pix.

Para implementá-lo nesta aplicação, utilizamos a nossa própria biblioteca [piggly-dev/php-pix](https://github.com/piggly-dev/php-pix). Caso você tenha problemas com a sua Chave Pix, como:

- **QR Code** inválido;
- **Pix Copia &amp; Cola** inválido.

Sugerimos que você abra uma `issue` em nossa biblioteca pix, [clicando aqui](https://github.com/piggly-dev/php-pix/issues) (lembre-se de seguir as instruções ao criar uma issue). Assim organizamos melhor a funcionalidade de cada uma das coisas.

Instalação
----------

[](#instalação)

Essa aplicação pode ser criada via **Composer** utilizando o seguinte comando `composer create-project piggly/php-pix-app pix`.

Se você prefir você também pode clonar esse repositório com o comando `git clone https://github.com/piggly-dev/php-pix-app.git` ou fazer o download da última versão [clicando aqui](https://github.com/piggly-dev/php-pix-app/archive/master.zip).

### Instalação guiada

[](#instalação-guiada)

Para facilitar a configuração desta aplicação. Habilitamos alguns comandos que ajudarão você a configurá-la. Para isso, você precisa ter acesso ao `terminal` da sua máquina. Futuramente iremos implementar uma interface para essas configurações, mas por hora isso basta.

Vá para a pasta raiz da aplicação e execute o comando `php bin/console app:install`. Basta seguir todas as orientações na tela. Abaixo, a listagem de todos os comandos disponíveis:

- `php bin/console app:install` Realiza todas as configurações iniciais do app.
- `php bin/console user:change` Muda a senha do usuário.
- `php bin/console user:create` Cria um novo usuário.
- `php bin/console user:delete` Remove um usuário.
- `php bin/console user:list` Lista todos os usuários.
- `php bin/console account:create` Cria uma nova conta Pix.
- `php bin/console account:delete` Remove uma conta Pix.
- `php bin/console account:list` Lista todas as contas Pix.

### Instalação manual

[](#instalação-manual)

Se você preferir ou não tiver acesso ao `terminal` da sua máquina, poderá fazer as configurações manualmente. Primeiro vá para `/app` e abra o arquivo `.env`. Nele, configure as seguintes variáveis:

- `DOMAIN` escreva o domínio incluindo http(s). Por exemplo: `https://pix.piggly.lab`;
- `HTTPS` escreva `true` se estiver usando https e `false` quando não;
- `SITE_NAME` escreva (entre aspas) o nome para a aplicação. Por exemplo: `"Pix por Piggly"`;
- `SESSION_NAME` escreva (sem espaços) o nome para a sessão da aplicação. Por exemplo: `pix_piggly_lab`;
- `SECRET_KEY` crie uma chave aleatória com 32 caracteres ou mais e coloque aqui. Por exemplo: `"XnPvo6Wu3RAAP6i72poT0FH0pIXjWwCwOSA9Taenbs4="`;
- `BOOTSTRAP_CDN` escreva `true` se deseja utilizar o CDN do Bootstrap e `false` se não. Recomendamos `false` quando o acesso for interno (dentro de uma empresa), eles podem bloquear domínios desconhecidos e o `.css` externo não irá funcionar; Quando não for o caso, utilize `true` a política de cache será mais eficiente.

Depois, é a hora de configurar os usuário no arquivo `/app/config/users.php`, basta seguir o formato:

```
