Skip to content

rfbezerra/cielo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

<img src=“” />

<img src=“codeclimate.com/github/crafters/cielo/badges/gpa.svg” />

Integração com a Cielo via WebServices [Buy Page Cielo / Buy Page Loja ]

  • Criação de transação

  • Consulta de stauts de transação

  • Captura de transação

  • Cancelamento de transação

gem install cielo
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
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.

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 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.

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
  • 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

  • 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.

Copyright © 2011 Crafters Software Studio. See LICENSE.txt for further details.

About

Gem para integração com os WebServices da Cielo

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%