Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/ruby
- require 'active_zuora'
- username=""
- password=""
- ActiveZuora.configure(
- :username => username,
- :password => password,
- :log => false,
- # :wsdl => 'https://www.zuora.com/apps/servlet/GenerateWsdl?version=77.0'
- :wsdl => 'https://dl.dropboxusercontent.com/u/1029223/zuora.a.77.0.wsdl'
- )
- ActiveZuora::Base.connection.soap_client.wsdl.endpoint.host = 'www.zuora.com'
- ActiveZuora.generate_classes
- class ActiveZuora::CreditBalanceAdjustment
- include ActiveZuora::Base
- self.namespace = 'http://object.api.zuora.com/'
- include ActiveZuora::ZObject
- field :account_id, :string
- field :adjustment_date, :date
- field :source_transaction_id, :string
- field :amount, :decimal
- field :comment, :string
- field :reason_code, :string
- field :created_date, :date
- field :type, :string
- end
- invoices = ActiveZuora::Invoice.select(:id, :status, :amount, :account_id, :invoice_date).where(:status => 'Posted', :amount => {'<' => 0}, :credit_balance_adjustment_amount => 0)
- invoices.each do |i|
- puts "Creating credit balance adjustment for invoice: #{i.id} - #{i.status} - #{i.amount}"
- cba = ActiveZuora::CreditBalanceAdjustment.new
- cba.source_transaction_id = i.id
- cba.amount = i.amount * -1
- cba.comment = "Automatic transfer of negative invoice to account credit balance"
- cba.reason_code = "Standard Adjustment"
- cba.type = "Increase"
- cba.save
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement