Sha256: d549915212d95478b195527f5b150f073084327678b75215adb20909adfb9ee8

Contents?: true

Size: 666 Bytes

Versions: 1

Compression:

Stored size: 666 Bytes

Contents

module Tang
  class UpdateCustomer
    def self.call(customer)
      if !customer.valid?
        return customer
      end

      if customer.stripe_id.present?
        begin
          c = Stripe::Customer.retrieve(customer.stripe_id)
          c.email = customer.email
          c.account_balance = customer.account_balance if customer.account_balance.present?
          c.business_vat_id = customer.business_vat_id if customer.business_vat_id.present?
          c.description = customer.description
          c.save
        rescue Stripe::StripeError => e
          customer.errors[:base] << e.message
        end
      end

      return customer
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tang-0.0.1 app/services/tang/update_customer.rb