Class: Stripe::PaymentMethod
- Inherits:
-
APIResource
- Object
- StripeObject
- APIResource
- Stripe::PaymentMethod
- Extended by:
- APIOperations::Create, APIOperations::List
- Includes:
- APIOperations::Save
- Defined in:
- lib/stripe/resources/payment_method.rb
Overview
PaymentMethod objects represent your customer’s payment instruments. You can use them with [PaymentIntents](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](stripe.com/docs/payments/payment-methods) and [More Payment Scenarios](stripe.com/docs/payments/more-payment-scenarios).
Defined Under Namespace
Classes: AcssDebit, Affirm, AfterpayClearpay, Alipay, Alma, AmazonPay, AttachParams, AuBecsDebit, BacsDebit, Bancontact, Billie, BillingDetails, Blik, Boleto, Card, CardPresent, Cashapp, CreateParams, CustomerBalance, DetachParams, Eps, Fpx, Giropay, Gopay, Grabpay, IdBankTransfer, Ideal, InteracPresent, KakaoPay, Klarna, Konbini, KrCard, Link, ListParams, MbWay, Mobilepay, Multibanco, NaverPay, NzBankAccount, Oxxo, P24, PayByBank, Payco, Paynow, Paypal, Payto, Pix, Promptpay, Qris, RadarOptions, Rechnung, RevolutPay, SamsungPay, Satispay, SepaDebit, Shopeepay, Sofort, StripeBalance, Swish, Twint, UpdateParams, UsBankAccount, WechatPay, Zip
Constant Summary collapse
- OBJECT_NAME =
"payment_method"
Constants inherited from StripeObject
StripeObject::RESERVED_FIELD_NAMES
Instance Attribute Summary collapse
-
#acss_debit ⇒ Object
readonly
Attribute for field acss_debit.
-
#affirm ⇒ Object
readonly
Attribute for field affirm.
-
#afterpay_clearpay ⇒ Object
readonly
Attribute for field afterpay_clearpay.
-
#alipay ⇒ Object
readonly
Attribute for field alipay.
-
#allow_redisplay ⇒ Object
readonly
This field indicates whether this payment method can be shown again to its customer in a checkout flow.
-
#alma ⇒ Object
readonly
Attribute for field alma.
-
#amazon_pay ⇒ Object
readonly
Attribute for field amazon_pay.
-
#au_becs_debit ⇒ Object
readonly
Attribute for field au_becs_debit.
-
#bacs_debit ⇒ Object
readonly
Attribute for field bacs_debit.
-
#bancontact ⇒ Object
readonly
Attribute for field bancontact.
-
#billie ⇒ Object
readonly
Attribute for field billie.
-
#billing_details ⇒ Object
readonly
Attribute for field billing_details.
-
#blik ⇒ Object
readonly
Attribute for field blik.
-
#boleto ⇒ Object
readonly
Attribute for field boleto.
-
#card ⇒ Object
readonly
Attribute for field card.
-
#card_present ⇒ Object
readonly
Attribute for field card_present.
-
#cashapp ⇒ Object
readonly
Attribute for field cashapp.
-
#created ⇒ Object
readonly
Time at which the object was created.
-
#customer ⇒ Object
readonly
The ID of the Customer to which this PaymentMethod is saved.
-
#customer_account ⇒ Object
readonly
Attribute for field customer_account.
-
#customer_balance ⇒ Object
readonly
Attribute for field customer_balance.
-
#eps ⇒ Object
readonly
Attribute for field eps.
-
#fpx ⇒ Object
readonly
Attribute for field fpx.
-
#giropay ⇒ Object
readonly
Attribute for field giropay.
-
#gopay ⇒ Object
readonly
Attribute for field gopay.
-
#grabpay ⇒ Object
readonly
Attribute for field grabpay.
-
#id ⇒ Object
readonly
Unique identifier for the object.
-
#id_bank_transfer ⇒ Object
readonly
Attribute for field id_bank_transfer.
-
#ideal ⇒ Object
readonly
Attribute for field ideal.
-
#interac_present ⇒ Object
readonly
Attribute for field interac_present.
-
#kakao_pay ⇒ Object
readonly
Attribute for field kakao_pay.
-
#klarna ⇒ Object
readonly
Attribute for field klarna.
-
#konbini ⇒ Object
readonly
Attribute for field konbini.
-
#kr_card ⇒ Object
readonly
Attribute for field kr_card.
-
#link ⇒ Object
readonly
Attribute for field link.
-
#livemode ⇒ Object
readonly
Has the value ‘true` if the object exists in live mode or the value `false` if the object exists in test mode.
-
#mb_way ⇒ Object
readonly
Attribute for field mb_way.
-
#metadata ⇒ Object
readonly
Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to an object.
-
#mobilepay ⇒ Object
readonly
Attribute for field mobilepay.
-
#multibanco ⇒ Object
readonly
Attribute for field multibanco.
-
#naver_pay ⇒ Object
readonly
Attribute for field naver_pay.
-
#nz_bank_account ⇒ Object
readonly
Attribute for field nz_bank_account.
-
#object ⇒ Object
readonly
String representing the object’s type.
-
#oxxo ⇒ Object
readonly
Attribute for field oxxo.
-
#p24 ⇒ Object
readonly
Attribute for field p24.
-
#pay_by_bank ⇒ Object
readonly
Attribute for field pay_by_bank.
-
#payco ⇒ Object
readonly
Attribute for field payco.
-
#paynow ⇒ Object
readonly
Attribute for field paynow.
-
#paypal ⇒ Object
readonly
Attribute for field paypal.
-
#payto ⇒ Object
readonly
Attribute for field payto.
-
#pix ⇒ Object
readonly
Attribute for field pix.
-
#promptpay ⇒ Object
readonly
Attribute for field promptpay.
-
#qris ⇒ Object
readonly
Attribute for field qris.
-
#radar_options ⇒ Object
readonly
Options to configure Radar.
-
#rechnung ⇒ Object
readonly
Attribute for field rechnung.
-
#revolut_pay ⇒ Object
readonly
Attribute for field revolut_pay.
-
#samsung_pay ⇒ Object
readonly
Attribute for field samsung_pay.
-
#satispay ⇒ Object
readonly
Attribute for field satispay.
-
#sepa_debit ⇒ Object
readonly
Attribute for field sepa_debit.
-
#shopeepay ⇒ Object
readonly
Attribute for field shopeepay.
-
#sofort ⇒ Object
readonly
Attribute for field sofort.
-
#stripe_balance ⇒ Object
readonly
Attribute for field stripe_balance.
-
#swish ⇒ Object
readonly
Attribute for field swish.
-
#twint ⇒ Object
readonly
Attribute for field twint.
-
#type ⇒ Object
readonly
The type of the PaymentMethod.
-
#us_bank_account ⇒ Object
readonly
Attribute for field us_bank_account.
-
#wechat_pay ⇒ Object
readonly
Attribute for field wechat_pay.
-
#zip ⇒ Object
readonly
Attribute for field zip.
Attributes inherited from APIResource
Attributes inherited from StripeObject
Class Method Summary collapse
-
.attach(payment_method, params = {}, opts = {}) ⇒ Object
Attaches a PaymentMethod object to a Customer.
-
.create(params = {}, opts = {}) ⇒ Object
Creates a PaymentMethod object.
-
.detach(payment_method, params = {}, opts = {}) ⇒ Object
Detaches a PaymentMethod object from a Customer.
-
.list(params = {}, opts = {}) ⇒ Object
Returns a list of PaymentMethods for Treasury flows.
- .object_name ⇒ Object
-
.update(payment_method, params = {}, opts = {}) ⇒ Object
Updates a PaymentMethod object.
Instance Method Summary collapse
-
#attach(params = {}, opts = {}) ⇒ Object
Attaches a PaymentMethod object to a Customer.
-
#detach(params = {}, opts = {}) ⇒ Object
Detaches a PaymentMethod object from a Customer.
Methods included from APIOperations::Create
Methods included from APIOperations::List
Methods included from APIOperations::Save
Methods inherited from APIResource
class_name, custom_method, #refresh, #request_stripe_object, resource_url, #resource_url, retrieve, save_nested_resource
Methods included from APIOperations::Request
Methods inherited from StripeObject
#==, #[], #[]=, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values
Constructor Details
This class inherits a constructor from Stripe::StripeObject
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Stripe::StripeObject
Instance Attribute Details
#acss_debit ⇒ Object (readonly)
Attribute for field acss_debit
1629 1630 1631 |
# File 'lib/stripe/resources/payment_method.rb', line 1629 def acss_debit @acss_debit end |
#affirm ⇒ Object (readonly)
Attribute for field affirm
1631 1632 1633 |
# File 'lib/stripe/resources/payment_method.rb', line 1631 def affirm @affirm end |
#afterpay_clearpay ⇒ Object (readonly)
Attribute for field afterpay_clearpay
1633 1634 1635 |
# File 'lib/stripe/resources/payment_method.rb', line 1633 def afterpay_clearpay @afterpay_clearpay end |
#alipay ⇒ Object (readonly)
Attribute for field alipay
1635 1636 1637 |
# File 'lib/stripe/resources/payment_method.rb', line 1635 def alipay @alipay end |
#allow_redisplay ⇒ Object (readonly)
This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to “unspecified”.
1637 1638 1639 |
# File 'lib/stripe/resources/payment_method.rb', line 1637 def allow_redisplay @allow_redisplay end |
#alma ⇒ Object (readonly)
Attribute for field alma
1639 1640 1641 |
# File 'lib/stripe/resources/payment_method.rb', line 1639 def alma @alma end |
#amazon_pay ⇒ Object (readonly)
Attribute for field amazon_pay
1641 1642 1643 |
# File 'lib/stripe/resources/payment_method.rb', line 1641 def amazon_pay @amazon_pay end |
#au_becs_debit ⇒ Object (readonly)
Attribute for field au_becs_debit
1643 1644 1645 |
# File 'lib/stripe/resources/payment_method.rb', line 1643 def au_becs_debit @au_becs_debit end |
#bacs_debit ⇒ Object (readonly)
Attribute for field bacs_debit
1645 1646 1647 |
# File 'lib/stripe/resources/payment_method.rb', line 1645 def bacs_debit @bacs_debit end |
#bancontact ⇒ Object (readonly)
Attribute for field bancontact
1647 1648 1649 |
# File 'lib/stripe/resources/payment_method.rb', line 1647 def bancontact @bancontact end |
#billie ⇒ Object (readonly)
Attribute for field billie
1649 1650 1651 |
# File 'lib/stripe/resources/payment_method.rb', line 1649 def billie @billie end |
#billing_details ⇒ Object (readonly)
Attribute for field billing_details
1651 1652 1653 |
# File 'lib/stripe/resources/payment_method.rb', line 1651 def billing_details @billing_details end |
#blik ⇒ Object (readonly)
Attribute for field blik
1653 1654 1655 |
# File 'lib/stripe/resources/payment_method.rb', line 1653 def blik @blik end |
#boleto ⇒ Object (readonly)
Attribute for field boleto
1655 1656 1657 |
# File 'lib/stripe/resources/payment_method.rb', line 1655 def boleto @boleto end |
#card ⇒ Object (readonly)
Attribute for field card
1657 1658 1659 |
# File 'lib/stripe/resources/payment_method.rb', line 1657 def card @card end |
#card_present ⇒ Object (readonly)
Attribute for field card_present
1659 1660 1661 |
# File 'lib/stripe/resources/payment_method.rb', line 1659 def card_present @card_present end |
#cashapp ⇒ Object (readonly)
Attribute for field cashapp
1661 1662 1663 |
# File 'lib/stripe/resources/payment_method.rb', line 1661 def cashapp @cashapp end |
#created ⇒ Object (readonly)
Time at which the object was created. Measured in seconds since the Unix epoch.
1663 1664 1665 |
# File 'lib/stripe/resources/payment_method.rb', line 1663 def created @created end |
#customer ⇒ Object (readonly)
The ID of the Customer to which this PaymentMethod is saved. This will not be set when the PaymentMethod has not been saved to a Customer.
1665 1666 1667 |
# File 'lib/stripe/resources/payment_method.rb', line 1665 def customer @customer end |
#customer_account ⇒ Object (readonly)
Attribute for field customer_account
1667 1668 1669 |
# File 'lib/stripe/resources/payment_method.rb', line 1667 def customer_account @customer_account end |
#customer_balance ⇒ Object (readonly)
Attribute for field customer_balance
1669 1670 1671 |
# File 'lib/stripe/resources/payment_method.rb', line 1669 def customer_balance @customer_balance end |
#eps ⇒ Object (readonly)
Attribute for field eps
1671 1672 1673 |
# File 'lib/stripe/resources/payment_method.rb', line 1671 def eps @eps end |
#fpx ⇒ Object (readonly)
Attribute for field fpx
1673 1674 1675 |
# File 'lib/stripe/resources/payment_method.rb', line 1673 def fpx @fpx end |
#giropay ⇒ Object (readonly)
Attribute for field giropay
1675 1676 1677 |
# File 'lib/stripe/resources/payment_method.rb', line 1675 def giropay @giropay end |
#gopay ⇒ Object (readonly)
Attribute for field gopay
1677 1678 1679 |
# File 'lib/stripe/resources/payment_method.rb', line 1677 def gopay @gopay end |
#grabpay ⇒ Object (readonly)
Attribute for field grabpay
1679 1680 1681 |
# File 'lib/stripe/resources/payment_method.rb', line 1679 def grabpay @grabpay end |
#id ⇒ Object (readonly)
Unique identifier for the object.
1681 1682 1683 |
# File 'lib/stripe/resources/payment_method.rb', line 1681 def id @id end |
#id_bank_transfer ⇒ Object (readonly)
Attribute for field id_bank_transfer
1683 1684 1685 |
# File 'lib/stripe/resources/payment_method.rb', line 1683 def id_bank_transfer @id_bank_transfer end |
#ideal ⇒ Object (readonly)
Attribute for field ideal
1685 1686 1687 |
# File 'lib/stripe/resources/payment_method.rb', line 1685 def ideal @ideal end |
#interac_present ⇒ Object (readonly)
Attribute for field interac_present
1687 1688 1689 |
# File 'lib/stripe/resources/payment_method.rb', line 1687 def interac_present @interac_present end |
#kakao_pay ⇒ Object (readonly)
Attribute for field kakao_pay
1689 1690 1691 |
# File 'lib/stripe/resources/payment_method.rb', line 1689 def kakao_pay @kakao_pay end |
#klarna ⇒ Object (readonly)
Attribute for field klarna
1691 1692 1693 |
# File 'lib/stripe/resources/payment_method.rb', line 1691 def klarna @klarna end |
#konbini ⇒ Object (readonly)
Attribute for field konbini
1693 1694 1695 |
# File 'lib/stripe/resources/payment_method.rb', line 1693 def konbini @konbini end |
#kr_card ⇒ Object (readonly)
Attribute for field kr_card
1695 1696 1697 |
# File 'lib/stripe/resources/payment_method.rb', line 1695 def kr_card @kr_card end |
#link ⇒ Object (readonly)
Attribute for field link
1697 1698 1699 |
# File 'lib/stripe/resources/payment_method.rb', line 1697 def link @link end |
#livemode ⇒ Object (readonly)
Has the value ‘true` if the object exists in live mode or the value `false` if the object exists in test mode.
1699 1700 1701 |
# File 'lib/stripe/resources/payment_method.rb', line 1699 def livemode @livemode end |
#mb_way ⇒ Object (readonly)
Attribute for field mb_way
1701 1702 1703 |
# File 'lib/stripe/resources/payment_method.rb', line 1701 def mb_way @mb_way end |
#metadata ⇒ Object (readonly)
Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
1703 1704 1705 |
# File 'lib/stripe/resources/payment_method.rb', line 1703 def @metadata end |
#mobilepay ⇒ Object (readonly)
Attribute for field mobilepay
1705 1706 1707 |
# File 'lib/stripe/resources/payment_method.rb', line 1705 def mobilepay @mobilepay end |
#multibanco ⇒ Object (readonly)
Attribute for field multibanco
1707 1708 1709 |
# File 'lib/stripe/resources/payment_method.rb', line 1707 def multibanco @multibanco end |
#naver_pay ⇒ Object (readonly)
Attribute for field naver_pay
1709 1710 1711 |
# File 'lib/stripe/resources/payment_method.rb', line 1709 def naver_pay @naver_pay end |
#nz_bank_account ⇒ Object (readonly)
Attribute for field nz_bank_account
1711 1712 1713 |
# File 'lib/stripe/resources/payment_method.rb', line 1711 def nz_bank_account @nz_bank_account end |
#object ⇒ Object (readonly)
String representing the object’s type. Objects of the same type share the same value.
1713 1714 1715 |
# File 'lib/stripe/resources/payment_method.rb', line 1713 def object @object end |
#oxxo ⇒ Object (readonly)
Attribute for field oxxo
1715 1716 1717 |
# File 'lib/stripe/resources/payment_method.rb', line 1715 def oxxo @oxxo end |
#p24 ⇒ Object (readonly)
Attribute for field p24
1717 1718 1719 |
# File 'lib/stripe/resources/payment_method.rb', line 1717 def p24 @p24 end |
#pay_by_bank ⇒ Object (readonly)
Attribute for field pay_by_bank
1719 1720 1721 |
# File 'lib/stripe/resources/payment_method.rb', line 1719 def pay_by_bank @pay_by_bank end |
#payco ⇒ Object (readonly)
Attribute for field payco
1721 1722 1723 |
# File 'lib/stripe/resources/payment_method.rb', line 1721 def payco @payco end |
#paynow ⇒ Object (readonly)
Attribute for field paynow
1723 1724 1725 |
# File 'lib/stripe/resources/payment_method.rb', line 1723 def paynow @paynow end |
#paypal ⇒ Object (readonly)
Attribute for field paypal
1725 1726 1727 |
# File 'lib/stripe/resources/payment_method.rb', line 1725 def paypal @paypal end |
#payto ⇒ Object (readonly)
Attribute for field payto
1727 1728 1729 |
# File 'lib/stripe/resources/payment_method.rb', line 1727 def payto @payto end |
#pix ⇒ Object (readonly)
Attribute for field pix
1729 1730 1731 |
# File 'lib/stripe/resources/payment_method.rb', line 1729 def pix @pix end |
#promptpay ⇒ Object (readonly)
Attribute for field promptpay
1731 1732 1733 |
# File 'lib/stripe/resources/payment_method.rb', line 1731 def promptpay @promptpay end |
#qris ⇒ Object (readonly)
Attribute for field qris
1733 1734 1735 |
# File 'lib/stripe/resources/payment_method.rb', line 1733 def qris @qris end |
#radar_options ⇒ Object (readonly)
Options to configure Radar. See [Radar Session](stripe.com/docs/radar/radar-session) for more information.
1735 1736 1737 |
# File 'lib/stripe/resources/payment_method.rb', line 1735 def @radar_options end |
#rechnung ⇒ Object (readonly)
Attribute for field rechnung
1737 1738 1739 |
# File 'lib/stripe/resources/payment_method.rb', line 1737 def rechnung @rechnung end |
#revolut_pay ⇒ Object (readonly)
Attribute for field revolut_pay
1739 1740 1741 |
# File 'lib/stripe/resources/payment_method.rb', line 1739 def revolut_pay @revolut_pay end |
#samsung_pay ⇒ Object (readonly)
Attribute for field samsung_pay
1741 1742 1743 |
# File 'lib/stripe/resources/payment_method.rb', line 1741 def samsung_pay @samsung_pay end |
#satispay ⇒ Object (readonly)
Attribute for field satispay
1743 1744 1745 |
# File 'lib/stripe/resources/payment_method.rb', line 1743 def satispay @satispay end |
#sepa_debit ⇒ Object (readonly)
Attribute for field sepa_debit
1745 1746 1747 |
# File 'lib/stripe/resources/payment_method.rb', line 1745 def sepa_debit @sepa_debit end |
#shopeepay ⇒ Object (readonly)
Attribute for field shopeepay
1747 1748 1749 |
# File 'lib/stripe/resources/payment_method.rb', line 1747 def shopeepay @shopeepay end |
#sofort ⇒ Object (readonly)
Attribute for field sofort
1749 1750 1751 |
# File 'lib/stripe/resources/payment_method.rb', line 1749 def sofort @sofort end |
#stripe_balance ⇒ Object (readonly)
Attribute for field stripe_balance
1751 1752 1753 |
# File 'lib/stripe/resources/payment_method.rb', line 1751 def stripe_balance @stripe_balance end |
#swish ⇒ Object (readonly)
Attribute for field swish
1753 1754 1755 |
# File 'lib/stripe/resources/payment_method.rb', line 1753 def swish @swish end |
#twint ⇒ Object (readonly)
Attribute for field twint
1755 1756 1757 |
# File 'lib/stripe/resources/payment_method.rb', line 1755 def twint @twint end |
#type ⇒ Object (readonly)
The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
1757 1758 1759 |
# File 'lib/stripe/resources/payment_method.rb', line 1757 def type @type end |
#us_bank_account ⇒ Object (readonly)
Attribute for field us_bank_account
1759 1760 1761 |
# File 'lib/stripe/resources/payment_method.rb', line 1759 def us_bank_account @us_bank_account end |
#wechat_pay ⇒ Object (readonly)
Attribute for field wechat_pay
1761 1762 1763 |
# File 'lib/stripe/resources/payment_method.rb', line 1761 def wechat_pay @wechat_pay end |
#zip ⇒ Object (readonly)
Attribute for field zip
1763 1764 1765 |
# File 'lib/stripe/resources/payment_method.rb', line 1763 def zip @zip end |
Class Method Details
.attach(payment_method, params = {}, opts = {}) ⇒ Object
Attaches a PaymentMethod object to a Customer.
To attach a new PaymentMethod to a customer for future payments, we recommend you use a [SetupIntent](stripe.com/docs/api/setup_intents) or a PaymentIntent with [setup_future_usage](stripe.com/docs/api/payment_intents/create#create_payment_intent-setup_future_usage). These approaches will perform any necessary steps to set up the PaymentMethod for future payments. Using the /v1/payment_methods/:id/attach endpoint without first using a SetupIntent or PaymentIntent with setup_future_usage does not optimize the PaymentMethod for future use, which makes later declines and payment friction more likely. See [Optimizing cards for future payments](stripe.com/docs/payments/payment-intents#future-usage) for more information about setting up future payments.
To use this PaymentMethod as the default for invoice or subscription payments, set [invoice_settings.default_payment_method](stripe.com/docs/api/customers/update#update_customer-invoice_settings-default_payment_method), on the Customer to the PaymentMethod’s ID.
1800 1801 1802 1803 1804 1805 1806 1807 |
# File 'lib/stripe/resources/payment_method.rb', line 1800 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 |
.create(params = {}, opts = {}) ⇒ Object
Creates a PaymentMethod object. Read the [Stripe.js reference](stripe.com/docs/stripe-js/reference#stripe-create-payment-method) to learn how to create PaymentMethods via Stripe.js.
Instead of creating a PaymentMethod directly, we recommend using the [PaymentIntents API to accept a payment immediately or the <a href=“/docs/payments/save-and-reuse”>SetupIntent](stripe.com/docs/payments/accept-a-payment) API to collect payment method details ahead of a future payment.
1812 1813 1814 |
# File 'lib/stripe/resources/payment_method.rb', line 1812 def self.create(params = {}, opts = {}) request_stripe_object(method: :post, path: "/v1/payment_methods", params: params, opts: opts) end |
.detach(payment_method, params = {}, opts = {}) ⇒ Object
Detaches a PaymentMethod object from a Customer. After a PaymentMethod is detached, it can no longer be used for a payment or re-attached to a Customer.
1827 1828 1829 1830 1831 1832 1833 1834 |
# File 'lib/stripe/resources/payment_method.rb', line 1827 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 |
.list(params = {}, opts = {}) ⇒ Object
Returns a list of PaymentMethods for Treasury flows. If you want to list the PaymentMethods attached to a Customer for payments, you should use the [List a Customer’s PaymentMethods](stripe.com/docs/api/payment_methods/customer_list) API instead.
1837 1838 1839 |
# File 'lib/stripe/resources/payment_method.rb', line 1837 def self.list(params = {}, opts = {}) request_stripe_object(method: :get, path: "/v1/payment_methods", params: params, opts: opts) end |
.object_name ⇒ Object
16 17 18 |
# File 'lib/stripe/resources/payment_method.rb', line 16 def self.object_name "payment_method" end |
.update(payment_method, params = {}, opts = {}) ⇒ Object
Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated.
1842 1843 1844 1845 1846 1847 1848 1849 |
# File 'lib/stripe/resources/payment_method.rb', line 1842 def self.update(payment_method, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/payment_methods/%<payment_method>s", { payment_method: CGI.escape(payment_method) }), params: params, opts: opts ) end |
Instance Method Details
#attach(params = {}, opts = {}) ⇒ Object
Attaches a PaymentMethod object to a Customer.
To attach a new PaymentMethod to a customer for future payments, we recommend you use a [SetupIntent](stripe.com/docs/api/setup_intents) or a PaymentIntent with [setup_future_usage](stripe.com/docs/api/payment_intents/create#create_payment_intent-setup_future_usage). These approaches will perform any necessary steps to set up the PaymentMethod for future payments. Using the /v1/payment_methods/:id/attach endpoint without first using a SetupIntent or PaymentIntent with setup_future_usage does not optimize the PaymentMethod for future use, which makes later declines and payment friction more likely. See [Optimizing cards for future payments](stripe.com/docs/payments/payment-intents#future-usage) for more information about setting up future payments.
To use this PaymentMethod as the default for invoice or subscription payments, set [invoice_settings.default_payment_method](stripe.com/docs/api/customers/update#update_customer-invoice_settings-default_payment_method), on the Customer to the PaymentMethod’s ID.
1778 1779 1780 1781 1782 1783 1784 1785 |
# File 'lib/stripe/resources/payment_method.rb', line 1778 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 |
#detach(params = {}, opts = {}) ⇒ Object
Detaches a PaymentMethod object from a Customer. After a PaymentMethod is detached, it can no longer be used for a payment or re-attached to a Customer.
1817 1818 1819 1820 1821 1822 1823 1824 |
# File 'lib/stripe/resources/payment_method.rb', line 1817 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 |