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, AuBecsDebit, BacsDebit, Bancontact, Billie, BillingDetails, Blik, Boleto, Card, CardPresent, Cashapp, Crypto, 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, Swish, Twint, 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.
-
#crypto ⇒ Object
readonly
Attribute for field crypto.
-
#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.
-
#latest_active_mandate ⇒ Object
readonly
The Mandate object of the most recently created Mandate associated with this payment method.
-
#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.
-
#paypay ⇒ Object
readonly
Attribute for field paypay.
-
#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.
- .field_remappings ⇒ Object
- .inner_class_types ⇒ Object
-
.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
#==, #[], #[]=, #_get_inner_class_type, 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
1489 1490 1491 |
# File 'lib/stripe/resources/payment_method.rb', line 1489 def acss_debit @acss_debit end |
#affirm ⇒ Object (readonly)
Attribute for field affirm
1491 1492 1493 |
# File 'lib/stripe/resources/payment_method.rb', line 1491 def affirm @affirm end |
#afterpay_clearpay ⇒ Object (readonly)
Attribute for field afterpay_clearpay
1493 1494 1495 |
# File 'lib/stripe/resources/payment_method.rb', line 1493 def afterpay_clearpay @afterpay_clearpay end |
#alipay ⇒ Object (readonly)
Attribute for field alipay
1495 1496 1497 |
# File 'lib/stripe/resources/payment_method.rb', line 1495 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”.
1497 1498 1499 |
# File 'lib/stripe/resources/payment_method.rb', line 1497 def allow_redisplay @allow_redisplay end |
#alma ⇒ Object (readonly)
Attribute for field alma
1499 1500 1501 |
# File 'lib/stripe/resources/payment_method.rb', line 1499 def alma @alma end |
#amazon_pay ⇒ Object (readonly)
Attribute for field amazon_pay
1501 1502 1503 |
# File 'lib/stripe/resources/payment_method.rb', line 1501 def amazon_pay @amazon_pay end |
#au_becs_debit ⇒ Object (readonly)
Attribute for field au_becs_debit
1503 1504 1505 |
# File 'lib/stripe/resources/payment_method.rb', line 1503 def au_becs_debit @au_becs_debit end |
#bacs_debit ⇒ Object (readonly)
Attribute for field bacs_debit
1505 1506 1507 |
# File 'lib/stripe/resources/payment_method.rb', line 1505 def bacs_debit @bacs_debit end |
#bancontact ⇒ Object (readonly)
Attribute for field bancontact
1507 1508 1509 |
# File 'lib/stripe/resources/payment_method.rb', line 1507 def bancontact @bancontact end |
#billie ⇒ Object (readonly)
Attribute for field billie
1509 1510 1511 |
# File 'lib/stripe/resources/payment_method.rb', line 1509 def billie @billie end |
#billing_details ⇒ Object (readonly)
Attribute for field billing_details
1511 1512 1513 |
# File 'lib/stripe/resources/payment_method.rb', line 1511 def billing_details @billing_details end |
#blik ⇒ Object (readonly)
Attribute for field blik
1513 1514 1515 |
# File 'lib/stripe/resources/payment_method.rb', line 1513 def blik @blik end |
#boleto ⇒ Object (readonly)
Attribute for field boleto
1515 1516 1517 |
# File 'lib/stripe/resources/payment_method.rb', line 1515 def boleto @boleto end |
#card ⇒ Object (readonly)
Attribute for field card
1517 1518 1519 |
# File 'lib/stripe/resources/payment_method.rb', line 1517 def card @card end |
#card_present ⇒ Object (readonly)
Attribute for field card_present
1519 1520 1521 |
# File 'lib/stripe/resources/payment_method.rb', line 1519 def card_present @card_present end |
#cashapp ⇒ Object (readonly)
Attribute for field cashapp
1521 1522 1523 |
# File 'lib/stripe/resources/payment_method.rb', line 1521 def cashapp @cashapp end |
#created ⇒ Object (readonly)
Time at which the object was created. Measured in seconds since the Unix epoch.
1523 1524 1525 |
# File 'lib/stripe/resources/payment_method.rb', line 1523 def created @created end |
#crypto ⇒ Object (readonly)
Attribute for field crypto
1525 1526 1527 |
# File 'lib/stripe/resources/payment_method.rb', line 1525 def crypto @crypto 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.
1527 1528 1529 |
# File 'lib/stripe/resources/payment_method.rb', line 1527 def customer @customer end |
#customer_account ⇒ Object (readonly)
Attribute for field customer_account
1529 1530 1531 |
# File 'lib/stripe/resources/payment_method.rb', line 1529 def customer_account @customer_account end |
#customer_balance ⇒ Object (readonly)
Attribute for field customer_balance
1531 1532 1533 |
# File 'lib/stripe/resources/payment_method.rb', line 1531 def customer_balance @customer_balance end |
#eps ⇒ Object (readonly)
Attribute for field eps
1533 1534 1535 |
# File 'lib/stripe/resources/payment_method.rb', line 1533 def eps @eps end |
#fpx ⇒ Object (readonly)
Attribute for field fpx
1535 1536 1537 |
# File 'lib/stripe/resources/payment_method.rb', line 1535 def fpx @fpx end |
#giropay ⇒ Object (readonly)
Attribute for field giropay
1537 1538 1539 |
# File 'lib/stripe/resources/payment_method.rb', line 1537 def giropay @giropay end |
#gopay ⇒ Object (readonly)
Attribute for field gopay
1539 1540 1541 |
# File 'lib/stripe/resources/payment_method.rb', line 1539 def gopay @gopay end |
#grabpay ⇒ Object (readonly)
Attribute for field grabpay
1541 1542 1543 |
# File 'lib/stripe/resources/payment_method.rb', line 1541 def grabpay @grabpay end |
#id ⇒ Object (readonly)
Unique identifier for the object.
1543 1544 1545 |
# File 'lib/stripe/resources/payment_method.rb', line 1543 def id @id end |
#id_bank_transfer ⇒ Object (readonly)
Attribute for field id_bank_transfer
1545 1546 1547 |
# File 'lib/stripe/resources/payment_method.rb', line 1545 def id_bank_transfer @id_bank_transfer end |
#ideal ⇒ Object (readonly)
Attribute for field ideal
1547 1548 1549 |
# File 'lib/stripe/resources/payment_method.rb', line 1547 def ideal @ideal end |
#interac_present ⇒ Object (readonly)
Attribute for field interac_present
1549 1550 1551 |
# File 'lib/stripe/resources/payment_method.rb', line 1549 def interac_present @interac_present end |
#kakao_pay ⇒ Object (readonly)
Attribute for field kakao_pay
1551 1552 1553 |
# File 'lib/stripe/resources/payment_method.rb', line 1551 def kakao_pay @kakao_pay end |
#klarna ⇒ Object (readonly)
Attribute for field klarna
1553 1554 1555 |
# File 'lib/stripe/resources/payment_method.rb', line 1553 def klarna @klarna end |
#konbini ⇒ Object (readonly)
Attribute for field konbini
1555 1556 1557 |
# File 'lib/stripe/resources/payment_method.rb', line 1555 def konbini @konbini end |
#kr_card ⇒ Object (readonly)
Attribute for field kr_card
1557 1558 1559 |
# File 'lib/stripe/resources/payment_method.rb', line 1557 def kr_card @kr_card end |
#latest_active_mandate ⇒ Object (readonly)
The Mandate object of the most recently created Mandate associated with this payment method
1559 1560 1561 |
# File 'lib/stripe/resources/payment_method.rb', line 1559 def latest_active_mandate @latest_active_mandate end |
#link ⇒ Object (readonly)
Attribute for field link
1561 1562 1563 |
# File 'lib/stripe/resources/payment_method.rb', line 1561 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.
1563 1564 1565 |
# File 'lib/stripe/resources/payment_method.rb', line 1563 def livemode @livemode end |
#mb_way ⇒ Object (readonly)
Attribute for field mb_way
1565 1566 1567 |
# File 'lib/stripe/resources/payment_method.rb', line 1565 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.
1567 1568 1569 |
# File 'lib/stripe/resources/payment_method.rb', line 1567 def @metadata end |
#mobilepay ⇒ Object (readonly)
Attribute for field mobilepay
1569 1570 1571 |
# File 'lib/stripe/resources/payment_method.rb', line 1569 def mobilepay @mobilepay end |
#multibanco ⇒ Object (readonly)
Attribute for field multibanco
1571 1572 1573 |
# File 'lib/stripe/resources/payment_method.rb', line 1571 def multibanco @multibanco end |
#naver_pay ⇒ Object (readonly)
Attribute for field naver_pay
1573 1574 1575 |
# File 'lib/stripe/resources/payment_method.rb', line 1573 def naver_pay @naver_pay end |
#nz_bank_account ⇒ Object (readonly)
Attribute for field nz_bank_account
1575 1576 1577 |
# File 'lib/stripe/resources/payment_method.rb', line 1575 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.
1577 1578 1579 |
# File 'lib/stripe/resources/payment_method.rb', line 1577 def object @object end |
#oxxo ⇒ Object (readonly)
Attribute for field oxxo
1579 1580 1581 |
# File 'lib/stripe/resources/payment_method.rb', line 1579 def oxxo @oxxo end |
#p24 ⇒ Object (readonly)
Attribute for field p24
1581 1582 1583 |
# File 'lib/stripe/resources/payment_method.rb', line 1581 def p24 @p24 end |
#pay_by_bank ⇒ Object (readonly)
Attribute for field pay_by_bank
1583 1584 1585 |
# File 'lib/stripe/resources/payment_method.rb', line 1583 def pay_by_bank @pay_by_bank end |
#payco ⇒ Object (readonly)
Attribute for field payco
1585 1586 1587 |
# File 'lib/stripe/resources/payment_method.rb', line 1585 def payco @payco end |
#paynow ⇒ Object (readonly)
Attribute for field paynow
1587 1588 1589 |
# File 'lib/stripe/resources/payment_method.rb', line 1587 def paynow @paynow end |
#paypal ⇒ Object (readonly)
Attribute for field paypal
1589 1590 1591 |
# File 'lib/stripe/resources/payment_method.rb', line 1589 def paypal @paypal end |
#paypay ⇒ Object (readonly)
Attribute for field paypay
1591 1592 1593 |
# File 'lib/stripe/resources/payment_method.rb', line 1591 def paypay @paypay end |
#payto ⇒ Object (readonly)
Attribute for field payto
1593 1594 1595 |
# File 'lib/stripe/resources/payment_method.rb', line 1593 def payto @payto end |
#pix ⇒ Object (readonly)
Attribute for field pix
1595 1596 1597 |
# File 'lib/stripe/resources/payment_method.rb', line 1595 def pix @pix end |
#promptpay ⇒ Object (readonly)
Attribute for field promptpay
1597 1598 1599 |
# File 'lib/stripe/resources/payment_method.rb', line 1597 def promptpay @promptpay end |
#qris ⇒ Object (readonly)
Attribute for field qris
1599 1600 1601 |
# File 'lib/stripe/resources/payment_method.rb', line 1599 def qris @qris end |
#radar_options ⇒ Object (readonly)
Options to configure Radar. See [Radar Session](stripe.com/docs/radar/radar-session) for more information.
1601 1602 1603 |
# File 'lib/stripe/resources/payment_method.rb', line 1601 def @radar_options end |
#rechnung ⇒ Object (readonly)
Attribute for field rechnung
1603 1604 1605 |
# File 'lib/stripe/resources/payment_method.rb', line 1603 def rechnung @rechnung end |
#revolut_pay ⇒ Object (readonly)
Attribute for field revolut_pay
1605 1606 1607 |
# File 'lib/stripe/resources/payment_method.rb', line 1605 def revolut_pay @revolut_pay end |
#samsung_pay ⇒ Object (readonly)
Attribute for field samsung_pay
1607 1608 1609 |
# File 'lib/stripe/resources/payment_method.rb', line 1607 def samsung_pay @samsung_pay end |
#satispay ⇒ Object (readonly)
Attribute for field satispay
1609 1610 1611 |
# File 'lib/stripe/resources/payment_method.rb', line 1609 def satispay @satispay end |
#sepa_debit ⇒ Object (readonly)
Attribute for field sepa_debit
1611 1612 1613 |
# File 'lib/stripe/resources/payment_method.rb', line 1611 def sepa_debit @sepa_debit end |
#shopeepay ⇒ Object (readonly)
Attribute for field shopeepay
1613 1614 1615 |
# File 'lib/stripe/resources/payment_method.rb', line 1613 def shopeepay @shopeepay end |
#sofort ⇒ Object (readonly)
Attribute for field sofort
1615 1616 1617 |
# File 'lib/stripe/resources/payment_method.rb', line 1615 def sofort @sofort end |
#stripe_balance ⇒ Object (readonly)
Attribute for field stripe_balance
1617 1618 1619 |
# File 'lib/stripe/resources/payment_method.rb', line 1617 def stripe_balance @stripe_balance end |
#swish ⇒ Object (readonly)
Attribute for field swish
1619 1620 1621 |
# File 'lib/stripe/resources/payment_method.rb', line 1619 def swish @swish end |
#twint ⇒ Object (readonly)
Attribute for field twint
1621 1622 1623 |
# File 'lib/stripe/resources/payment_method.rb', line 1621 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.
1623 1624 1625 |
# File 'lib/stripe/resources/payment_method.rb', line 1623 def type @type end |
#us_bank_account ⇒ Object (readonly)
Attribute for field us_bank_account
1625 1626 1627 |
# File 'lib/stripe/resources/payment_method.rb', line 1625 def us_bank_account @us_bank_account end |
#wechat_pay ⇒ Object (readonly)
Attribute for field wechat_pay
1627 1628 1629 |
# File 'lib/stripe/resources/payment_method.rb', line 1627 def wechat_pay @wechat_pay end |
#zip ⇒ Object (readonly)
Attribute for field zip
1629 1630 1631 |
# File 'lib/stripe/resources/payment_method.rb', line 1629 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.
1666 1667 1668 1669 1670 1671 1672 1673 |
# File 'lib/stripe/resources/payment_method.rb', line 1666 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](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.
1678 1679 1680 |
# File 'lib/stripe/resources/payment_method.rb', line 1678 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.
1693 1694 1695 1696 1697 1698 1699 1700 |
# File 'lib/stripe/resources/payment_method.rb', line 1693 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_remappings ⇒ Object
1783 1784 1785 |
# File 'lib/stripe/resources/payment_method.rb', line 1783 def self.field_remappings @field_remappings = {} end |
.inner_class_types ⇒ Object
1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 |
# File 'lib/stripe/resources/payment_method.rb', line 1717 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, 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, swish: Swish, twint: Twint, us_bank_account: UsBankAccount, wechat_pay: WechatPay, zip: Zip, } 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](docs.stripe.com/docs/api/payment_methods/customer_list) API instead.
1703 1704 1705 |
# File 'lib/stripe/resources/payment_method.rb', line 1703 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 to a customer to be updated.
1708 1709 1710 1711 1712 1713 1714 1715 |
# File 'lib/stripe/resources/payment_method.rb', line 1708 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.
1644 1645 1646 1647 1648 1649 1650 1651 |
# File 'lib/stripe/resources/payment_method.rb', line 1644 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.
1683 1684 1685 1686 1687 1688 1689 1690 |
# File 'lib/stripe/resources/payment_method.rb', line 1683 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 |