paypal-server-sdk 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +17 -17
- data/lib/paypal_server_sdk/controllers/base_controller.rb +1 -1
- data/lib/paypal_server_sdk/controllers/orders_controller.rb +192 -153
- data/lib/paypal_server_sdk/controllers/payments_controller.rb +83 -56
- data/lib/paypal_server_sdk/controllers/vault_controller.rb +50 -50
- data/lib/paypal_server_sdk/models/card_verification_details.rb +15 -2
- data/lib/paypal_server_sdk/models/confirm_order_request.rb +5 -8
- data/lib/paypal_server_sdk/models/{fullfillment_type.rb → fulfillment_type.rb} +2 -2
- data/lib/paypal_server_sdk/models/google_pay_card.rb +114 -0
- data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +11 -2
- data/lib/paypal_server_sdk/models/order.rb +12 -12
- data/lib/paypal_server_sdk/models/order_authorize_response.rb +10 -10
- data/lib/paypal_server_sdk/models/portable_postal_address_medium_grained.rb +116 -0
- data/lib/paypal_server_sdk/models/shipment_carrier.rb +325 -1
- data/lib/paypal_server_sdk/models/shipping_details.rb +1 -1
- data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +1 -1
- data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +1 -1
- data/lib/paypal_server_sdk.rb +149 -147
- metadata +5 -4
- data/lib/paypal_server_sdk/models/processing_instruction.rb +0 -23
@@ -9,14 +9,23 @@ module PaypalServerSdk
|
|
9
9
|
# Shows details for an authorized payment, by ID.
|
10
10
|
# @param [String] authorization_id Required parameter: The ID of the
|
11
11
|
# authorized payment for which to show details.
|
12
|
+
# @param [String] paypal_auth_assertion Optional parameter: An
|
13
|
+
# API-caller-provided JSON Web Token (JWT) assertion that identifies the
|
14
|
+
# merchant. For details, see
|
15
|
+
# [PayPal-Auth-Assertion](/docs/api/reference/api-requests/#paypal-auth-asse
|
16
|
+
# rtion).<blockquote><strong>Note:</strong>For three party transactions in
|
17
|
+
# which a partner is managing the API calls on behalf of a merchant, the
|
18
|
+
# partner must identify the merchant using either a PayPal-Auth-Assertion
|
19
|
+
# header or an access token with target_subject.</blockquote>
|
12
20
|
# @return [ApiResponse] the complete http response with raw body and status code.
|
13
|
-
def authorizations_get(
|
21
|
+
def authorizations_get(options = {})
|
14
22
|
new_api_call_builder
|
15
23
|
.request(new_request_builder(HttpMethodEnum::GET,
|
16
24
|
'/v2/payments/authorizations/{authorization_id}',
|
17
25
|
Server::DEFAULT)
|
18
|
-
.template_param(new_parameter(authorization_id, key: 'authorization_id')
|
26
|
+
.template_param(new_parameter(options['authorization_id'], key: 'authorization_id')
|
19
27
|
.should_encode(true))
|
28
|
+
.header_param(new_parameter(options['paypal_auth_assertion'], key: 'PayPal-Auth-Assertion'))
|
20
29
|
.header_param(new_parameter('application/json', key: 'accept'))
|
21
30
|
.auth(Single.new('Oauth2')))
|
22
31
|
.response(new_response_handler
|
@@ -27,10 +36,6 @@ module PaypalServerSdk
|
|
27
36
|
'Authentication failed due to missing authorization header, or'\
|
28
37
|
' invalid authentication credentials.',
|
29
38
|
ErrorException)
|
30
|
-
.local_error('403',
|
31
|
-
'The request failed because the caller has insufficient'\
|
32
|
-
' permissions.',
|
33
|
-
ErrorException)
|
34
39
|
.local_error('404',
|
35
40
|
'The request failed because the resource does not exist.',
|
36
41
|
ErrorException)
|
@@ -56,6 +61,14 @@ module PaypalServerSdk
|
|
56
61
|
# HATEOAS links.</li><li><code>return=representation</code>. The server
|
57
62
|
# returns a complete resource representation, including the current state of
|
58
63
|
# the resource.</li></ul>
|
64
|
+
# @param [String] paypal_auth_assertion Optional parameter: An
|
65
|
+
# API-caller-provided JSON Web Token (JWT) assertion that identifies the
|
66
|
+
# merchant. For details, see
|
67
|
+
# [PayPal-Auth-Assertion](/docs/api/reference/api-requests/#paypal-auth-asse
|
68
|
+
# rtion).<blockquote><strong>Note:</strong>For three party transactions in
|
69
|
+
# which a partner is managing the API calls on behalf of a merchant, the
|
70
|
+
# partner must identify the merchant using either a PayPal-Auth-Assertion
|
71
|
+
# header or an access token with target_subject.</blockquote>
|
59
72
|
# @param [CaptureRequest] body Optional parameter: Example:
|
60
73
|
# @return [ApiResponse] the complete http response with raw body and status code.
|
61
74
|
def authorizations_capture(options = {})
|
@@ -68,6 +81,7 @@ module PaypalServerSdk
|
|
68
81
|
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
69
82
|
.header_param(new_parameter(options['paypal_request_id'], key: 'PayPal-Request-Id'))
|
70
83
|
.header_param(new_parameter(options['prefer'], key: 'Prefer'))
|
84
|
+
.header_param(new_parameter(options['paypal_auth_assertion'], key: 'PayPal-Auth-Assertion'))
|
71
85
|
.body_param(new_parameter(options['body']))
|
72
86
|
.header_param(new_parameter('application/json', key: 'accept'))
|
73
87
|
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
@@ -108,18 +122,24 @@ module PaypalServerSdk
|
|
108
122
|
.execute
|
109
123
|
end
|
110
124
|
|
111
|
-
#
|
112
|
-
#
|
125
|
+
# Reauthorizes an authorized PayPal account payment, by ID. To ensure that
|
126
|
+
# funds are still available, reauthorize a payment after its initial
|
127
|
+
# three-day honor period expires. Within the 29-day authorization period,
|
128
|
+
# you can issue multiple re-authorizations after the honor period
|
129
|
+
# expires.<br/><br/>If 30 days have transpired since the date of the
|
130
|
+
# original authorization, you must create an authorized payment instead of
|
131
|
+
# reauthorizing the original authorized payment.<br/><br/>A reauthorized
|
132
|
+
# payment itself has a new honor period of three days.<br/><br/>You can
|
133
|
+
# reauthorize an authorized payment from 4 to 29 days after the 3-day honor
|
134
|
+
# period. The allowed amount depends on context and geography, for example
|
135
|
+
# in US it is up to 115% of the original authorized amount, not to exceed an
|
136
|
+
# increase of $75 USD.<br/><br/>Supports only the `amount` request
|
137
|
+
# parameter.<blockquote><strong>Note:</strong> This request is currently not
|
138
|
+
# supported for Partner use cases.</blockquote>
|
113
139
|
# @param [String] authorization_id Required parameter: The PayPal-generated
|
114
|
-
# ID for the authorized payment to
|
115
|
-
# @param [String]
|
116
|
-
#
|
117
|
-
# merchant. For details, see
|
118
|
-
# [PayPal-Auth-Assertion](/docs/api/reference/api-requests/#paypal-auth-asse
|
119
|
-
# rtion).<blockquote><strong>Note:</strong>For three party transactions in
|
120
|
-
# which a partner is managing the API calls on behalf of a merchant, the
|
121
|
-
# partner must identify the merchant using either a PayPal-Auth-Assertion
|
122
|
-
# header or an access token with target_subject.</blockquote>
|
140
|
+
# ID for the authorized payment to reauthorize.
|
141
|
+
# @param [String] paypal_request_id Optional parameter: The server stores
|
142
|
+
# keys for 45 days.
|
123
143
|
# @param [String] prefer Optional parameter: The preferred server response
|
124
144
|
# upon successful completion of the request. Value
|
125
145
|
# is:<ul><li><code>return=minimal</code>. The server returns a minimal
|
@@ -128,20 +148,32 @@ module PaypalServerSdk
|
|
128
148
|
# HATEOAS links.</li><li><code>return=representation</code>. The server
|
129
149
|
# returns a complete resource representation, including the current state of
|
130
150
|
# the resource.</li></ul>
|
151
|
+
# @param [String] paypal_auth_assertion Optional parameter: An
|
152
|
+
# API-caller-provided JSON Web Token (JWT) assertion that identifies the
|
153
|
+
# merchant. For details, see
|
154
|
+
# [PayPal-Auth-Assertion](/docs/api/reference/api-requests/#paypal-auth-asse
|
155
|
+
# rtion).<blockquote><strong>Note:</strong>For three party transactions in
|
156
|
+
# which a partner is managing the API calls on behalf of a merchant, the
|
157
|
+
# partner must identify the merchant using either a PayPal-Auth-Assertion
|
158
|
+
# header or an access token with target_subject.</blockquote>
|
159
|
+
# @param [ReauthorizeRequest] body Optional parameter: Example:
|
131
160
|
# @return [ApiResponse] the complete http response with raw body and status code.
|
132
|
-
def
|
161
|
+
def authorizations_reauthorize(options = {})
|
133
162
|
new_api_call_builder
|
134
163
|
.request(new_request_builder(HttpMethodEnum::POST,
|
135
|
-
'/v2/payments/authorizations/{authorization_id}/
|
164
|
+
'/v2/payments/authorizations/{authorization_id}/reauthorize',
|
136
165
|
Server::DEFAULT)
|
137
166
|
.template_param(new_parameter(options['authorization_id'], key: 'authorization_id')
|
138
167
|
.should_encode(true))
|
139
|
-
.header_param(new_parameter(
|
168
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
169
|
+
.header_param(new_parameter(options['paypal_request_id'], key: 'PayPal-Request-Id'))
|
140
170
|
.header_param(new_parameter(options['prefer'], key: 'Prefer'))
|
171
|
+
.header_param(new_parameter(options['paypal_auth_assertion'], key: 'PayPal-Auth-Assertion'))
|
172
|
+
.body_param(new_parameter(options['body']))
|
141
173
|
.header_param(new_parameter('application/json', key: 'accept'))
|
174
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
142
175
|
.auth(Single.new('Oauth2')))
|
143
176
|
.response(new_response_handler
|
144
|
-
.is_nullable_response(true)
|
145
177
|
.deserializer(APIHelper.method(:custom_type_deserializer))
|
146
178
|
.deserialize_into(PaymentAuthorization.method(:from_hash))
|
147
179
|
.is_api_response(true)
|
@@ -153,17 +185,9 @@ module PaypalServerSdk
|
|
153
185
|
'Authentication failed due to missing authorization header, or'\
|
154
186
|
' invalid authentication credentials.',
|
155
187
|
ErrorException)
|
156
|
-
.local_error('403',
|
157
|
-
'The request failed because the caller has insufficient'\
|
158
|
-
' permissions.',
|
159
|
-
ErrorException)
|
160
188
|
.local_error('404',
|
161
189
|
'The request failed because the resource does not exist.',
|
162
190
|
ErrorException)
|
163
|
-
.local_error('409',
|
164
|
-
'The request failed because a previous call for the given'\
|
165
|
-
' resource is in progress.',
|
166
|
-
ErrorException)
|
167
191
|
.local_error('422',
|
168
192
|
'The request failed because it either is semantically incorrect'\
|
169
193
|
' or failed business validation.',
|
@@ -177,22 +201,18 @@ module PaypalServerSdk
|
|
177
201
|
.execute
|
178
202
|
end
|
179
203
|
|
180
|
-
#
|
181
|
-
#
|
182
|
-
# three-day honor period expires. Within the 29-day authorization period,
|
183
|
-
# you can issue multiple re-authorizations after the honor period
|
184
|
-
# expires.<br/><br/>If 30 days have transpired since the date of the
|
185
|
-
# original authorization, you must create an authorized payment instead of
|
186
|
-
# reauthorizing the original authorized payment.<br/><br/>A reauthorized
|
187
|
-
# payment itself has a new honor period of three days.<br/><br/>You can
|
188
|
-
# reauthorize an authorized payment from 4 to 29 days after the 3-day honor
|
189
|
-
# period. The allowed amount depends on context and geography, for example
|
190
|
-
# in US it is up to 115% of the original authorized amount, not to exceed an
|
191
|
-
# increase of $75 USD.<br/><br/>Supports only the `amount` request
|
192
|
-
# parameter.<blockquote><strong>Note:</strong> This request is currently not
|
193
|
-
# supported for Partner use cases.</blockquote>
|
204
|
+
# Voids, or cancels, an authorized payment, by ID. You cannot void an
|
205
|
+
# authorized payment that has been fully captured.
|
194
206
|
# @param [String] authorization_id Required parameter: The PayPal-generated
|
195
|
-
# ID for the authorized payment to
|
207
|
+
# ID for the authorized payment to void.
|
208
|
+
# @param [String] paypal_auth_assertion Optional parameter: An
|
209
|
+
# API-caller-provided JSON Web Token (JWT) assertion that identifies the
|
210
|
+
# merchant. For details, see
|
211
|
+
# [PayPal-Auth-Assertion](/docs/api/reference/api-requests/#paypal-auth-asse
|
212
|
+
# rtion).<blockquote><strong>Note:</strong>For three party transactions in
|
213
|
+
# which a partner is managing the API calls on behalf of a merchant, the
|
214
|
+
# partner must identify the merchant using either a PayPal-Auth-Assertion
|
215
|
+
# header or an access token with target_subject.</blockquote>
|
196
216
|
# @param [String] paypal_request_id Optional parameter: The server stores
|
197
217
|
# keys for 45 days.
|
198
218
|
# @param [String] prefer Optional parameter: The preferred server response
|
@@ -203,30 +223,24 @@ module PaypalServerSdk
|
|
203
223
|
# HATEOAS links.</li><li><code>return=representation</code>. The server
|
204
224
|
# returns a complete resource representation, including the current state of
|
205
225
|
# the resource.</li></ul>
|
206
|
-
# @param [ReauthorizeRequest] body Optional parameter: Example:
|
207
226
|
# @return [ApiResponse] the complete http response with raw body and status code.
|
208
|
-
def
|
227
|
+
def authorizations_void(options = {})
|
209
228
|
new_api_call_builder
|
210
229
|
.request(new_request_builder(HttpMethodEnum::POST,
|
211
|
-
'/v2/payments/authorizations/{authorization_id}/
|
230
|
+
'/v2/payments/authorizations/{authorization_id}/void',
|
212
231
|
Server::DEFAULT)
|
213
232
|
.template_param(new_parameter(options['authorization_id'], key: 'authorization_id')
|
214
233
|
.should_encode(true))
|
215
|
-
.header_param(new_parameter('
|
234
|
+
.header_param(new_parameter(options['paypal_auth_assertion'], key: 'PayPal-Auth-Assertion'))
|
216
235
|
.header_param(new_parameter(options['paypal_request_id'], key: 'PayPal-Request-Id'))
|
217
236
|
.header_param(new_parameter(options['prefer'], key: 'Prefer'))
|
218
|
-
.body_param(new_parameter(options['body']))
|
219
237
|
.header_param(new_parameter('application/json', key: 'accept'))
|
220
|
-
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
221
238
|
.auth(Single.new('Oauth2')))
|
222
239
|
.response(new_response_handler
|
240
|
+
.is_nullable_response(true)
|
223
241
|
.deserializer(APIHelper.method(:custom_type_deserializer))
|
224
242
|
.deserialize_into(PaymentAuthorization.method(:from_hash))
|
225
243
|
.is_api_response(true)
|
226
|
-
.local_error('400',
|
227
|
-
'The request failed because it is not well-formed or is'\
|
228
|
-
' syntactically incorrect or violates schema.',
|
229
|
-
ErrorException)
|
230
244
|
.local_error('401',
|
231
245
|
'Authentication failed due to missing authorization header, or'\
|
232
246
|
' invalid authentication credentials.',
|
@@ -238,6 +252,10 @@ module PaypalServerSdk
|
|
238
252
|
.local_error('404',
|
239
253
|
'The request failed because the resource does not exist.',
|
240
254
|
ErrorException)
|
255
|
+
.local_error('409',
|
256
|
+
'The request failed because a previous call for the given'\
|
257
|
+
' resource is in progress.',
|
258
|
+
ErrorException)
|
241
259
|
.local_error('422',
|
242
260
|
'The request failed because it either is semantically incorrect'\
|
243
261
|
' or failed business validation.',
|
@@ -367,14 +385,23 @@ module PaypalServerSdk
|
|
367
385
|
# Shows details for a refund, by ID.
|
368
386
|
# @param [String] refund_id Required parameter: The PayPal-generated ID for
|
369
387
|
# the refund for which to show details.
|
388
|
+
# @param [String] paypal_auth_assertion Optional parameter: An
|
389
|
+
# API-caller-provided JSON Web Token (JWT) assertion that identifies the
|
390
|
+
# merchant. For details, see
|
391
|
+
# [PayPal-Auth-Assertion](/docs/api/reference/api-requests/#paypal-auth-asse
|
392
|
+
# rtion).<blockquote><strong>Note:</strong>For three party transactions in
|
393
|
+
# which a partner is managing the API calls on behalf of a merchant, the
|
394
|
+
# partner must identify the merchant using either a PayPal-Auth-Assertion
|
395
|
+
# header or an access token with target_subject.</blockquote>
|
370
396
|
# @return [ApiResponse] the complete http response with raw body and status code.
|
371
|
-
def refunds_get(
|
397
|
+
def refunds_get(options = {})
|
372
398
|
new_api_call_builder
|
373
399
|
.request(new_request_builder(HttpMethodEnum::GET,
|
374
400
|
'/v2/payments/refunds/{refund_id}',
|
375
401
|
Server::DEFAULT)
|
376
|
-
.template_param(new_parameter(refund_id, key: 'refund_id')
|
402
|
+
.template_param(new_parameter(options['refund_id'], key: 'refund_id')
|
377
403
|
.should_encode(true))
|
404
|
+
.header_param(new_parameter(options['paypal_auth_assertion'], key: 'PayPal-Auth-Assertion'))
|
378
405
|
.header_param(new_parameter('application/json', key: 'accept'))
|
379
406
|
.auth(Single.new('Oauth2')))
|
380
407
|
.response(new_response_handler
|
@@ -6,6 +6,48 @@
|
|
6
6
|
module PaypalServerSdk
|
7
7
|
# VaultController
|
8
8
|
class VaultController < BaseController
|
9
|
+
# Creates a Payment Token from the given payment source and adds it to the
|
10
|
+
# Vault of the associated customer.
|
11
|
+
# @param [String] paypal_request_id Required parameter: The server stores
|
12
|
+
# keys for 3 hours.
|
13
|
+
# @param [PaymentTokenRequest] body Required parameter: Payment Token
|
14
|
+
# creation with a financial instrument and an optional customer_id.
|
15
|
+
# @return [ApiResponse] the complete http response with raw body and status code.
|
16
|
+
def payment_tokens_create(options = {})
|
17
|
+
new_api_call_builder
|
18
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
19
|
+
'/v3/vault/payment-tokens',
|
20
|
+
Server::DEFAULT)
|
21
|
+
.header_param(new_parameter(options['paypal_request_id'], key: 'PayPal-Request-Id'))
|
22
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
23
|
+
.body_param(new_parameter(options['body']))
|
24
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
25
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
26
|
+
.auth(Single.new('Oauth2')))
|
27
|
+
.response(new_response_handler
|
28
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
29
|
+
.deserialize_into(PaymentTokenResponse.method(:from_hash))
|
30
|
+
.is_api_response(true)
|
31
|
+
.local_error('400',
|
32
|
+
'Request is not well-formed, syntactically incorrect, or'\
|
33
|
+
' violates schema.',
|
34
|
+
ErrorException)
|
35
|
+
.local_error('403',
|
36
|
+
'Authorization failed due to insufficient permissions.',
|
37
|
+
ErrorException)
|
38
|
+
.local_error('404',
|
39
|
+
'Request contains reference to resources that do not exist.',
|
40
|
+
ErrorException)
|
41
|
+
.local_error('422',
|
42
|
+
'The requested action could not be performed, semantically'\
|
43
|
+
' incorrect, or failed business validation.',
|
44
|
+
ErrorException)
|
45
|
+
.local_error('500',
|
46
|
+
'An internal server error has occurred.',
|
47
|
+
ErrorException))
|
48
|
+
.execute
|
49
|
+
end
|
50
|
+
|
9
51
|
# Returns all payment tokens for a customer.
|
10
52
|
# @param [String] customer_id Required parameter: A unique identifier
|
11
53
|
# representing a specific customer in merchant's/partner's system or
|
@@ -79,27 +121,19 @@ module PaypalServerSdk
|
|
79
121
|
.execute
|
80
122
|
end
|
81
123
|
|
82
|
-
#
|
83
|
-
#
|
84
|
-
# @param [String] paypal_request_id Required parameter: The server stores
|
85
|
-
# keys for 3 hours.
|
86
|
-
# @param [PaymentTokenRequest] body Required parameter: Payment Token
|
87
|
-
# creation with a financial instrument and an optional customer_id.
|
124
|
+
# Delete the payment token associated with the payment token id.
|
125
|
+
# @param [String] id Required parameter: ID of the payment token.
|
88
126
|
# @return [ApiResponse] the complete http response with raw body and status code.
|
89
|
-
def
|
127
|
+
def payment_tokens_delete(id)
|
90
128
|
new_api_call_builder
|
91
|
-
.request(new_request_builder(HttpMethodEnum::
|
92
|
-
'/v3/vault/payment-tokens',
|
129
|
+
.request(new_request_builder(HttpMethodEnum::DELETE,
|
130
|
+
'/v3/vault/payment-tokens/{id}',
|
93
131
|
Server::DEFAULT)
|
94
|
-
.
|
95
|
-
|
96
|
-
.body_param(new_parameter(options['body']))
|
97
|
-
.header_param(new_parameter('application/json', key: 'accept'))
|
98
|
-
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
132
|
+
.template_param(new_parameter(id, key: 'id')
|
133
|
+
.should_encode(true))
|
99
134
|
.auth(Single.new('Oauth2')))
|
100
135
|
.response(new_response_handler
|
101
|
-
.
|
102
|
-
.deserialize_into(PaymentTokenResponse.method(:from_hash))
|
136
|
+
.is_response_void(true)
|
103
137
|
.is_api_response(true)
|
104
138
|
.local_error('400',
|
105
139
|
'Request is not well-formed, syntactically incorrect, or'\
|
@@ -108,13 +142,6 @@ module PaypalServerSdk
|
|
108
142
|
.local_error('403',
|
109
143
|
'Authorization failed due to insufficient permissions.',
|
110
144
|
ErrorException)
|
111
|
-
.local_error('404',
|
112
|
-
'Request contains reference to resources that do not exist.',
|
113
|
-
ErrorException)
|
114
|
-
.local_error('422',
|
115
|
-
'The requested action could not be performed, semantically'\
|
116
|
-
' incorrect, or failed business validation.',
|
117
|
-
ErrorException)
|
118
145
|
.local_error('500',
|
119
146
|
'An internal server error has occurred.',
|
120
147
|
ErrorException))
|
@@ -161,33 +188,6 @@ module PaypalServerSdk
|
|
161
188
|
.execute
|
162
189
|
end
|
163
190
|
|
164
|
-
# Delete the payment token associated with the payment token id.
|
165
|
-
# @param [String] id Required parameter: ID of the payment token.
|
166
|
-
# @return [ApiResponse] the complete http response with raw body and status code.
|
167
|
-
def payment_tokens_delete(id)
|
168
|
-
new_api_call_builder
|
169
|
-
.request(new_request_builder(HttpMethodEnum::DELETE,
|
170
|
-
'/v3/vault/payment-tokens/{id}',
|
171
|
-
Server::DEFAULT)
|
172
|
-
.template_param(new_parameter(id, key: 'id')
|
173
|
-
.should_encode(true))
|
174
|
-
.auth(Single.new('Oauth2')))
|
175
|
-
.response(new_response_handler
|
176
|
-
.is_response_void(true)
|
177
|
-
.is_api_response(true)
|
178
|
-
.local_error('400',
|
179
|
-
'Request is not well-formed, syntactically incorrect, or'\
|
180
|
-
' violates schema.',
|
181
|
-
ErrorException)
|
182
|
-
.local_error('403',
|
183
|
-
'Authorization failed due to insufficient permissions.',
|
184
|
-
ErrorException)
|
185
|
-
.local_error('500',
|
186
|
-
'An internal server error has occurred.',
|
187
|
-
ErrorException))
|
188
|
-
.execute
|
189
|
-
end
|
190
|
-
|
191
191
|
# Returns a readable representation of temporarily vaulted payment source
|
192
192
|
# associated with the setup token id.
|
193
193
|
# @param [String] id Required parameter: ID of the setup token.
|
@@ -45,6 +45,12 @@ module PaypalServerSdk
|
|
45
45
|
# @return [CardVerificationProcessorResponse]
|
46
46
|
attr_accessor :processor_response
|
47
47
|
|
48
|
+
# DEPRECATED. This field is DEPRECATED. Please find the 3D secure
|
49
|
+
# authentication data in 'three_d_secure' object under
|
50
|
+
# 'authentication_result' object instead of the 'verification' field.
|
51
|
+
# @return [Object]
|
52
|
+
attr_accessor :three_d_secure
|
53
|
+
|
48
54
|
# A mapping from model property names to API property names.
|
49
55
|
def self.names
|
50
56
|
@_hash = {} if @_hash.nil?
|
@@ -54,6 +60,7 @@ module PaypalServerSdk
|
|
54
60
|
@_hash['time'] = 'time'
|
55
61
|
@_hash['amount'] = 'amount'
|
56
62
|
@_hash['processor_response'] = 'processor_response'
|
63
|
+
@_hash['three_d_secure'] = 'three_d_secure'
|
57
64
|
@_hash
|
58
65
|
end
|
59
66
|
|
@@ -66,6 +73,7 @@ module PaypalServerSdk
|
|
66
73
|
time
|
67
74
|
amount
|
68
75
|
processor_response
|
76
|
+
three_d_secure
|
69
77
|
]
|
70
78
|
end
|
71
79
|
|
@@ -75,13 +83,15 @@ module PaypalServerSdk
|
|
75
83
|
end
|
76
84
|
|
77
85
|
def initialize(network_transaction_id: SKIP, date: SKIP, network: SKIP,
|
78
|
-
time: SKIP, amount: SKIP, processor_response: SKIP
|
86
|
+
time: SKIP, amount: SKIP, processor_response: SKIP,
|
87
|
+
three_d_secure: SKIP)
|
79
88
|
@network_transaction_id = network_transaction_id unless network_transaction_id == SKIP
|
80
89
|
@date = date unless date == SKIP
|
81
90
|
@network = network unless network == SKIP
|
82
91
|
@time = time unless time == SKIP
|
83
92
|
@amount = amount unless amount == SKIP
|
84
93
|
@processor_response = processor_response unless processor_response == SKIP
|
94
|
+
@three_d_secure = three_d_secure unless three_d_secure == SKIP
|
85
95
|
end
|
86
96
|
|
87
97
|
# Creates an instance of the object from a hash.
|
@@ -98,6 +108,8 @@ module PaypalServerSdk
|
|
98
108
|
if hash['processor_response']
|
99
109
|
processor_response = CardVerificationProcessorResponse.from_hash(hash['processor_response'])
|
100
110
|
end
|
111
|
+
three_d_secure =
|
112
|
+
hash.key?('three_d_secure') ? hash['three_d_secure'] : SKIP
|
101
113
|
|
102
114
|
# Create object from extracted values.
|
103
115
|
CardVerificationDetails.new(network_transaction_id: network_transaction_id,
|
@@ -105,7 +117,8 @@ module PaypalServerSdk
|
|
105
117
|
network: network,
|
106
118
|
time: time,
|
107
119
|
amount: amount,
|
108
|
-
processor_response: processor_response
|
120
|
+
processor_response: processor_response,
|
121
|
+
three_d_secure: three_d_secure)
|
109
122
|
end
|
110
123
|
end
|
111
124
|
end
|
@@ -14,8 +14,8 @@ module PaypalServerSdk
|
|
14
14
|
# @return [PaymentSource]
|
15
15
|
attr_accessor :payment_source
|
16
16
|
|
17
|
-
# The
|
18
|
-
# @return [
|
17
|
+
# The payment source definition.
|
18
|
+
# @return [Object]
|
19
19
|
attr_accessor :processing_instruction
|
20
20
|
|
21
21
|
# Customizes the payer confirmation experience.
|
@@ -44,11 +44,8 @@ module PaypalServerSdk
|
|
44
44
|
[]
|
45
45
|
end
|
46
46
|
|
47
|
-
def initialize(
|
48
|
-
|
49
|
-
processing_instruction: ProcessingInstruction::NO_INSTRUCTION,
|
50
|
-
application_context: SKIP
|
51
|
-
)
|
47
|
+
def initialize(payment_source:, processing_instruction: SKIP,
|
48
|
+
application_context: SKIP)
|
52
49
|
@payment_source = payment_source
|
53
50
|
@processing_instruction = processing_instruction unless processing_instruction == SKIP
|
54
51
|
@application_context = application_context unless application_context == SKIP
|
@@ -61,7 +58,7 @@ module PaypalServerSdk
|
|
61
58
|
# Extract variables from the hash.
|
62
59
|
payment_source = PaymentSource.from_hash(hash['payment_source']) if hash['payment_source']
|
63
60
|
processing_instruction =
|
64
|
-
hash['processing_instruction']
|
61
|
+
hash.key?('processing_instruction') ? hash['processing_instruction'] : SKIP
|
65
62
|
application_context = OrderConfirmApplicationContext.from_hash(hash['application_context']) if
|
66
63
|
hash['application_context']
|
67
64
|
|
@@ -7,8 +7,8 @@ module PaypalServerSdk
|
|
7
7
|
# A classification for the method of purchase fulfillment (e.g shipping,
|
8
8
|
# in-store pickup, etc). Either `type` or `options` may be present, but not
|
9
9
|
# both.
|
10
|
-
class
|
11
|
-
|
10
|
+
class FulfillmentType
|
11
|
+
FULFILLMENT_TYPE = [
|
12
12
|
# TODO: Write general description for SHIPPING
|
13
13
|
SHIPPING = 'SHIPPING'.freeze,
|
14
14
|
|
@@ -0,0 +1,114 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# The payment card used to fund a Google Pay payment. Can be a credit or debit
|
8
|
+
# card.
|
9
|
+
class GooglePayCard < BaseModel
|
10
|
+
SKIP = Object.new
|
11
|
+
private_constant :SKIP
|
12
|
+
|
13
|
+
# The card holder's name as it appears on the card.
|
14
|
+
# @return [String]
|
15
|
+
attr_accessor :name
|
16
|
+
|
17
|
+
# The primary account number (PAN) for the payment card.
|
18
|
+
# @return [String]
|
19
|
+
attr_accessor :number
|
20
|
+
|
21
|
+
# The year and month, in ISO-8601 `YYYY-MM` date format. See [Internet date
|
22
|
+
# and time format](https://tools.ietf.org/html/rfc3339#section-5.6).
|
23
|
+
# @return [String]
|
24
|
+
attr_accessor :expiry
|
25
|
+
|
26
|
+
# The last digits of the payment card.
|
27
|
+
# @return [String]
|
28
|
+
attr_accessor :last_digits
|
29
|
+
|
30
|
+
# Type of card. i.e Credit, Debit and so on.
|
31
|
+
# @return [CardType]
|
32
|
+
attr_accessor :type
|
33
|
+
|
34
|
+
# The card network or brand. Applies to credit, debit, gift, and payment
|
35
|
+
# cards.
|
36
|
+
# @return [CardBrand]
|
37
|
+
attr_accessor :brand
|
38
|
+
|
39
|
+
# The portable international postal address. Maps to
|
40
|
+
# [AddressValidationMetadata](https://github.com/googlei18n/libaddressinput/
|
41
|
+
# wiki/AddressValidationMetadata) and HTML 5.1 [Autofilling form controls:
|
42
|
+
# the autocomplete
|
43
|
+
# attribute](https://www.w3.org/TR/html51/sec-forms.html#autofilling-form-co
|
44
|
+
# ntrols-the-autocomplete-attribute).
|
45
|
+
# @return [PortablePostalAddressMediumGrained]
|
46
|
+
attr_accessor :billing_address
|
47
|
+
|
48
|
+
# A mapping from model property names to API property names.
|
49
|
+
def self.names
|
50
|
+
@_hash = {} if @_hash.nil?
|
51
|
+
@_hash['name'] = 'name'
|
52
|
+
@_hash['number'] = 'number'
|
53
|
+
@_hash['expiry'] = 'expiry'
|
54
|
+
@_hash['last_digits'] = 'last_digits'
|
55
|
+
@_hash['type'] = 'type'
|
56
|
+
@_hash['brand'] = 'brand'
|
57
|
+
@_hash['billing_address'] = 'billing_address'
|
58
|
+
@_hash
|
59
|
+
end
|
60
|
+
|
61
|
+
# An array for optional fields
|
62
|
+
def self.optionals
|
63
|
+
%w[
|
64
|
+
name
|
65
|
+
number
|
66
|
+
expiry
|
67
|
+
last_digits
|
68
|
+
type
|
69
|
+
brand
|
70
|
+
billing_address
|
71
|
+
]
|
72
|
+
end
|
73
|
+
|
74
|
+
# An array for nullable fields
|
75
|
+
def self.nullables
|
76
|
+
[]
|
77
|
+
end
|
78
|
+
|
79
|
+
def initialize(name: SKIP, number: SKIP, expiry: SKIP, last_digits: SKIP,
|
80
|
+
type: SKIP, brand: SKIP, billing_address: SKIP)
|
81
|
+
@name = name unless name == SKIP
|
82
|
+
@number = number unless number == SKIP
|
83
|
+
@expiry = expiry unless expiry == SKIP
|
84
|
+
@last_digits = last_digits unless last_digits == SKIP
|
85
|
+
@type = type unless type == SKIP
|
86
|
+
@brand = brand unless brand == SKIP
|
87
|
+
@billing_address = billing_address unless billing_address == SKIP
|
88
|
+
end
|
89
|
+
|
90
|
+
# Creates an instance of the object from a hash.
|
91
|
+
def self.from_hash(hash)
|
92
|
+
return nil unless hash
|
93
|
+
|
94
|
+
# Extract variables from the hash.
|
95
|
+
name = hash.key?('name') ? hash['name'] : SKIP
|
96
|
+
number = hash.key?('number') ? hash['number'] : SKIP
|
97
|
+
expiry = hash.key?('expiry') ? hash['expiry'] : SKIP
|
98
|
+
last_digits = hash.key?('last_digits') ? hash['last_digits'] : SKIP
|
99
|
+
type = hash.key?('type') ? hash['type'] : SKIP
|
100
|
+
brand = hash.key?('brand') ? hash['brand'] : SKIP
|
101
|
+
billing_address = PortablePostalAddressMediumGrained.from_hash(hash['billing_address']) if
|
102
|
+
hash['billing_address']
|
103
|
+
|
104
|
+
# Create object from extracted values.
|
105
|
+
GooglePayCard.new(name: name,
|
106
|
+
number: number,
|
107
|
+
expiry: expiry,
|
108
|
+
last_digits: last_digits,
|
109
|
+
type: type,
|
110
|
+
brand: brand,
|
111
|
+
billing_address: billing_address)
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|