Class: Stripe::PaymentMethodConfiguration

Inherits:
APIResource show all
Extended by:
APIOperations::Create, APIOperations::List
Includes:
APIOperations::Save
Defined in:
lib/stripe/resources/payment_method_configuration.rb

Overview

PaymentMethodConfigurations control which payment methods are displayed to your customers when you don’t explicitly specify payment method types. You can have multiple configurations with different sets of payment methods for different scenarios.

There are two types of PaymentMethodConfigurations. Which is used depends on the [charge type](docs.stripe.com/connect/charges):

Direct configurations apply to payments created on your account, including Connect destination charges, Connect separate charges and transfers, and payments not involving Connect.

Child configurations apply to payments created on your connected accounts using direct charges, and charges with the on_behalf_of parameter.

Child configurations have a ‘parent` that sets default values and controls which settings connected accounts may override. You can specify a parent ID at payment time, and Stripe will automatically resolve the connected account’s associated child configuration. Parent configurations are [managed in the dashboard](dashboard.stripe.com/settings/payment_methods/connected_accounts) and are not available in this API.

Related guides:

Defined Under Namespace

Classes: AcssDebit, Affirm, AfterpayClearpay, Alipay, Alma, AmazonPay, ApplePay, AuBecsDebit, BacsDebit, Bancontact, Billie, Bizum, Blik, Boleto, Card, CartesBancaires, Cashapp, Crypto, CustomerBalance, Eps, Fpx, Giropay, GooglePay, Grabpay, Ideal, Jcb, KakaoPay, Klarna, Konbini, KrCard, Link, MbWay, Mobilepay, Multibanco, NaverPay, NzBankAccount, Oxxo, P24, PayByBank, Payco, Paynow, Paypal, Payto, Pix, Promptpay, RevolutPay, SamsungPay, Satispay, Scalapay, SepaDebit, Sofort, Sunbit, Swish, Twint, Upi, UsBankAccount, WechatPay, Zip

Constant Summary collapse

OBJECT_NAME =
"payment_method_configuration"

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

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



1827
1828
1829
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1827

def acss_debit
  @acss_debit
end

#activeObject (readonly)

Whether the configuration can be used for new payments.



1829
1830
1831
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1829

def active
  @active
end

#affirmObject (readonly)

Attribute for field affirm



1831
1832
1833
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1831

def affirm
  @affirm
end

#afterpay_clearpayObject (readonly)

Attribute for field afterpay_clearpay



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

def afterpay_clearpay
  @afterpay_clearpay
end

#alipayObject (readonly)

Attribute for field alipay



1835
1836
1837
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1835

def alipay
  @alipay
end

#almaObject (readonly)

Attribute for field alma



1837
1838
1839
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1837

def alma
  @alma
end

#amazon_payObject (readonly)

Attribute for field amazon_pay



1839
1840
1841
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1839

def amazon_pay
  @amazon_pay
end

#apple_payObject (readonly)

Attribute for field apple_pay



1841
1842
1843
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1841

def apple_pay
  @apple_pay
end

#applicationObject (readonly)

For child configs, the Connect application associated with the configuration.



1843
1844
1845
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1843

def application
  @application
end

#au_becs_debitObject (readonly)

Attribute for field au_becs_debit



1845
1846
1847
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1845

def au_becs_debit
  @au_becs_debit
end

#bacs_debitObject (readonly)

Attribute for field bacs_debit



1847
1848
1849
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1847

def bacs_debit
  @bacs_debit
end

#bancontactObject (readonly)

Attribute for field bancontact



1849
1850
1851
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1849

def bancontact
  @bancontact
end

#billieObject (readonly)

Attribute for field billie



1851
1852
1853
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1851

def billie
  @billie
end

#bizumObject (readonly)

Attribute for field bizum



1853
1854
1855
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1853

def bizum
  @bizum
end

#blikObject (readonly)

Attribute for field blik



1855
1856
1857
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1855

def blik
  @blik
end

#boletoObject (readonly)

Attribute for field boleto



1857
1858
1859
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1857

def boleto
  @boleto
end

#cardObject (readonly)

Attribute for field card



1859
1860
1861
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1859

def card
  @card
end

#cartes_bancairesObject (readonly)

Attribute for field cartes_bancaires



1861
1862
1863
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1861

def cartes_bancaires
  @cartes_bancaires
end

#cashappObject (readonly)

Attribute for field cashapp



1863
1864
1865
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1863

def cashapp
  @cashapp
end

#cryptoObject (readonly)

Attribute for field crypto



1865
1866
1867
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1865

def crypto
  @crypto
end

#customer_balanceObject (readonly)

Attribute for field customer_balance



1867
1868
1869
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1867

def customer_balance
  @customer_balance
end

#epsObject (readonly)

Attribute for field eps



1869
1870
1871
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1869

def eps
  @eps
end

#fpxObject (readonly)

Attribute for field fpx



1871
1872
1873
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1871

def fpx
  @fpx
end

#giropayObject (readonly)

Attribute for field giropay



1873
1874
1875
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1873

def giropay
  @giropay
end

#google_payObject (readonly)

Attribute for field google_pay



1875
1876
1877
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1875

def google_pay
  @google_pay
end

#grabpayObject (readonly)

Attribute for field grabpay



1877
1878
1879
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1877

def grabpay
  @grabpay
end

#idObject (readonly)

Unique identifier for the object.



1879
1880
1881
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1879

def id
  @id
end

#idealObject (readonly)

Attribute for field ideal



1881
1882
1883
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1881

def ideal
  @ideal
end

#is_defaultObject (readonly)

The default configuration is used whenever a payment method configuration is not specified.



1883
1884
1885
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1883

def is_default
  @is_default
end

#jcbObject (readonly)

Attribute for field jcb



1885
1886
1887
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1885

def jcb
  @jcb
end

#kakao_payObject (readonly)

Attribute for field kakao_pay



1887
1888
1889
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1887

def kakao_pay
  @kakao_pay
end

#klarnaObject (readonly)

Attribute for field klarna



1889
1890
1891
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1889

def klarna
  @klarna
end

#konbiniObject (readonly)

Attribute for field konbini



1891
1892
1893
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1891

def konbini
  @konbini
end

#kr_cardObject (readonly)

Attribute for field kr_card



1893
1894
1895
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1893

def kr_card
  @kr_card
end

Attribute for field link



1895
1896
1897
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1895

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`.



1897
1898
1899
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1897

def livemode
  @livemode
end

#mb_wayObject (readonly)

Attribute for field mb_way



1899
1900
1901
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1899

def mb_way
  @mb_way
end

#mobilepayObject (readonly)

Attribute for field mobilepay



1901
1902
1903
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1901

def mobilepay
  @mobilepay
end

#multibancoObject (readonly)

Attribute for field multibanco



1903
1904
1905
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1903

def multibanco
  @multibanco
end

#nameObject (readonly)

The configuration’s name.



1905
1906
1907
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1905

def name
  @name
end

Attribute for field naver_pay



1907
1908
1909
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1907

def naver_pay
  @naver_pay
end

#nz_bank_accountObject (readonly)

Attribute for field nz_bank_account



1909
1910
1911
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1909

def 
  @nz_bank_account
end

#objectObject (readonly)

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



1911
1912
1913
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1911

def object
  @object
end

#oxxoObject (readonly)

Attribute for field oxxo



1913
1914
1915
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1913

def oxxo
  @oxxo
end

#p24Object (readonly)

Attribute for field p24



1915
1916
1917
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1915

def p24
  @p24
end

#parentObject (readonly)

For child configs, the configuration’s parent configuration.



1917
1918
1919
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1917

def parent
  @parent
end

#pay_by_bankObject (readonly)

Attribute for field pay_by_bank



1919
1920
1921
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1919

def pay_by_bank
  @pay_by_bank
end

#paycoObject (readonly)

Attribute for field payco



1921
1922
1923
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1921

def payco
  @payco
end

#paynowObject (readonly)

Attribute for field paynow



1923
1924
1925
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1923

def paynow
  @paynow
end

#paypalObject (readonly)

Attribute for field paypal



1925
1926
1927
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1925

def paypal
  @paypal
end

#paytoObject (readonly)

Attribute for field payto



1927
1928
1929
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1927

def payto
  @payto
end

#pixObject (readonly)

Attribute for field pix



1929
1930
1931
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1929

def pix
  @pix
end

#promptpayObject (readonly)

Attribute for field promptpay



1931
1932
1933
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1931

def promptpay
  @promptpay
end

#revolut_payObject (readonly)

Attribute for field revolut_pay



1933
1934
1935
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1933

def revolut_pay
  @revolut_pay
end

#samsung_payObject (readonly)

Attribute for field samsung_pay



1935
1936
1937
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1935

def samsung_pay
  @samsung_pay
end

#satispayObject (readonly)

Attribute for field satispay



1937
1938
1939
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1937

def satispay
  @satispay
end

#scalapayObject (readonly)

Attribute for field scalapay



1939
1940
1941
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1939

def scalapay
  @scalapay
end

#sepa_debitObject (readonly)

Attribute for field sepa_debit



1941
1942
1943
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1941

def sepa_debit
  @sepa_debit
end

#sofortObject (readonly)

Attribute for field sofort



1943
1944
1945
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1943

def sofort
  @sofort
end

#sunbitObject (readonly)

Attribute for field sunbit



1945
1946
1947
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1945

def sunbit
  @sunbit
end

#swishObject (readonly)

Attribute for field swish



1947
1948
1949
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1947

def swish
  @swish
end

#twintObject (readonly)

Attribute for field twint



1949
1950
1951
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1949

def twint
  @twint
end

#upiObject (readonly)

Attribute for field upi



1951
1952
1953
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1951

def upi
  @upi
end

#us_bank_accountObject (readonly)

Attribute for field us_bank_account



1953
1954
1955
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1953

def 
  @us_bank_account
end

#wechat_payObject (readonly)

Attribute for field wechat_pay



1955
1956
1957
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1955

def wechat_pay
  @wechat_pay
end

#zipObject (readonly)

Attribute for field zip



1957
1958
1959
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1957

def zip
  @zip
end

Class Method Details

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

Creates a payment method configuration



1960
1961
1962
1963
1964
1965
1966
1967
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1960

def self.create(params = {}, opts = {})
  request_stripe_object(
    method: :post,
    path: "/v1/payment_method_configurations",
    params: params,
    opts: opts
  )
end

.field_remappingsObject



2052
2053
2054
# File 'lib/stripe/resources/payment_method_configuration.rb', line 2052

def self.field_remappings
  @field_remappings = {}
end

.inner_class_typesObject



1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1989

def self.inner_class_types
  @inner_class_types = {
    acss_debit: AcssDebit,
    affirm: Affirm,
    afterpay_clearpay: AfterpayClearpay,
    alipay: Alipay,
    alma: Alma,
    amazon_pay: AmazonPay,
    apple_pay: ApplePay,
    au_becs_debit: AuBecsDebit,
    bacs_debit: BacsDebit,
    bancontact: Bancontact,
    billie: Billie,
    bizum: Bizum,
    blik: Blik,
    boleto: Boleto,
    card: Card,
    cartes_bancaires: CartesBancaires,
    cashapp: Cashapp,
    crypto: Crypto,
    customer_balance: CustomerBalance,
    eps: Eps,
    fpx: Fpx,
    giropay: Giropay,
    google_pay: GooglePay,
    grabpay: Grabpay,
    ideal: Ideal,
    jcb: Jcb,
    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,
    revolut_pay: RevolutPay,
    samsung_pay: SamsungPay,
    satispay: Satispay,
    scalapay: Scalapay,
    sepa_debit: SepaDebit,
    sofort: Sofort,
    sunbit: Sunbit,
    swish: Swish,
    twint: Twint,
    upi: Upi,
    us_bank_account: UsBankAccount,
    wechat_pay: WechatPay,
    zip: Zip,
  }
end

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

List payment method configurations



1970
1971
1972
1973
1974
1975
1976
1977
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1970

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

.object_nameObject



25
26
27
# File 'lib/stripe/resources/payment_method_configuration.rb', line 25

def self.object_name
  "payment_method_configuration"
end

.update(configuration, params = {}, opts = {}) ⇒ Object

Update payment method configuration



1980
1981
1982
1983
1984
1985
1986
1987
# File 'lib/stripe/resources/payment_method_configuration.rb', line 1980

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