Sha256: 3654cdc04eabc0c838f11420ccc2135014cbaa779c02eb6d3ac3b030791202ad
Contents?: true
Size: 1.93 KB
Versions: 9
Compression:
Stored size: 1.93 KB
Contents
# InterApi Wrapper de integração com a API v2 do Banco Inter. ### Funcionalidades: - Autenticação - Pagamento Pix: get, create, update, refund ## Instalação Adicionar inter_api no Gemfile: ```ruby gem 'inter_api' ``` ou ```shell bundle add inter_api ``` Instalar a gem: ```shell bin/rails generate inter_api:install ``` ## Uso ### Exemplo #### Criar Pagamento PIX ```ruby # Instanciar o API client api_client = InterApi::Client.new(crt: "./certificado_api_inter.crt", key: "./chave_api_inter.key", client_id: "123456", client_secret: "abcde", chave_pix: "1011121314", conta_corrente: "9876", scopes: "cobv.write cobv.read cob.write cob.read pix.write pix.read") # Ao instanciar o objeto, cria um access_token e/ou valida a partir da data de expiração # Criar um pagamento payment = api_client.create_payment(amount: 50.00, payer_tax_id: "123.123.123-01", payer_name: "João da Silva", expiration: 3600, solicitacao_pagador: "Compra de produto", info_adicionais: [ nome: "Produto", valor: "Produto 1"]) # retorna um objeto <InterApi::Payment> puts payment.txid # "123123" puts payment.status # "ATIVA" # Obter um pagamento a partir do id payment = api_client.get_payment(payment.txid) # retorna um objeto <InterApi::Payment> puts payment.txid # "123123" puts payment.status # "ATIVA" # Atualizar um pagamento body = { status: "REMOVIDA_PELO_USUARIO_RECEBEDOR" } api_client.update(payment.txid, body) # retorna o objeto <InterApi::Payment> atualizado puts payment.status # "REMOVIDA_PELO_USUARIO_RECEBEDOR" ``` #### Métodos do Pagamento ```ruby payment.valid? # true ou false payment.paid? # true ou false payment.qr_code # retorna o source do SVG payment.reload! # retorna payment atualizado payment.invalidate! # invalida e retorna o payment atualizado # Reebolso de pagamento reembolso = payment.refund(amount: 50.00, refund_nature: "ORIGINAL", description: "Reembolso") # retorna o JSON da resposta reembolso["status"] # "EM_PROCESSAMENTO" ```
Version data entries
9 entries across 9 versions & 1 rubygems