cielo¶ ↑
<img src=“https://secure.travis-ci.org/crafters/cielo.png” />
<img src=“https://codeclimate.com/github/crafters/cielo/badges/gpa.svg” />
Integração com a Cielo via WebServices [Buy Page Cielo / Buy Page Loja ]
Funcionalidades Implementadas¶ ↑
-
Criação de transação
-
Consulta de stauts de transação
-
Captura de transação
-
Cancelamento de transação
USO¶ ↑
gem install cielo
Ambiente de teste (Homologação)¶ ↑
Buy Page Loja¶ ↑
transaction = Cielo::Transaction.new transaction_parameters = { numero: "XXX", valor: "123123", moeda: "986", bandeira: 'visa', 'url-retorno' => 'http://url.retorno', cartao_numero: '4012001037141112', cartao_validade: '201805', cartao_seguranca: '123', cartao_portador: 'Lorem Ipsum Dolor' } transaction.create!(transaction_parameters, :store) #inicia uma nova transação transaction.verify!("TID OF THE TRANSACTION") #verifica o status de uma transação transaction.catch!("TID OF THE TRANSACTION") #captura a transação transaction.cancel!("TID OF THE TRANSACTION") #cancela a transação
Buy Page Loja com token¶ ↑
token_request = Cielo::Token.new token_parameters = { cartao_numero: '4012888888881881', cartao_validade: '201508', cartao_portador: 'Nome portador' } } response = token_request.create! token_parameters, :store # O token pode ser armazenado no banco, será sempre igual para o cartão em questão token = response[:"retorno-token"][:token][:"dados-token"][:"codigo-token"] transaction = Cielo::Transaction.new transaction_parameters = { numero: "XXX", valor: "123123", moeda: "986", bandeira: 'visa', parcelas: 2, token: token, # Esse token substitui o cartão de crédito autorizar: 3 # Quando a transação usa token, a tag 'autorizar' precisa ser 3 ou 4 } transaction.create!(transaction_parameters, :store) #inicia uma nova transação
Caso seja necessário fazer uma transação recorrente, basta alterar a tag autorizar para 4.
Uma transação com um o campo gerar-token“: true, gera um token correspondente que pode ser armazenado para transações futuras.
Buy Page Cielo¶ ↑
transaction = Cielo::Transaction.new transaction_parameters = { numero: "XXX", valor: "123123", moeda: "986", bandeira: 'visa', 'url-retorno' => 'http://url.retorno', } transaction.create!(transaction_parameters, :cielo) #inicia uma nova transação / :cielo é padrão transaction.verify!("TID OF THE TRANSACTION") #verifica o status de uma transação transaction.catch!("TID OF THE TRANSACTION") #captura a transação transaction.cancel!("TID OF THE TRANSACTION") #captura a transação
Rails¶ ↑
rails g cielo:install
Esse comando vai gerar um arquivo config/initializers/cielo.rb que já vem configurado para o ambiente de testes, para produção garanta que os dados estão corretos.
Outras plataformas¶ ↑
Se torna necessário somente configurar o módulo Cielo
Cielo.setup do |config| config.environment = :test #:production config.numero_afiliacao = "XXX" # fornecido pela cielo config.chave_acesso = "XXX" # fornecido pela cielo config.return_path = "http://path/to" # URL para onde a cielo redirecionara seu usuário após inserir os dados na cielo. end
Avisos¶ ↑
-
O retorno da cielo é convertido em um hash, então, atributos no xml como url-retorno ficam :“url-retorno”, cuidado com esses detalhes.
-
Gem testada em versões do ruby 2.0.0, 2.1.8, 2.2.4 e 2.3
-
Para usar em versões anteriores do Ruby, use versões da gem anteriores a 1.0
Contributing to cielo¶ ↑
-
Check out the latest master to make sure the feature hasn’t been implemented or the bug hasn’t been fixed yet
-
Check out the issue tracker to make sure someone already hasn’t requested it and/or contributed it
-
Fork the project
-
Start a feature/bugfix branch
-
Commit and push until you are happy with your contribution
-
Make sure to add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
Colaboradores¶ ↑
-
Antônio Roberto Silva [ github.com/devton , twitter.com/dev_ton ]
-
Felipe Rodrigues [ github.com/felipero , twitter.com/felipero ]
-
Rafael Felix [ github.com/fellix , twitter.com/rs_felix ]
-
Gabriel Paladino and Scupen [github.com/gabpaladino , github.com/scupen] (Ruby 1.8.7 support)
-
Wilbert Ribeiro [github.com/wilbert/cielo, twitter.com/wilbertribeiro ]
-
Elton Okada [github.com/eltonokada, twitter.com/eltonokada ]
-
Alex Buschle [github.com/alexwbuschle, twitter.com/alexwbuschle ]
Copyright¶ ↑
Copyright © 2011 Crafters Software Studio. See LICENSE.txt for further details.