Class: Stripe::PaymentLink
- Inherits:
-
APIResource
- Object
- StripeObject
- APIResource
- Stripe::PaymentLink
- Extended by:
- APIOperations::Create, APIOperations::List
- Includes:
- APIOperations::Save
- Defined in:
- lib/stripe/resources/payment_link.rb
Overview
A payment link is a shareable URL that will take your customers to a hosted payment page. A payment link can be shared and used multiple times.
When a customer opens a payment link it will open a new [checkout session](stripe.com/docs/api/checkout/sessions) to render the payment page. You can use [checkout session events](stripe.com/docs/api/events/types#event_types-checkout.session.completed) to track payments through payment links.
Related guide: [Payment Links API](stripe.com/docs/payment-links)
Defined Under Namespace
Classes: AfterCompletion, AutomaticTax, ConsentCollection, CreateParams, CustomField, CustomText, InvoiceCreation, ListLineItemsParams, ListParams, OptionalItem, PaymentIntentData, PhoneNumberCollection, Restrictions, ShippingAddressCollection, ShippingOption, SubscriptionData, TaxIdCollection, TransferData, UpdateParams
Constant Summary collapse
- OBJECT_NAME =
"payment_link"
Constants inherited from StripeObject
StripeObject::RESERVED_FIELD_NAMES
Instance Attribute Summary collapse
-
#active ⇒ Object
readonly
Whether the payment link’s ‘url` is active.
-
#after_completion ⇒ Object
readonly
Attribute for field after_completion.
-
#allow_promotion_codes ⇒ Object
readonly
Whether user redeemable promotion codes are enabled.
-
#application ⇒ Object
readonly
The ID of the Connect application that created the Payment Link.
-
#application_fee_amount ⇒ Object
readonly
The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner’s Stripe account.
-
#application_fee_percent ⇒ Object
readonly
This represents the percentage of the subscription invoice total that will be transferred to the application owner’s Stripe account.
-
#automatic_tax ⇒ Object
readonly
Attribute for field automatic_tax.
-
#billing_address_collection ⇒ Object
readonly
Configuration for collecting the customer’s billing address.
-
#consent_collection ⇒ Object
readonly
When set, provides configuration to gather active consent from customers.
-
#currency ⇒ Object
readonly
Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase.
-
#custom_fields ⇒ Object
readonly
Collect additional information from your customer using custom fields.
-
#custom_text ⇒ Object
readonly
Attribute for field custom_text.
-
#customer_creation ⇒ Object
readonly
Configuration for Customer creation during checkout.
-
#id ⇒ Object
readonly
Unique identifier for the object.
-
#inactive_message ⇒ Object
readonly
The custom message to be displayed to a customer when a payment link is no longer active.
-
#invoice_creation ⇒ Object
readonly
Configuration for creating invoice for payment mode payment links.
-
#line_items ⇒ Object
readonly
The line items representing what is being sold.
-
#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.
-
#metadata ⇒ Object
readonly
Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to an object.
-
#object ⇒ Object
readonly
String representing the object’s type.
-
#on_behalf_of ⇒ Object
readonly
The account on behalf of which to charge.
-
#optional_items ⇒ Object
readonly
The optional items presented to the customer at checkout.
-
#payment_intent_data ⇒ Object
readonly
Indicates the parameters to be passed to PaymentIntent creation during checkout.
-
#payment_method_collection ⇒ Object
readonly
Configuration for collecting a payment method during checkout.
-
#payment_method_types ⇒ Object
readonly
The list of payment method types that customers can use.
-
#phone_number_collection ⇒ Object
readonly
Attribute for field phone_number_collection.
-
#restrictions ⇒ Object
readonly
Settings that restrict the usage of a payment link.
-
#shipping_address_collection ⇒ Object
readonly
Configuration for collecting the customer’s shipping address.
-
#shipping_options ⇒ Object
readonly
The shipping rate options applied to the session.
-
#submit_type ⇒ Object
readonly
Indicates the type of transaction being performed which customizes relevant text on the page, such as the submit button.
-
#subscription_data ⇒ Object
readonly
When creating a subscription, the specified configuration data will be used.
-
#tax_id_collection ⇒ Object
readonly
Attribute for field tax_id_collection.
-
#transfer_data ⇒ Object
readonly
The account (if any) the payments will be attributed to for tax reporting, and where funds from each payment will be transferred to.
-
#url ⇒ Object
readonly
The public URL that can be shared with customers.
Attributes inherited from APIResource
Attributes inherited from StripeObject
Class Method Summary collapse
-
.create(params = {}, opts = {}) ⇒ Object
Creates a payment link.
- .field_remappings ⇒ Object
- .inner_class_types ⇒ Object
-
.list(params = {}, opts = {}) ⇒ Object
Returns a list of your payment links.
-
.list_line_items(payment_link, params = {}, opts = {}) ⇒ Object
When retrieving a payment link, there is an includable line_items property containing the first handful of those items.
- .object_name ⇒ Object
-
.update(payment_link, params = {}, opts = {}) ⇒ Object
Updates a payment link.
Instance Method Summary collapse
-
#list_line_items(params = {}, opts = {}) ⇒ Object
When retrieving a payment link, there is an includable line_items property containing the first handful of those items.
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
#active ⇒ Object (readonly)
Whether the payment link’s ‘url` is active. If `false`, customers visiting the URL will be shown a page saying that the link has been deactivated.
1975 1976 1977 |
# File 'lib/stripe/resources/payment_link.rb', line 1975 def active @active end |
#after_completion ⇒ Object (readonly)
Attribute for field after_completion
1977 1978 1979 |
# File 'lib/stripe/resources/payment_link.rb', line 1977 def after_completion @after_completion end |
#allow_promotion_codes ⇒ Object (readonly)
Whether user redeemable promotion codes are enabled.
1979 1980 1981 |
# File 'lib/stripe/resources/payment_link.rb', line 1979 def allow_promotion_codes @allow_promotion_codes end |
#application ⇒ Object (readonly)
The ID of the Connect application that created the Payment Link.
1981 1982 1983 |
# File 'lib/stripe/resources/payment_link.rb', line 1981 def application @application end |
#application_fee_amount ⇒ Object (readonly)
The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner’s Stripe account.
1983 1984 1985 |
# File 'lib/stripe/resources/payment_link.rb', line 1983 def application_fee_amount @application_fee_amount end |
#application_fee_percent ⇒ Object (readonly)
This represents the percentage of the subscription invoice total that will be transferred to the application owner’s Stripe account.
1985 1986 1987 |
# File 'lib/stripe/resources/payment_link.rb', line 1985 def application_fee_percent @application_fee_percent end |
#automatic_tax ⇒ Object (readonly)
Attribute for field automatic_tax
1987 1988 1989 |
# File 'lib/stripe/resources/payment_link.rb', line 1987 def automatic_tax @automatic_tax end |
#billing_address_collection ⇒ Object (readonly)
Configuration for collecting the customer’s billing address. Defaults to ‘auto`.
1989 1990 1991 |
# File 'lib/stripe/resources/payment_link.rb', line 1989 def billing_address_collection @billing_address_collection end |
#consent_collection ⇒ Object (readonly)
When set, provides configuration to gather active consent from customers.
1991 1992 1993 |
# File 'lib/stripe/resources/payment_link.rb', line 1991 def @consent_collection end |
#currency ⇒ Object (readonly)
Three-letter [ISO currency code](www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](stripe.com/docs/currencies).
1993 1994 1995 |
# File 'lib/stripe/resources/payment_link.rb', line 1993 def currency @currency end |
#custom_fields ⇒ Object (readonly)
Collect additional information from your customer using custom fields. Up to 3 fields are supported.
1995 1996 1997 |
# File 'lib/stripe/resources/payment_link.rb', line 1995 def custom_fields @custom_fields end |
#custom_text ⇒ Object (readonly)
Attribute for field custom_text
1997 1998 1999 |
# File 'lib/stripe/resources/payment_link.rb', line 1997 def custom_text @custom_text end |
#customer_creation ⇒ Object (readonly)
Configuration for Customer creation during checkout.
1999 2000 2001 |
# File 'lib/stripe/resources/payment_link.rb', line 1999 def customer_creation @customer_creation end |
#id ⇒ Object (readonly)
Unique identifier for the object.
2001 2002 2003 |
# File 'lib/stripe/resources/payment_link.rb', line 2001 def id @id end |
#inactive_message ⇒ Object (readonly)
The custom message to be displayed to a customer when a payment link is no longer active.
2003 2004 2005 |
# File 'lib/stripe/resources/payment_link.rb', line 2003 def @inactive_message end |
#invoice_creation ⇒ Object (readonly)
Configuration for creating invoice for payment mode payment links.
2005 2006 2007 |
# File 'lib/stripe/resources/payment_link.rb', line 2005 def invoice_creation @invoice_creation end |
#line_items ⇒ Object (readonly)
The line items representing what is being sold.
2007 2008 2009 |
# File 'lib/stripe/resources/payment_link.rb', line 2007 def line_items @line_items 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.
2009 2010 2011 |
# File 'lib/stripe/resources/payment_link.rb', line 2009 def livemode @livemode 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.
2011 2012 2013 |
# File 'lib/stripe/resources/payment_link.rb', line 2011 def @metadata end |
#object ⇒ Object (readonly)
String representing the object’s type. Objects of the same type share the same value.
2013 2014 2015 |
# File 'lib/stripe/resources/payment_link.rb', line 2013 def object @object end |
#on_behalf_of ⇒ Object (readonly)
The account on behalf of which to charge. See the [Connect documentation](support.stripe.com/questions/sending-invoices-on-behalf-of-connected-accounts) for details.
2015 2016 2017 |
# File 'lib/stripe/resources/payment_link.rb', line 2015 def on_behalf_of @on_behalf_of end |
#optional_items ⇒ Object (readonly)
The optional items presented to the customer at checkout.
2017 2018 2019 |
# File 'lib/stripe/resources/payment_link.rb', line 2017 def optional_items @optional_items end |
#payment_intent_data ⇒ Object (readonly)
Indicates the parameters to be passed to PaymentIntent creation during checkout.
2019 2020 2021 |
# File 'lib/stripe/resources/payment_link.rb', line 2019 def payment_intent_data @payment_intent_data end |
#payment_method_collection ⇒ Object (readonly)
Configuration for collecting a payment method during checkout. Defaults to ‘always`.
2021 2022 2023 |
# File 'lib/stripe/resources/payment_link.rb', line 2021 def payment_method_collection @payment_method_collection end |
#payment_method_types ⇒ Object (readonly)
The list of payment method types that customers can use. When ‘null`, Stripe will dynamically show relevant payment methods you’ve enabled in your [payment method settings](dashboard.stripe.com/settings/payment_methods).
2023 2024 2025 |
# File 'lib/stripe/resources/payment_link.rb', line 2023 def payment_method_types @payment_method_types end |
#phone_number_collection ⇒ Object (readonly)
Attribute for field phone_number_collection
2025 2026 2027 |
# File 'lib/stripe/resources/payment_link.rb', line 2025 def phone_number_collection @phone_number_collection end |
#restrictions ⇒ Object (readonly)
Settings that restrict the usage of a payment link.
2027 2028 2029 |
# File 'lib/stripe/resources/payment_link.rb', line 2027 def restrictions @restrictions end |
#shipping_address_collection ⇒ Object (readonly)
Configuration for collecting the customer’s shipping address.
2029 2030 2031 |
# File 'lib/stripe/resources/payment_link.rb', line 2029 def shipping_address_collection @shipping_address_collection end |
#shipping_options ⇒ Object (readonly)
The shipping rate options applied to the session.
2031 2032 2033 |
# File 'lib/stripe/resources/payment_link.rb', line 2031 def @shipping_options end |
#submit_type ⇒ Object (readonly)
Indicates the type of transaction being performed which customizes relevant text on the page, such as the submit button.
2033 2034 2035 |
# File 'lib/stripe/resources/payment_link.rb', line 2033 def submit_type @submit_type end |
#subscription_data ⇒ Object (readonly)
When creating a subscription, the specified configuration data will be used. There must be at least one line item with a recurring price to use ‘subscription_data`.
2035 2036 2037 |
# File 'lib/stripe/resources/payment_link.rb', line 2035 def subscription_data @subscription_data end |
#tax_id_collection ⇒ Object (readonly)
Attribute for field tax_id_collection
2037 2038 2039 |
# File 'lib/stripe/resources/payment_link.rb', line 2037 def tax_id_collection @tax_id_collection end |
#transfer_data ⇒ Object (readonly)
The account (if any) the payments will be attributed to for tax reporting, and where funds from each payment will be transferred to.
2039 2040 2041 |
# File 'lib/stripe/resources/payment_link.rb', line 2039 def transfer_data @transfer_data end |
#url ⇒ Object (readonly)
The public URL that can be shared with customers.
2041 2042 2043 |
# File 'lib/stripe/resources/payment_link.rb', line 2041 def url @url end |
Class Method Details
.create(params = {}, opts = {}) ⇒ Object
Creates a payment link.
2044 2045 2046 |
# File 'lib/stripe/resources/payment_link.rb', line 2044 def self.create(params = {}, opts = {}) request_stripe_object(method: :post, path: "/v1/payment_links", params: params, opts: opts) end |
.field_remappings ⇒ Object
2103 2104 2105 |
# File 'lib/stripe/resources/payment_link.rb', line 2103 def self.field_remappings @field_remappings = {} end |
.inner_class_types ⇒ Object
2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 |
# File 'lib/stripe/resources/payment_link.rb', line 2083 def self.inner_class_types @inner_class_types = { after_completion: AfterCompletion, automatic_tax: AutomaticTax, consent_collection: ConsentCollection, custom_fields: CustomField, custom_text: CustomText, invoice_creation: InvoiceCreation, optional_items: OptionalItem, payment_intent_data: PaymentIntentData, phone_number_collection: PhoneNumberCollection, restrictions: Restrictions, shipping_address_collection: ShippingAddressCollection, shipping_options: ShippingOption, subscription_data: SubscriptionData, tax_id_collection: TaxIdCollection, transfer_data: TransferData, } end |
.list(params = {}, opts = {}) ⇒ Object
Returns a list of your payment links.
2049 2050 2051 |
# File 'lib/stripe/resources/payment_link.rb', line 2049 def self.list(params = {}, opts = {}) request_stripe_object(method: :get, path: "/v1/payment_links", params: params, opts: opts) end |
.list_line_items(payment_link, params = {}, opts = {}) ⇒ Object
When retrieving a payment link, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
2064 2065 2066 2067 2068 2069 2070 2071 |
# File 'lib/stripe/resources/payment_link.rb', line 2064 def self.list_line_items(payment_link, params = {}, opts = {}) request_stripe_object( method: :get, path: format("/v1/payment_links/%<payment_link>s/line_items", { payment_link: CGI.escape(payment_link) }), params: params, opts: opts ) end |
.object_name ⇒ Object
16 17 18 |
# File 'lib/stripe/resources/payment_link.rb', line 16 def self.object_name "payment_link" end |
.update(payment_link, params = {}, opts = {}) ⇒ Object
Updates a payment link.
2074 2075 2076 2077 2078 2079 2080 2081 |
# File 'lib/stripe/resources/payment_link.rb', line 2074 def self.update(payment_link, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/payment_links/%<payment_link>s", { payment_link: CGI.escape(payment_link) }), params: params, opts: opts ) end |
Instance Method Details
#list_line_items(params = {}, opts = {}) ⇒ Object
When retrieving a payment link, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
2054 2055 2056 2057 2058 2059 2060 2061 |
# File 'lib/stripe/resources/payment_link.rb', line 2054 def list_line_items(params = {}, opts = {}) request_stripe_object( method: :get, path: format("/v1/payment_links/%<payment_link>s/line_items", { payment_link: CGI.escape(self["id"]) }), params: params, opts: opts ) end |