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](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, Grabpay, Ideal, InteracPresent, KakaoPay, Klarna, Konbini, KrCard, Link, MbWay, Mobilepay, Multibanco, NaverPay, NzBankAccount, Oxxo, P24, PayByBank, Payco, Paynow, Paypal, Payto, Pix, Promptpay, RadarOptions, RevolutPay, SamsungPay, Satispay, SepaDebit, Sofort, 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.
-
#custom ⇒ Object
readonly
Attribute for field custom.
-
#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.
-
#grabpay ⇒ Object
readonly
Attribute for field grabpay.
-
#id ⇒ Object
readonly
Unique identifier for the object.
-
#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](docs.stripe.com/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.
-
#radar_options ⇒ Object
readonly
Options to configure Radar.
-
#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.
-
#sofort ⇒ Object
readonly
Attribute for field sofort.
-
#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 all PaymentMethods.
- .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
1408 1409 1410 |
# File 'lib/stripe/resources/payment_method.rb', line 1408 def acss_debit @acss_debit end |
#affirm ⇒ Object (readonly)
Attribute for field affirm
1410 1411 1412 |
# File 'lib/stripe/resources/payment_method.rb', line 1410 def affirm @affirm end |
#afterpay_clearpay ⇒ Object (readonly)
Attribute for field afterpay_clearpay
1412 1413 1414 |
# File 'lib/stripe/resources/payment_method.rb', line 1412 def afterpay_clearpay @afterpay_clearpay end |
#alipay ⇒ Object (readonly)
Attribute for field alipay
1414 1415 1416 |
# File 'lib/stripe/resources/payment_method.rb', line 1414 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”.
1416 1417 1418 |
# File 'lib/stripe/resources/payment_method.rb', line 1416 def allow_redisplay @allow_redisplay end |
#alma ⇒ Object (readonly)
Attribute for field alma
1418 1419 1420 |
# File 'lib/stripe/resources/payment_method.rb', line 1418 def alma @alma end |
#amazon_pay ⇒ Object (readonly)
Attribute for field amazon_pay
1420 1421 1422 |
# File 'lib/stripe/resources/payment_method.rb', line 1420 def amazon_pay @amazon_pay end |
#au_becs_debit ⇒ Object (readonly)
Attribute for field au_becs_debit
1422 1423 1424 |
# File 'lib/stripe/resources/payment_method.rb', line 1422 def au_becs_debit @au_becs_debit end |
#bacs_debit ⇒ Object (readonly)
Attribute for field bacs_debit
1424 1425 1426 |
# File 'lib/stripe/resources/payment_method.rb', line 1424 def bacs_debit @bacs_debit end |
#bancontact ⇒ Object (readonly)
Attribute for field bancontact
1426 1427 1428 |
# File 'lib/stripe/resources/payment_method.rb', line 1426 def bancontact @bancontact end |
#billie ⇒ Object (readonly)
Attribute for field billie
1428 1429 1430 |
# File 'lib/stripe/resources/payment_method.rb', line 1428 def billie @billie end |
#billing_details ⇒ Object (readonly)
Attribute for field billing_details
1430 1431 1432 |
# File 'lib/stripe/resources/payment_method.rb', line 1430 def billing_details @billing_details end |
#blik ⇒ Object (readonly)
Attribute for field blik
1432 1433 1434 |
# File 'lib/stripe/resources/payment_method.rb', line 1432 def blik @blik end |
#boleto ⇒ Object (readonly)
Attribute for field boleto
1434 1435 1436 |
# File 'lib/stripe/resources/payment_method.rb', line 1434 def boleto @boleto end |
#card ⇒ Object (readonly)
Attribute for field card
1436 1437 1438 |
# File 'lib/stripe/resources/payment_method.rb', line 1436 def card @card end |
#card_present ⇒ Object (readonly)
Attribute for field card_present
1438 1439 1440 |
# File 'lib/stripe/resources/payment_method.rb', line 1438 def card_present @card_present end |
#cashapp ⇒ Object (readonly)
Attribute for field cashapp
1440 1441 1442 |
# File 'lib/stripe/resources/payment_method.rb', line 1440 def cashapp @cashapp end |
#created ⇒ Object (readonly)
Time at which the object was created. Measured in seconds since the Unix epoch.
1442 1443 1444 |
# File 'lib/stripe/resources/payment_method.rb', line 1442 def created @created end |
#crypto ⇒ Object (readonly)
Attribute for field crypto
1444 1445 1446 |
# File 'lib/stripe/resources/payment_method.rb', line 1444 def crypto @crypto end |
#custom ⇒ Object (readonly)
Attribute for field custom
1446 1447 1448 |
# File 'lib/stripe/resources/payment_method.rb', line 1446 def custom @custom 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.
1448 1449 1450 |
# File 'lib/stripe/resources/payment_method.rb', line 1448 def customer @customer end |
#customer_account ⇒ Object (readonly)
Attribute for field customer_account
1450 1451 1452 |
# File 'lib/stripe/resources/payment_method.rb', line 1450 def customer_account @customer_account end |
#customer_balance ⇒ Object (readonly)
Attribute for field customer_balance
1452 1453 1454 |
# File 'lib/stripe/resources/payment_method.rb', line 1452 def customer_balance @customer_balance end |
#eps ⇒ Object (readonly)
Attribute for field eps
1454 1455 1456 |
# File 'lib/stripe/resources/payment_method.rb', line 1454 def eps @eps end |
#fpx ⇒ Object (readonly)
Attribute for field fpx
1456 1457 1458 |
# File 'lib/stripe/resources/payment_method.rb', line 1456 def fpx @fpx end |
#giropay ⇒ Object (readonly)
Attribute for field giropay
1458 1459 1460 |
# File 'lib/stripe/resources/payment_method.rb', line 1458 def giropay @giropay end |
#grabpay ⇒ Object (readonly)
Attribute for field grabpay
1460 1461 1462 |
# File 'lib/stripe/resources/payment_method.rb', line 1460 def grabpay @grabpay end |
#id ⇒ Object (readonly)
Unique identifier for the object.
1462 1463 1464 |
# File 'lib/stripe/resources/payment_method.rb', line 1462 def id @id end |
#ideal ⇒ Object (readonly)
Attribute for field ideal
1464 1465 1466 |
# File 'lib/stripe/resources/payment_method.rb', line 1464 def ideal @ideal end |
#interac_present ⇒ Object (readonly)
Attribute for field interac_present
1466 1467 1468 |
# File 'lib/stripe/resources/payment_method.rb', line 1466 def interac_present @interac_present end |
#kakao_pay ⇒ Object (readonly)
Attribute for field kakao_pay
1468 1469 1470 |
# File 'lib/stripe/resources/payment_method.rb', line 1468 def kakao_pay @kakao_pay end |
#klarna ⇒ Object (readonly)
Attribute for field klarna
1470 1471 1472 |
# File 'lib/stripe/resources/payment_method.rb', line 1470 def klarna @klarna end |
#konbini ⇒ Object (readonly)
Attribute for field konbini
1472 1473 1474 |
# File 'lib/stripe/resources/payment_method.rb', line 1472 def konbini @konbini end |
#kr_card ⇒ Object (readonly)
Attribute for field kr_card
1474 1475 1476 |
# File 'lib/stripe/resources/payment_method.rb', line 1474 def kr_card @kr_card end |
#link ⇒ Object (readonly)
Attribute for field link
1476 1477 1478 |
# File 'lib/stripe/resources/payment_method.rb', line 1476 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.
1478 1479 1480 |
# File 'lib/stripe/resources/payment_method.rb', line 1478 def livemode @livemode end |
#mb_way ⇒ Object (readonly)
Attribute for field mb_way
1480 1481 1482 |
# File 'lib/stripe/resources/payment_method.rb', line 1480 def mb_way @mb_way end |
#metadata ⇒ Object (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.
1482 1483 1484 |
# File 'lib/stripe/resources/payment_method.rb', line 1482 def end |
#mobilepay ⇒ Object (readonly)
Attribute for field mobilepay
1484 1485 1486 |
# File 'lib/stripe/resources/payment_method.rb', line 1484 def mobilepay @mobilepay end |
#multibanco ⇒ Object (readonly)
Attribute for field multibanco
1486 1487 1488 |
# File 'lib/stripe/resources/payment_method.rb', line 1486 def multibanco @multibanco end |
#naver_pay ⇒ Object (readonly)
Attribute for field naver_pay
1488 1489 1490 |
# File 'lib/stripe/resources/payment_method.rb', line 1488 def naver_pay @naver_pay end |
#nz_bank_account ⇒ Object (readonly)
Attribute for field nz_bank_account
1490 1491 1492 |
# File 'lib/stripe/resources/payment_method.rb', line 1490 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.
1492 1493 1494 |
# File 'lib/stripe/resources/payment_method.rb', line 1492 def object @object end |
#oxxo ⇒ Object (readonly)
Attribute for field oxxo
1494 1495 1496 |
# File 'lib/stripe/resources/payment_method.rb', line 1494 def oxxo @oxxo end |
#p24 ⇒ Object (readonly)
Attribute for field p24
1496 1497 1498 |
# File 'lib/stripe/resources/payment_method.rb', line 1496 def p24 @p24 end |
#pay_by_bank ⇒ Object (readonly)
Attribute for field pay_by_bank
1498 1499 1500 |
# File 'lib/stripe/resources/payment_method.rb', line 1498 def pay_by_bank @pay_by_bank end |
#payco ⇒ Object (readonly)
Attribute for field payco
1500 1501 1502 |
# File 'lib/stripe/resources/payment_method.rb', line 1500 def payco @payco end |
#paynow ⇒ Object (readonly)
Attribute for field paynow
1502 1503 1504 |
# File 'lib/stripe/resources/payment_method.rb', line 1502 def paynow @paynow end |
#paypal ⇒ Object (readonly)
Attribute for field paypal
1504 1505 1506 |
# File 'lib/stripe/resources/payment_method.rb', line 1504 def paypal @paypal end |
#payto ⇒ Object (readonly)
Attribute for field payto
1506 1507 1508 |
# File 'lib/stripe/resources/payment_method.rb', line 1506 def payto @payto end |
#pix ⇒ Object (readonly)
Attribute for field pix
1508 1509 1510 |
# File 'lib/stripe/resources/payment_method.rb', line 1508 def pix @pix end |
#promptpay ⇒ Object (readonly)
Attribute for field promptpay
1510 1511 1512 |
# File 'lib/stripe/resources/payment_method.rb', line 1510 def promptpay @promptpay end |
#radar_options ⇒ Object (readonly)
Options to configure Radar. See [Radar Session](docs.stripe.com/radar/radar-session) for more information.
1512 1513 1514 |
# File 'lib/stripe/resources/payment_method.rb', line 1512 def end |
#revolut_pay ⇒ Object (readonly)
Attribute for field revolut_pay
1514 1515 1516 |
# File 'lib/stripe/resources/payment_method.rb', line 1514 def revolut_pay @revolut_pay end |
#samsung_pay ⇒ Object (readonly)
Attribute for field samsung_pay
1516 1517 1518 |
# File 'lib/stripe/resources/payment_method.rb', line 1516 def samsung_pay @samsung_pay end |
#satispay ⇒ Object (readonly)
Attribute for field satispay
1518 1519 1520 |
# File 'lib/stripe/resources/payment_method.rb', line 1518 def satispay @satispay end |
#sepa_debit ⇒ Object (readonly)
Attribute for field sepa_debit
1520 1521 1522 |
# File 'lib/stripe/resources/payment_method.rb', line 1520 def sepa_debit @sepa_debit end |
#sofort ⇒ Object (readonly)
Attribute for field sofort
1522 1523 1524 |
# File 'lib/stripe/resources/payment_method.rb', line 1522 def sofort @sofort end |
#swish ⇒ Object (readonly)
Attribute for field swish
1524 1525 1526 |
# File 'lib/stripe/resources/payment_method.rb', line 1524 def swish @swish end |
#twint ⇒ Object (readonly)
Attribute for field twint
1526 1527 1528 |
# File 'lib/stripe/resources/payment_method.rb', line 1526 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.
1528 1529 1530 |
# File 'lib/stripe/resources/payment_method.rb', line 1528 def type @type end |
#us_bank_account ⇒ Object (readonly)
Attribute for field us_bank_account
1530 1531 1532 |
# File 'lib/stripe/resources/payment_method.rb', line 1530 def us_bank_account @us_bank_account end |
#wechat_pay ⇒ Object (readonly)
Attribute for field wechat_pay
1532 1533 1534 |
# File 'lib/stripe/resources/payment_method.rb', line 1532 def wechat_pay @wechat_pay end |
#zip ⇒ Object (readonly)
Attribute for field zip
1534 1535 1536 |
# File 'lib/stripe/resources/payment_method.rb', line 1534 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.
1571 1572 1573 1574 1575 1576 1577 1578 |
# File 'lib/stripe/resources/payment_method.rb', line 1571 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.
1583 1584 1585 |
# File 'lib/stripe/resources/payment_method.rb', line 1583 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.
1598 1599 1600 1601 1602 1603 1604 1605 |
# File 'lib/stripe/resources/payment_method.rb', line 1598 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
1682 1683 1684 |
# File 'lib/stripe/resources/payment_method.rb', line 1682 def self.field_remappings @field_remappings = {} end |
.inner_class_types ⇒ Object
1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 |
# File 'lib/stripe/resources/payment_method.rb', line 1622 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, grabpay: Grabpay, 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, payto: Payto, pix: Pix, promptpay: Promptpay, radar_options: RadarOptions, revolut_pay: RevolutPay, samsung_pay: SamsungPay, satispay: Satispay, sepa_debit: SepaDebit, sofort: Sofort, swish: Swish, twint: Twint, us_bank_account: UsBankAccount, wechat_pay: WechatPay, zip: Zip, } end |
.list(params = {}, opts = {}) ⇒ Object
Returns a list of all PaymentMethods.
1608 1609 1610 |
# File 'lib/stripe/resources/payment_method.rb', line 1608 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.
1613 1614 1615 1616 1617 1618 1619 1620 |
# File 'lib/stripe/resources/payment_method.rb', line 1613 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.
1549 1550 1551 1552 1553 1554 1555 1556 |
# File 'lib/stripe/resources/payment_method.rb', line 1549 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.
1588 1589 1590 1591 1592 1593 1594 1595 |
# File 'lib/stripe/resources/payment_method.rb', line 1588 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 |