Class: Stripe::PaymentMethod

Inherits:
APIResource show all
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](docs.stripe.com/payments/payment-intents) to collect payments or save them to Customer objects to store instrument details for future payments.

Related guides: [Payment Methods](docs.stripe.com/payments/payment-methods) and [More Payment Scenarios](docs.stripe.com/payments/more-payment-scenarios).

Defined Under Namespace

Classes: AcssDebit, Affirm, AfterpayClearpay, Alipay, Alma, AmazonPay, AuBecsDebit, BacsDebit, Bancontact, Billie, BillingDetails, Blik, Boleto, Card, CardPresent, Cashapp, Crypto, Custom, CustomerBalance, Eps, Fpx, Giropay, Gopay, Grabpay, IdBankTransfer, Ideal, InteracPresent, KakaoPay, Klarna, Konbini, KrCard, Link, MbWay, Mobilepay, Multibanco, NaverPay, NzBankAccount, Oxxo, P24, PayByBank, Payco, Paynow, Paypal, Paypay, Payto, Pix, Promptpay, Qris, RadarOptions, Rechnung, RevolutPay, SamsungPay, Satispay, SepaDebit, Shopeepay, Sofort, StripeBalance, Sunbit, Swish, Twint, Upi, UsBankAccount, WechatPay, Zip

Constant Summary collapse

OBJECT_NAME =
"payment_method"

Constants inherited from StripeObject

StripeObject::RESERVED_FIELD_NAMES

Instance Attribute Summary collapse

Attributes inherited from APIResource

#save_with_parent

Attributes inherited from StripeObject

#last_response

Class Method Summary collapse

Instance Method Summary collapse

Methods included from APIOperations::Create

create

Methods included from APIOperations::List

list

Methods included from APIOperations::Save

included, #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

included

Methods inherited from StripeObject

#==, #[], #[]=, #_get_inner_class_type, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, field_encodings, #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_debitObject (readonly)

Attribute for field acss_debit



1591
1592
1593
# File 'lib/stripe/resources/payment_method.rb', line 1591

def acss_debit
  @acss_debit
end

#affirmObject (readonly)

Attribute for field affirm



1593
1594
1595
# File 'lib/stripe/resources/payment_method.rb', line 1593

def affirm
  @affirm
end

#afterpay_clearpayObject (readonly)

Attribute for field afterpay_clearpay



1595
1596
1597
# File 'lib/stripe/resources/payment_method.rb', line 1595

def afterpay_clearpay
  @afterpay_clearpay
end

#alipayObject (readonly)

Attribute for field alipay



1597
1598
1599
# File 'lib/stripe/resources/payment_method.rb', line 1597

def alipay
  @alipay
end

#allow_redisplayObject (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”.



1599
1600
1601
# File 'lib/stripe/resources/payment_method.rb', line 1599

def allow_redisplay
  @allow_redisplay
end

#almaObject (readonly)

Attribute for field alma



1601
1602
1603
# File 'lib/stripe/resources/payment_method.rb', line 1601

def alma
  @alma
end

#amazon_payObject (readonly)

Attribute for field amazon_pay



1603
1604
1605
# File 'lib/stripe/resources/payment_method.rb', line 1603

def amazon_pay
  @amazon_pay
end

#au_becs_debitObject (readonly)

Attribute for field au_becs_debit



1605
1606
1607
# File 'lib/stripe/resources/payment_method.rb', line 1605

def au_becs_debit
  @au_becs_debit
end

#bacs_debitObject (readonly)

Attribute for field bacs_debit



1607
1608
1609
# File 'lib/stripe/resources/payment_method.rb', line 1607

def bacs_debit
  @bacs_debit
end

#bancontactObject (readonly)

Attribute for field bancontact



1609
1610
1611
# File 'lib/stripe/resources/payment_method.rb', line 1609

def bancontact
  @bancontact
end

#billieObject (readonly)

Attribute for field billie



1611
1612
1613
# File 'lib/stripe/resources/payment_method.rb', line 1611

def billie
  @billie
end

#billing_detailsObject (readonly)

Attribute for field billing_details



1613
1614
1615
# File 'lib/stripe/resources/payment_method.rb', line 1613

def billing_details
  @billing_details
end

#blikObject (readonly)

Attribute for field blik



1615
1616
1617
# File 'lib/stripe/resources/payment_method.rb', line 1615

def blik
  @blik
end

#boletoObject (readonly)

Attribute for field boleto



1617
1618
1619
# File 'lib/stripe/resources/payment_method.rb', line 1617

def boleto
  @boleto
end

#cardObject (readonly)

Attribute for field card



1619
1620
1621
# File 'lib/stripe/resources/payment_method.rb', line 1619

def card
  @card
end

#card_presentObject (readonly)

Attribute for field card_present



1621
1622
1623
# File 'lib/stripe/resources/payment_method.rb', line 1621

def card_present
  @card_present
end

#cashappObject (readonly)

Attribute for field cashapp



1623
1624
1625
# File 'lib/stripe/resources/payment_method.rb', line 1623

def cashapp
  @cashapp
end

#createdObject (readonly)

Time at which the object was created. Measured in seconds since the Unix epoch.



1625
1626
1627
# File 'lib/stripe/resources/payment_method.rb', line 1625

def created
  @created
end

#cryptoObject (readonly)

Attribute for field crypto



1627
1628
1629
# File 'lib/stripe/resources/payment_method.rb', line 1627

def crypto
  @crypto
end

#customObject (readonly)

Attribute for field custom



1629
1630
1631
# File 'lib/stripe/resources/payment_method.rb', line 1629

def custom
  @custom
end

#customerObject (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.



1631
1632
1633
# File 'lib/stripe/resources/payment_method.rb', line 1631

def customer
  @customer
end

#customer_accountObject (readonly)

Attribute for field customer_account



1633
1634
1635
# File 'lib/stripe/resources/payment_method.rb', line 1633

def 
  @customer_account
end

#customer_balanceObject (readonly)

Attribute for field customer_balance



1635
1636
1637
# File 'lib/stripe/resources/payment_method.rb', line 1635

def customer_balance
  @customer_balance
end

#epsObject (readonly)

Attribute for field eps



1637
1638
1639
# File 'lib/stripe/resources/payment_method.rb', line 1637

def eps
  @eps
end

#fpxObject (readonly)

Attribute for field fpx



1639
1640
1641
# File 'lib/stripe/resources/payment_method.rb', line 1639

def fpx
  @fpx
end

#giropayObject (readonly)

Attribute for field giropay



1641
1642
1643
# File 'lib/stripe/resources/payment_method.rb', line 1641

def giropay
  @giropay
end

#gopayObject (readonly)

Attribute for field gopay



1643
1644
1645
# File 'lib/stripe/resources/payment_method.rb', line 1643

def gopay
  @gopay
end

#grabpayObject (readonly)

Attribute for field grabpay



1645
1646
1647
# File 'lib/stripe/resources/payment_method.rb', line 1645

def grabpay
  @grabpay
end

#idObject (readonly)

Unique identifier for the object.



1647
1648
1649
# File 'lib/stripe/resources/payment_method.rb', line 1647

def id
  @id
end

#id_bank_transferObject (readonly)

Attribute for field id_bank_transfer



1649
1650
1651
# File 'lib/stripe/resources/payment_method.rb', line 1649

def id_bank_transfer
  @id_bank_transfer
end

#idealObject (readonly)

Attribute for field ideal



1651
1652
1653
# File 'lib/stripe/resources/payment_method.rb', line 1651

def ideal
  @ideal
end

#interac_presentObject (readonly)

Attribute for field interac_present



1653
1654
1655
# File 'lib/stripe/resources/payment_method.rb', line 1653

def interac_present
  @interac_present
end

#kakao_payObject (readonly)

Attribute for field kakao_pay



1655
1656
1657
# File 'lib/stripe/resources/payment_method.rb', line 1655

def kakao_pay
  @kakao_pay
end

#klarnaObject (readonly)

Attribute for field klarna



1657
1658
1659
# File 'lib/stripe/resources/payment_method.rb', line 1657

def klarna
  @klarna
end

#konbiniObject (readonly)

Attribute for field konbini



1659
1660
1661
# File 'lib/stripe/resources/payment_method.rb', line 1659

def konbini
  @konbini
end

#kr_cardObject (readonly)

Attribute for field kr_card



1661
1662
1663
# File 'lib/stripe/resources/payment_method.rb', line 1661

def kr_card
  @kr_card
end

#latest_active_mandateObject (readonly)

The Mandate object of the most recently created Mandate associated with this payment method



1663
1664
1665
# File 'lib/stripe/resources/payment_method.rb', line 1663

def latest_active_mandate
  @latest_active_mandate
end

Attribute for field link



1665
1666
1667
# File 'lib/stripe/resources/payment_method.rb', line 1665

def link
  @link
end

#livemodeObject (readonly)

If the object exists in live mode, the value is ‘true`. If the object exists in test mode, the value is `false`.



1667
1668
1669
# File 'lib/stripe/resources/payment_method.rb', line 1667

def livemode
  @livemode
end

#mb_wayObject (readonly)

Attribute for field mb_way



1669
1670
1671
# File 'lib/stripe/resources/payment_method.rb', line 1669

def mb_way
  @mb_way
end

#metadataObject (readonly)

Set of [key-value pairs](docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.



1671
1672
1673
# File 'lib/stripe/resources/payment_method.rb', line 1671

def 
  @metadata
end

#mobilepayObject (readonly)

Attribute for field mobilepay



1673
1674
1675
# File 'lib/stripe/resources/payment_method.rb', line 1673

def mobilepay
  @mobilepay
end

#multibancoObject (readonly)

Attribute for field multibanco



1675
1676
1677
# File 'lib/stripe/resources/payment_method.rb', line 1675

def multibanco
  @multibanco
end

Attribute for field naver_pay



1677
1678
1679
# File 'lib/stripe/resources/payment_method.rb', line 1677

def naver_pay
  @naver_pay
end

#nz_bank_accountObject (readonly)

Attribute for field nz_bank_account



1679
1680
1681
# File 'lib/stripe/resources/payment_method.rb', line 1679

def 
  @nz_bank_account
end

#objectObject (readonly)

String representing the object’s type. Objects of the same type share the same value.



1681
1682
1683
# File 'lib/stripe/resources/payment_method.rb', line 1681

def object
  @object
end

#oxxoObject (readonly)

Attribute for field oxxo



1683
1684
1685
# File 'lib/stripe/resources/payment_method.rb', line 1683

def oxxo
  @oxxo
end

#p24Object (readonly)

Attribute for field p24



1685
1686
1687
# File 'lib/stripe/resources/payment_method.rb', line 1685

def p24
  @p24
end

#pay_by_bankObject (readonly)

Attribute for field pay_by_bank



1687
1688
1689
# File 'lib/stripe/resources/payment_method.rb', line 1687

def pay_by_bank
  @pay_by_bank
end

#paycoObject (readonly)

Attribute for field payco



1689
1690
1691
# File 'lib/stripe/resources/payment_method.rb', line 1689

def payco
  @payco
end

#paynowObject (readonly)

Attribute for field paynow



1691
1692
1693
# File 'lib/stripe/resources/payment_method.rb', line 1691

def paynow
  @paynow
end

#paypalObject (readonly)

Attribute for field paypal



1693
1694
1695
# File 'lib/stripe/resources/payment_method.rb', line 1693

def paypal
  @paypal
end

#paypayObject (readonly)

Attribute for field paypay



1695
1696
1697
# File 'lib/stripe/resources/payment_method.rb', line 1695

def paypay
  @paypay
end

#paytoObject (readonly)

Attribute for field payto



1697
1698
1699
# File 'lib/stripe/resources/payment_method.rb', line 1697

def payto
  @payto
end

#pixObject (readonly)

Attribute for field pix



1699
1700
1701
# File 'lib/stripe/resources/payment_method.rb', line 1699

def pix
  @pix
end

#promptpayObject (readonly)

Attribute for field promptpay



1701
1702
1703
# File 'lib/stripe/resources/payment_method.rb', line 1701

def promptpay
  @promptpay
end

#qrisObject (readonly)

Attribute for field qris



1703
1704
1705
# File 'lib/stripe/resources/payment_method.rb', line 1703

def qris
  @qris
end

#radar_optionsObject (readonly)

Options to configure Radar. See [Radar Session](docs.stripe.com/radar/radar-session) for more information.



1705
1706
1707
# File 'lib/stripe/resources/payment_method.rb', line 1705

def radar_options
  @radar_options
end

#rechnungObject (readonly)

Attribute for field rechnung



1707
1708
1709
# File 'lib/stripe/resources/payment_method.rb', line 1707

def rechnung
  @rechnung
end

#revolut_payObject (readonly)

Attribute for field revolut_pay



1709
1710
1711
# File 'lib/stripe/resources/payment_method.rb', line 1709

def revolut_pay
  @revolut_pay
end

#samsung_payObject (readonly)

Attribute for field samsung_pay



1711
1712
1713
# File 'lib/stripe/resources/payment_method.rb', line 1711

def samsung_pay
  @samsung_pay
end

#satispayObject (readonly)

Attribute for field satispay



1713
1714
1715
# File 'lib/stripe/resources/payment_method.rb', line 1713

def satispay
  @satispay
end

#sepa_debitObject (readonly)

Attribute for field sepa_debit



1715
1716
1717
# File 'lib/stripe/resources/payment_method.rb', line 1715

def sepa_debit
  @sepa_debit
end

#shared_payment_granted_tokenObject (readonly)

ID of the shared payment granted token used in the creation of this PaymentMethod.



1717
1718
1719
# File 'lib/stripe/resources/payment_method.rb', line 1717

def shared_payment_granted_token
  @shared_payment_granted_token
end

#shopeepayObject (readonly)

Attribute for field shopeepay



1719
1720
1721
# File 'lib/stripe/resources/payment_method.rb', line 1719

def shopeepay
  @shopeepay
end

#sofortObject (readonly)

Attribute for field sofort



1721
1722
1723
# File 'lib/stripe/resources/payment_method.rb', line 1721

def sofort
  @sofort
end

#stripe_balanceObject (readonly)

Attribute for field stripe_balance



1723
1724
1725
# File 'lib/stripe/resources/payment_method.rb', line 1723

def stripe_balance
  @stripe_balance
end

#sunbitObject (readonly)

Attribute for field sunbit



1725
1726
1727
# File 'lib/stripe/resources/payment_method.rb', line 1725

def sunbit
  @sunbit
end

#swishObject (readonly)

Attribute for field swish



1727
1728
1729
# File 'lib/stripe/resources/payment_method.rb', line 1727

def swish
  @swish
end

#twintObject (readonly)

Attribute for field twint



1729
1730
1731
# File 'lib/stripe/resources/payment_method.rb', line 1729

def twint
  @twint
end

#typeObject (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.



1731
1732
1733
# File 'lib/stripe/resources/payment_method.rb', line 1731

def type
  @type
end

#upiObject (readonly)

Attribute for field upi



1733
1734
1735
# File 'lib/stripe/resources/payment_method.rb', line 1733

def upi
  @upi
end

#us_bank_accountObject (readonly)

Attribute for field us_bank_account



1735
1736
1737
# File 'lib/stripe/resources/payment_method.rb', line 1735

def 
  @us_bank_account
end

#wechat_payObject (readonly)

Attribute for field wechat_pay



1737
1738
1739
# File 'lib/stripe/resources/payment_method.rb', line 1737

def wechat_pay
  @wechat_pay
end

#zipObject (readonly)

Attribute for field zip



1739
1740
1741
# File 'lib/stripe/resources/payment_method.rb', line 1739

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](docs.stripe.com/docs/api/setup_intents) or a PaymentIntent with [setup_future_usage](docs.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](docs.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](docs.stripe.com/docs/api/customers/update#update_customer-invoice_settings-default_payment_method), on the Customer to the PaymentMethod’s ID.



1776
1777
1778
1779
1780
1781
1782
1783
# File 'lib/stripe/resources/payment_method.rb', line 1776

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

.check_balance(payment_method, params = {}, opts = {}) ⇒ Object

Retrieves a PaymentMethod’s Balance.



1796
1797
1798
1799
1800
1801
1802
1803
# File 'lib/stripe/resources/payment_method.rb', line 1796

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

.create(params = {}, opts = {}) ⇒ Object

Creates a PaymentMethod object. Read the [Stripe.js reference](docs.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](docs.stripe.com/docs/payments/accept-a-payment) API to collect payment method details ahead of a future payment.



1808
1809
1810
# File 'lib/stripe/resources/payment_method.rb', line 1808

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.



1823
1824
1825
1826
1827
1828
1829
1830
# File 'lib/stripe/resources/payment_method.rb', line 1823

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

.field_remappingsObject



1916
1917
1918
# File 'lib/stripe/resources/payment_method.rb', line 1916

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
# File 'lib/stripe/resources/payment_method.rb', line 1847

def self.inner_class_types
  @inner_class_types = {
    acss_debit: AcssDebit,
    affirm: Affirm,
    afterpay_clearpay: AfterpayClearpay,
    alipay: Alipay,
    alma: Alma,
    amazon_pay: AmazonPay,
    au_becs_debit: AuBecsDebit,
    bacs_debit: BacsDebit,
    bancontact: Bancontact,
    billie: Billie,
    billing_details: BillingDetails,
    blik: Blik,
    boleto: Boleto,
    card: Card,
    card_present: CardPresent,
    cashapp: Cashapp,
    crypto: Crypto,
    custom: Custom,
    customer_balance: CustomerBalance,
    eps: Eps,
    fpx: Fpx,
    giropay: Giropay,
    gopay: Gopay,
    grabpay: Grabpay,
    id_bank_transfer: IdBankTransfer,
    ideal: Ideal,
    interac_present: InteracPresent,
    kakao_pay: KakaoPay,
    klarna: Klarna,
    konbini: Konbini,
    kr_card: KrCard,
    link: Link,
    mb_way: MbWay,
    mobilepay: Mobilepay,
    multibanco: Multibanco,
    naver_pay: NaverPay,
    nz_bank_account: NzBankAccount,
    oxxo: Oxxo,
    p24: P24,
    pay_by_bank: PayByBank,
    payco: Payco,
    paynow: Paynow,
    paypal: Paypal,
    paypay: Paypay,
    payto: Payto,
    pix: Pix,
    promptpay: Promptpay,
    qris: Qris,
    radar_options: RadarOptions,
    rechnung: Rechnung,
    revolut_pay: RevolutPay,
    samsung_pay: SamsungPay,
    satispay: Satispay,
    sepa_debit: SepaDebit,
    shopeepay: Shopeepay,
    sofort: Sofort,
    stripe_balance: StripeBalance,
    sunbit: Sunbit,
    swish: Swish,
    twint: Twint,
    upi: Upi,
    us_bank_account: UsBankAccount,
    wechat_pay: WechatPay,
    zip: Zip,
  }
end

.list(params = {}, opts = {}) ⇒ Object

Returns a list of all PaymentMethods.



1833
1834
1835
# File 'lib/stripe/resources/payment_method.rb', line 1833

def self.list(params = {}, opts = {})
  request_stripe_object(method: :get, path: "/v1/payment_methods", params: params, opts: opts)
end

.object_nameObject



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 to a customer to be updated.



1838
1839
1840
1841
1842
1843
1844
1845
# File 'lib/stripe/resources/payment_method.rb', line 1838

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](docs.stripe.com/docs/api/setup_intents) or a PaymentIntent with [setup_future_usage](docs.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](docs.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](docs.stripe.com/docs/api/customers/update#update_customer-invoice_settings-default_payment_method), on the Customer to the PaymentMethod’s ID.



1754
1755
1756
1757
1758
1759
1760
1761
# File 'lib/stripe/resources/payment_method.rb', line 1754

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

#check_balance(params = {}, opts = {}) ⇒ Object

Retrieves a PaymentMethod’s Balance.



1786
1787
1788
1789
1790
1791
1792
1793
# File 'lib/stripe/resources/payment_method.rb', line 1786

def check_balance(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: format("/v1/payment_methods/%<payment_method>s/check_balance", { 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.



1813
1814
1815
1816
1817
1818
1819
1820
# File 'lib/stripe/resources/payment_method.rb', line 1813

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