Sha256: b26fb39db9e81d7bc7ec999940630ce5f806bc4df2743c2f4b30e8ebd8acaa95

Contents?: true

Size: 799 Bytes

Versions: 2

Compression:

Stored size: 799 Bytes

Contents

# frozen_string_literal: true

module Stripe
  class ApplicationFee < APIResource
    extend Stripe::APIOperations::List
    extend Stripe::APIOperations::NestedResource

    OBJECT_NAME = "application_fee".freeze

    nested_resource_class_methods :refund, operations: %i[create retrieve update list]

    def self.resource_url
      "/v1/application_fees"
    end

    # If you don't need access to an updated fee object after the refund, it's
    # more performant to just call `fee.refunds.create` directly.
    def refund(params = {}, opts = {})
      refunds.create(params, opts)

      # now that a refund has been created, we expect the state of this object
      # to change as well (i.e. `refunded` will now be `true`) so refresh it
      # from the server
      refresh
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
stripe-3.17.0 lib/stripe/application_fee.rb
stripe-3.15.0 lib/stripe/application_fee.rb