Class: PaypalServerSdk::OrderApplicationContext

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/paypal_server_sdk/models/order_application_context.rb

Overview

Customizes the payer experience during the approval process for the payment with PayPal.<blockquote><strong>Note:</strong> Partners and Marketplaces might configure brand_name and shipping_preference during partner account setup, which overrides the request values.</blockquote>

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#to_hash, #to_json

Constructor Details

#initialize(brand_name: SKIP, locale: SKIP, landing_page: OrderApplicationContextLandingPage::NO_PREFERENCE, shipping_preference: OrderApplicationContextShippingPreference::GET_FROM_FILE, user_action: OrderApplicationContextUserAction::CONTINUE, payment_method: SKIP, return_url: SKIP, cancel_url: SKIP, stored_payment_source: SKIP) ⇒ OrderApplicationContext

Returns a new instance of OrderApplicationContext.



142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 142

def initialize(
  brand_name: SKIP, locale: SKIP,
  landing_page: OrderApplicationContextLandingPage::NO_PREFERENCE,
  shipping_preference: OrderApplicationContextShippingPreference::GET_FROM_FILE,
  user_action: OrderApplicationContextUserAction::CONTINUE,
  payment_method: SKIP, return_url: SKIP, cancel_url: SKIP,
  stored_payment_source: SKIP
)
  @brand_name = brand_name unless brand_name == SKIP
  @locale = locale unless locale == SKIP
  @landing_page = landing_page unless landing_page == SKIP
  @shipping_preference = shipping_preference unless shipping_preference == SKIP
  @user_action = user_action unless user_action == SKIP
  @payment_method = payment_method unless payment_method == SKIP
  @return_url = return_url unless return_url == SKIP
  @cancel_url = cancel_url unless cancel_url == SKIP
  @stored_payment_source = stored_payment_source unless stored_payment_source == SKIP
end

Instance Attribute Details

#brand_nameString

DEPRECATED. The label that overrides the business name in the PayPal account on the PayPal site. The fields in ‘application_context` are now available in the `experience_context` object under the `payment_source` which supports them (eg. `payment_source.paypal.experience_context.brand_name`). Please specify this field in the `experience_context` object instead of the `application_context` object.

Returns:

  • (String)


24
25
26
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 24

def brand_name
  @brand_name
end

#cancel_urlString

DEPRECATED. The URL where the customer is redirected after the customer cancels the payment. The fields in ‘application_context` are now available in the `experience_context` object under the `payment_source` which supports them (eg. `payment_source.paypal.experience_context.cancel_url`). Please specify this field in the `experience_context` object instead of the `application_context` object.

Returns:

  • (String)


90
91
92
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 90

def cancel_url
  @cancel_url
end

#landing_pageOrderApplicationContextLandingPage

DEPRECATED. DEPRECATED. The type of landing page to show on the PayPal site for customer checkout. The fields in ‘application_context` are now available in the `experience_context` object under the `payment_source` which supports them (eg. `payment_source.paypal.experience_context.landing_page`). Please specify this field in the `experience_context` object instead of the `application_context` object.



45
46
47
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 45

def landing_page
  @landing_page
end

#localeString

The [language tag](tools.ietf.org/html/bcp47#section-2) for the language in which to localize the error-related strings, such as messages, issues, and suggested actions. The tag is made up of the [ISO 639-2 language code](www.loc.gov/standards/iso639-2/php/code_list.php), the optional [ISO-15924 script tag](www.unicode.org/iso15924/codelists.html), and the [ISO-3166 alpha-2 country code](/api/rest/reference/country-codes/) or [M49 region code](unstats.un.org/unsd/methodology/m49/).

Returns:

  • (String)


35
36
37
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 35

def locale
  @locale
end

#payment_methodPaymentMethodPreference

The customer and merchant payment preferences.



71
72
73
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 71

def payment_method
  @payment_method
end

#return_urlString

DEPRECATED. The URL where the customer is redirected after the customer approves the payment. The fields in ‘application_context` are now available in the `experience_context` object under the `payment_source` which supports them (eg. `payment_source.paypal.experience_context.return_url`). Please specify this field in the `experience_context` object instead of the `application_context` object.

Returns:

  • (String)


81
82
83
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 81

def return_url
  @return_url
end

#shipping_preferenceOrderApplicationContextShippingPreference

DEPRECATED. DEPRECATED. The shipping preference:<ul><li>Displays the shipping address to the customer.</li><li>Enables the customer to choose an address on the PayPal site.</li><li>Restricts the customer from changing the address during the payment-approval process.</li></ul>. The fields in ‘application_context` are now available in the `experience_context` object under the `payment_source` which supports them (eg. `payment_source.paypal.experience_context.shipping_preference`). Please specify this field in the `experience_context` object instead of the `application_context` object.



57
58
59
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 57

def shipping_preference
  @shipping_preference
end

#stored_payment_sourceStoredPaymentSource

Provides additional details to process a payment using a ‘payment_source` that has been stored or is intended to be stored (also referred to as stored_credential or card-on-file).<br/>Parameter compatibility:<br/><ul><li>`payment_type=ONE_TIME` is compatible only with `payment_initiator=CUSTOMER`.</li><li>`usage=FIRST` is compatible only with `payment_initiator=CUSTOMER`.</li><li>`previous_transaction_reference` or `previous_network_transaction_reference` is compatible only with `payment_initiator=MERCHANT`.</li><li>Only one of the parameters - `previous_transaction_reference` and `previous_network_transaction_reference` - can be present in the request.</li></ul>

Returns:



105
106
107
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 105

def stored_payment_source
  @stored_payment_source
end

#user_actionOrderApplicationContextUserAction

DEPRECATED. Configures a <strong>Continue</strong> or <strong>Pay Now</strong> checkout flow. The fields in ‘application_context` are now available in the `experience_context` object under the `payment_source` which supports them (eg. `payment_source.paypal.experience_context.user_action`). Please specify this field in the `experience_context` object instead of the `application_context` object.



67
68
69
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 67

def user_action
  @user_action
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 162

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  brand_name = hash.key?('brand_name') ? hash['brand_name'] : SKIP
  locale = hash.key?('locale') ? hash['locale'] : SKIP
  landing_page =
    hash['landing_page'] ||= OrderApplicationContextLandingPage::NO_PREFERENCE
  shipping_preference =
    hash['shipping_preference'] ||= OrderApplicationContextShippingPreference::GET_FROM_FILE
  user_action =
    hash['user_action'] ||= OrderApplicationContextUserAction::CONTINUE
  payment_method = PaymentMethodPreference.from_hash(hash['payment_method']) if
    hash['payment_method']
  return_url = hash.key?('return_url') ? hash['return_url'] : SKIP
  cancel_url = hash.key?('cancel_url') ? hash['cancel_url'] : SKIP
  stored_payment_source = StoredPaymentSource.from_hash(hash['stored_payment_source']) if
    hash['stored_payment_source']

  # Create object from extracted values.
  OrderApplicationContext.new(brand_name: brand_name,
                              locale: locale,
                              landing_page: landing_page,
                              shipping_preference: shipping_preference,
                              user_action: user_action,
                              payment_method: payment_method,
                              return_url: return_url,
                              cancel_url: cancel_url,
                              stored_payment_source: stored_payment_source)
end

.namesObject

A mapping from model property names to API property names.



108
109
110
111
112
113
114
115
116
117
118
119
120
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 108

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['brand_name'] = 'brand_name'
  @_hash['locale'] = 'locale'
  @_hash['landing_page'] = 'landing_page'
  @_hash['shipping_preference'] = 'shipping_preference'
  @_hash['user_action'] = 'user_action'
  @_hash['payment_method'] = 'payment_method'
  @_hash['return_url'] = 'return_url'
  @_hash['cancel_url'] = 'cancel_url'
  @_hash['stored_payment_source'] = 'stored_payment_source'
  @_hash
end

.nullablesObject

An array for nullable fields



138
139
140
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 138

def self.nullables
  []
end

.optionalsObject

An array for optional fields



123
124
125
126
127
128
129
130
131
132
133
134
135
# File 'lib/paypal_server_sdk/models/order_application_context.rb', line 123

def self.optionals
  %w[
    brand_name
    locale
    landing_page
    shipping_preference
    user_action
    payment_method
    return_url
    cancel_url
    stored_payment_source
  ]
end