class Facturapi::Client

Public Class Methods

call(method, params = {}) click to toggle source
# File lib/facturapi/client.rb, line 6
def call(method, params = {})
  params[:login] ||= login
  client.call(method, message: params)
end
client() click to toggle source
# File lib/facturapi/client.rb, line 17
def client
  @client ||= Savon.client(
    wsdl: 'http://ws1.facturacion.cl/WSDS/wsplano.asmx?wsdl'
  )
end
operations() click to toggle source
# File lib/facturapi/client.rb, line 23
def operations
  client.operations
end
xml(method, params = {}) click to toggle source
# File lib/facturapi/client.rb, line 11
def xml(method, params = {})
  ops = client.operation(method)
  params[:login] ||= login
  Nokogiri::XML(ops.build(message: params).to_s).to_s
end

Private Class Methods

login() click to toggle source
# File lib/facturapi/client.rb, line 29
def login
  @login ||= {
    'Usuario' => Facturapi.config.fact_user,
    'Rut' => Facturapi.config.fact_rut,
    'Clave' => Facturapi.config.fact_password,
    'Puerto' => Facturapi.config.fact_port
  }
end