Class: MoIP::DirectPayment
- Inherits:
-
Object
- Object
- MoIP::DirectPayment
- Defined in:
- lib/direct_payment.rb
Class Method Summary collapse
-
.body(attributes = {}) ⇒ Object
Cria uma instrução de pagamento direto.
Class Method Details
.body(attributes = {}) ⇒ Object
Cria uma instrução de pagamento direto
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
# File 'lib/direct_payment.rb', line 9 def body(attributes = {}) builder = Nokogiri::XML::Builder.new(:encoding => "UTF-8") do |xml| # Identificador do tipo de instrução xml.EnviarInstrucao { xml.InstrucaoUnica { # Dados da transação xml.Razao { xml.text "Pagamento" } xml.Valores { xml.Valor(:moeda => "BRL") { xml.text attributes[:valor] } } xml.IdProprio { xml.text attributes[:id_proprio] } # Definindo o pagamento direto xml.PagamentoDireto { xml.Forma { xml.text attributes[:forma] } # Débito Bancário if attributes[:forma] == "DebitoBancario" xml.Instituicao { xml.text attributes[:instituicao] } end # Cartão de Crédito if attributes[:forma] == "CartaoCredito" xml.Instituicao { xml.text attributes[:instituicao] } xml.CartaoCredito { xml.Numero { xml.text attributes[:numero] } xml.Expiracao { xml.text attributes[:expiracao] } xml.CodigoSeguranca { xml.text attributes[:codigo_seguranca] } xml.Portador { xml.Nome { xml.text attributes[:nome] } xml.Identidade(:Tipo => "CPF") { xml.text attributes[:identidade] } xml.Telefone { xml.text attributes[:telefone] } xml.DataNascimento { xml.text attributes[:data_nascimento] } } } xml.Parcelamento { xml.Parcelas { xml.text attributes[:parcelas] } xml.Recebimento { xml.text attributes[:recebimento] } } end } # Dados do pagador raise(StandardError, "É obrigatório passar as informações do pagador") if attributes[:pagador].nil? xml.Pagador { xml.Nome { xml.text attributes[:pagador][:nome] } xml.LoginMoIP { xml.text attributes[:pagador][:login_moip] } xml.Email { xml.text attributes[:pagador][:email] } xml.TelefoneCelular { xml.text attributes[:pagador][:tel_cel] } xml.Apelido { xml.text attributes[:pagador][:apelido] } xml.Identidade { xml.text attributes[:pagador][:identidade] } xml.EnderecoCobranca { xml.Logradouro { xml.text attributes[:pagador][:logradouro] } xml.Numero { xml.text attributes[:pagador][:numero] } xml.Complemento { xml.text attributes[:pagador][:complemento] } xml.Bairro { xml.text attributes[:pagador][:bairro] } xml.Cidade { xml.text attributes[:pagador][:cidade] } xml.Estado { xml.text attributes[:pagador][:estado] } xml.Pais { xml.text attributes[:pagador][:pais] } xml.CEP { xml.text attributes[:pagador][:cep] } xml.TelefoneFixo { xml.text attributes[:pagador][:tel_fixo] } } } # Boleto Bancario if attributes[:forma] == "BoletoBancario" # Dados extras xml.Boleto { xml.DiasExpiracao(:Tipo => "Corridos") { xml.text attributes[:dias_expiracao] } xml.Instrucao1 { xml.text attributes[:instrucao_1] } xml.URLLogo { xml.text attributes[:url_logo] } } end } } end builder.to_xml end |