Class: SunatInvoice::InvoiceClient
- Inherits:
-
Client
- Object
- Client
- SunatInvoice::InvoiceClient
show all
- Defined in:
- lib/sunat_invoice/clients/invoice_client.rb
Instance Method Summary
collapse
Methods inherited from Client
#initialize
Instance Method Details
#dev_server ⇒ Object
13
14
15
|
# File 'lib/sunat_invoice/clients/invoice_client.rb', line 13
def dev_server
'https://e-beta.sunat.gob.pe/ol-ti-itcpfegem-beta/billService?wsdl'
end
|
#dispatch(document) ⇒ Object
28
29
30
31
32
33
34
35
36
|
# File 'lib/sunat_invoice/clients/invoice_client.rb', line 28
def dispatch(document)
xml_build = document.xml
name = document.document_name
operation = document.operation
zip = prepare_zip(xml_build, "#{name}.xml")
@soap_client.call(operation,
message: { fileName: "#{name}.zip", contentFile: zip })
end
|
#get_status(ticket) ⇒ Object
38
39
40
|
# File 'lib/sunat_invoice/clients/invoice_client.rb', line 38
def get_status(ticket)
@soap_client.call(:get_status, message: { ticket: ticket })
end
|
#prepare_zip(invoice, name) ⇒ Object
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/sunat_invoice/clients/invoice_client.rb', line 17
def prepare_zip(invoice, name)
zip_file = Zip::OutputStream.write_buffer do |zip|
zip.put_next_entry name
zip.write invoice
end
zip_file.rewind
encode(zip_file.sysread)
end
|
#prod_server ⇒ Object
9
10
11
|
# File 'lib/sunat_invoice/clients/invoice_client.rb', line 9
def prod_server
'https://e-factura.sunat.gob.pe/ol-ti-itcpfegem/billService?wsdl'
end
|
#wsdl ⇒ Object
5
6
7
|
# File 'lib/sunat_invoice/clients/invoice_client.rb', line 5
def wsdl
send("#{@env}_server")
end
|