Integração com Bcash (antigo Pagamento Digital)
Você pode criar um item e, como no Rails, verificar se ele é válido:
item = Bcash::Item.new(id: 1, description: 'teste', amount: 2, price: 30.0)
item.valid?
Você pode criar quantos itens forem necessários para enviar ao Bcash:
items = []
items << Bcash::Item.new(id: 1, description: 'teste', amount: 2, price: 30.0)
Com os itens criados, crie um pacote para o envio:
package = Bcash::Package.create(items)
No pacote você pode alterar o valor do frete e o tipo de integração com o Bcash:
Bcash::Package.create(items, 30.0, Bcash::PAD)
Crie um pagamento:
payment = Bcash::Payment.new(package, email_loja: '[email protected]')
Podemos colocar nas opções uma url de retorno para a qual o Bcash irá redirecionar o usuário após finalizar o pagamento:
Bcash::Payment.new(package, email_loja: '[email protected]', url_retorno: 'http://meu-site.com.br')
Você pode encontrar todas as opções na página do Bcash para desenvolvedores, buscando por "campos opcionais".
Tendo o objeto do pagamento, você pode gerar o formulário pronto para envio:
payment.html
Você também pode alterar o input de envio para a maneira que desejar:
payment.html { submit_tag('button', 'Pagar!') }
Se você utilizou a opção de url de retorno, você pode capturar o POST enviado pelo Bcash:
notification = Bcash::Notification(params)
notification.id_transacao
Você pode visualizar todos os parâmetros na página do Bcash para desenvolvedores.
Você pode visualizar as transações e consultar o status do seu pedido. Para isso obtenha a chave de acesso da seguinte maneira:
Logue em sua conta no site do Bcash -> Ferramentas -> Sua chave acesso
Com a chave de acesso, podemos utilizar a classe transação de duas maneiras:
transaction = Bcash::Transaction.new(email, token, id_transacao, id_pedido)
transaction.get
Ou
transaction = Bcash::Transaction.new
transaction.email = '[email protected]'
transaction.token = '1234567890'
transaction.id_transaction = '123'
transaction.id_order = '1234'
transaction.get
Agora você tem todos os parâmetros para consulta:
transaction.id_transacao
transaction.status
Você pode ver todos HTTP code e parâmetros de retorno no manual de transação.
Adicione ao seu Gemfile:
gem 'bcash'
E execute:
$ bundle
- Fork
- Crie seu branch (
git checkout -b my-new-feature
) - Commit suas mudanças (
git commit -am 'Add some feature'
) - Envie o branch (
git push origin my-new-feature
) - Rode os testes
- Crie um novo Pull Request