Sha256: 786a6a91dc5e66efa33170e0d8e2f3f0fdd32914ba4f7b7194f9665aa55a28db

Contents?: true

Size: 1.81 KB

Versions: 59

Compression:

Stored size: 1.81 KB

Contents

# File generated from our OpenAPI spec
# frozen_string_literal: true

module Stripe
  # PaymentMethod objects represent your customer's payment instruments.
  # You can use them with [PaymentIntents](https://stripe.com/docs/payments/payment-intents) to collect payments or save them to
  # Customer objects to store instrument details for future payments.
  #
  # Related guides: [Payment Methods](https://stripe.com/docs/payments/payment-methods) and [More Payment Scenarios](https://stripe.com/docs/payments/more-payment-scenarios).
  class PaymentMethod < APIResource
    extend Stripe::APIOperations::Create
    extend Stripe::APIOperations::List
    include Stripe::APIOperations::Save

    OBJECT_NAME = "payment_method"

    def attach(params = {}, opts = {})
      request_stripe_object(
        method: :post,
        path: format("/v1/payment_methods/%<payment_method>s/attach", { payment_method: CGI.escape(self["id"]) }),
        params: params,
        opts: opts
      )
    end

    def detach(params = {}, opts = {})
      request_stripe_object(
        method: :post,
        path: format("/v1/payment_methods/%<payment_method>s/detach", { payment_method: CGI.escape(self["id"]) }),
        params: params,
        opts: opts
      )
    end

    def self.attach(payment_method, params = {}, opts = {})
      request_stripe_object(
        method: :post,
        path: format("/v1/payment_methods/%<payment_method>s/attach", { payment_method: CGI.escape(payment_method) }),
        params: params,
        opts: opts
      )
    end

    def self.detach(payment_method, params = {}, opts = {})
      request_stripe_object(
        method: :post,
        path: format("/v1/payment_methods/%<payment_method>s/detach", { payment_method: CGI.escape(payment_method) }),
        params: params,
        opts: opts
      )
    end
  end
end

Version data entries

59 entries across 59 versions & 1 rubygems

Version Path
stripe-10.5.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-10.4.0 lib/stripe/resources/payment_method.rb
stripe-10.4.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-10.3.0 lib/stripe/resources/payment_method.rb
stripe-10.3.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-10.2.0 lib/stripe/resources/payment_method.rb
stripe-10.2.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-10.1.0 lib/stripe/resources/payment_method.rb
stripe-10.1.0.pre.beta.2 lib/stripe/resources/payment_method.rb
stripe-10.1.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-10.0.0 lib/stripe/resources/payment_method.rb
stripe-9.5.0.pre.beta.2 lib/stripe/resources/payment_method.rb
stripe-9.5.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-9.4.0 lib/stripe/resources/payment_method.rb
stripe-9.4.0.pre.beta.3 lib/stripe/resources/payment_method.rb
stripe-9.4.0.pre.beta.2 lib/stripe/resources/payment_method.rb
stripe-9.4.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-9.3.0 lib/stripe/resources/payment_method.rb
stripe-9.3.0.pre.beta.1 lib/stripe/resources/payment_method.rb
stripe-9.2.0 lib/stripe/resources/payment_method.rb