ez_paypal 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,926 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: EZPaypal::Request
8
+
9
+ &mdash; Documentation by YARD 0.7.5
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" media="screen" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" media="screen" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ relpath = '..';
19
+ if (relpath != '') relpath += '/';
20
+ </script>
21
+
22
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
25
+
26
+
27
+ </head>
28
+ <body>
29
+ <script type="text/javascript" charset="utf-8">
30
+ if (window.top.frames.main) document.body.className = 'frames';
31
+ </script>
32
+
33
+ <div id="header">
34
+ <div id="menu">
35
+
36
+ <a href="../_index.html">Index (R)</a> &raquo;
37
+ <span class='title'><span class='object_link'><a href="../EZPaypal.html" title="EZPaypal (module)">EZPaypal</a></span></span>
38
+ &raquo;
39
+ <span class="title">Request</span>
40
+
41
+
42
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
43
+ </div>
44
+
45
+ <div id="search">
46
+
47
+ <a id="class_list_link" href="#">Class List</a>
48
+
49
+ <a id="method_list_link" href="#">Method List</a>
50
+
51
+ <a id="file_list_link" href="#">File List</a>
52
+
53
+ </div>
54
+ <div class="clear"></div>
55
+ </div>
56
+
57
+ <iframe id="search_frame"></iframe>
58
+
59
+ <div id="content"><h1>Module: EZPaypal::Request
60
+
61
+
62
+
63
+ </h1>
64
+
65
+ <dl class="box">
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+ <dt class="r1 last">Defined in:</dt>
75
+ <dd class="r1 last">lib/core/request.rb</dd>
76
+
77
+ </dl>
78
+ <div class="clear"></div>
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+ <h2>
89
+ Class Method Summary
90
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
91
+ </h2>
92
+
93
+ <ul class="summary">
94
+
95
+ <li class="public ">
96
+ <span class="summary_signature">
97
+
98
+ <a href="#ConfirmPurchase-class_method" title="ConfirmPurchase (class method)">+ (Hash) <strong>ConfirmPurchase</strong>(token, payer_id) </a>
99
+
100
+
101
+
102
+ </span>
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+ <span class="summary_desc"><div class='inline'>
112
+ <p>Confirm payment, only works if token and payer_id is obtained.</p>
113
+ </div></span>
114
+
115
+ </li>
116
+
117
+
118
+ <li class="public ">
119
+ <span class="summary_signature">
120
+
121
+ <a href="#CreateRecurringProfile-class_method" title="CreateRecurringProfile (class method)">+ (Hash) <strong>CreateRecurringProfile</strong>(profile) </a>
122
+
123
+
124
+
125
+ </span>
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+ <span class="summary_desc"><div class='inline'>
135
+ <p>Create a recurring profile for a customer.</p>
136
+ </div></span>
137
+
138
+ </li>
139
+
140
+
141
+ <li class="public ">
142
+ <span class="summary_signature">
143
+
144
+ <a href="#GetCheckoutDetails-class_method" title="GetCheckoutDetails (class method)">+ (Hash) <strong>GetCheckoutDetails</strong>(token) </a>
145
+
146
+
147
+
148
+ </span>
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+ <span class="summary_desc"><div class='inline'>
158
+ <p>Get current checkout details, only works if token has obtained.</p>
159
+ </div></span>
160
+
161
+ </li>
162
+
163
+
164
+ <li class="public ">
165
+ <span class="summary_signature">
166
+
167
+ <a href="#GetCheckoutURL-class_method" title="GetCheckoutURL (class method)">+ (String) <strong>GetCheckoutURL</strong>(token) </a>
168
+
169
+
170
+
171
+ </span>
172
+
173
+
174
+
175
+
176
+
177
+
178
+
179
+
180
+ <span class="summary_desc"><div class='inline'>
181
+ <p>Get current checkout url to redirect user to, only works if token has
182
+ obtained.</p>
183
+ </div></span>
184
+
185
+ </li>
186
+
187
+
188
+ <li class="public ">
189
+ <span class="summary_signature">
190
+
191
+ <a href="#Refund-class_method" title="Refund (class method)">+ (Hash) <strong>Refund</strong>(transaction_id, refund_type, amount, currency, note) </a>
192
+
193
+
194
+
195
+ </span>
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+ <span class="summary_desc"><div class='inline'>
205
+ <p>Refund money to a transaction.</p>
206
+ </div></span>
207
+
208
+ </li>
209
+
210
+
211
+ <li class="public ">
212
+ <span class="summary_signature">
213
+
214
+ <a href="#SetupExpressCheckout-class_method" title="SetupExpressCheckout (class method)">+ (Hash) <strong>SetupExpressCheckout</strong>(cart, returnUrl, cancelUrl) </a>
215
+
216
+
217
+
218
+ </span>
219
+
220
+
221
+
222
+
223
+
224
+
225
+
226
+
227
+ <span class="summary_desc"><div class='inline'>
228
+ <p>Setup express checkout cart.</p>
229
+ </div></span>
230
+
231
+ </li>
232
+
233
+
234
+ </ul>
235
+
236
+
237
+
238
+
239
+ <div id="class_method_details" class="method_details_list">
240
+ <h2>Class Method Details</h2>
241
+
242
+
243
+ <div class="method_details first">
244
+ <p class="signature first" id="ConfirmPurchase-class_method">
245
+
246
+ + (<tt>Hash</tt>) <strong>ConfirmPurchase</strong>(token, payer_id)
247
+
248
+
249
+
250
+ </p><div class="docstring">
251
+ <div class="discussion">
252
+
253
+ <p>Confirm payment, only works if token and payer_id is obtained</p>
254
+
255
+
256
+ </div>
257
+ </div>
258
+ <div class="tags">
259
+ <h3>Parameters:</h3>
260
+ <ul class="param">
261
+
262
+ <li>
263
+
264
+ <span class='name'>token</span>
265
+
266
+
267
+ <span class='type'>(<tt>String</tt>)</span>
268
+
269
+
270
+
271
+ </li>
272
+
273
+ <li>
274
+
275
+ <span class='name'>payer_id</span>
276
+
277
+
278
+ <span class='type'>(<tt>String</tt>)</span>
279
+
280
+
281
+
282
+ </li>
283
+
284
+ </ul>
285
+
286
+ <h3>Returns:</h3>
287
+ <ul class="return">
288
+
289
+ <li>
290
+
291
+
292
+ <span class='type'>(<tt>Hash</tt>)</span>
293
+
294
+
295
+
296
+ &mdash;
297
+ <div class='inline'>
298
+ <p>payment details associated with the given token and payer_id</p>
299
+ </div>
300
+
301
+ </li>
302
+
303
+ </ul>
304
+
305
+ </div><table class="source_code">
306
+ <tr>
307
+ <td>
308
+ <pre class="lines">
309
+
310
+
311
+ 74
312
+ 75
313
+ 76
314
+ 77
315
+ 78
316
+ 79
317
+ 80
318
+ 81
319
+ 82
320
+ 83
321
+ 84
322
+ 85
323
+ 86
324
+ 87
325
+ 88
326
+ 89
327
+ 90
328
+ 91
329
+ 92
330
+ 93
331
+ 94
332
+ 95
333
+ 96
334
+ 97
335
+ 98
336
+ 99
337
+ 100
338
+ 101
339
+ 102
340
+ 103
341
+ 104
342
+ 105
343
+ 106
344
+ 107
345
+ 108
346
+ 109</pre>
347
+ </td>
348
+ <td>
349
+ <pre class="code"><span class="info file"># File 'lib/core/request.rb', line 74</span>
350
+
351
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='const'>ConfirmPurchase</span><span class='lparen'>(</span><span class='id identifier rubyid_token'>token</span><span class='comma'>,</span> <span class='id identifier rubyid_payer_id'>payer_id</span><span class='rparen'>)</span>
352
+ <span class='kw'>unless</span> <span class='lparen'>(</span><span class='id identifier rubyid_token'>token</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>&amp;&amp;</span> <span class='id identifier rubyid_payer_id'>payer_id</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='rparen'>)</span>
353
+ <span class='kw'>begin</span>
354
+ <span class='comment'># Setup default options
355
+ </span> <span class='id identifier rubyid_setting'>setting</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>Setting</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
356
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>METHOD</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>DoExpressCheckoutPayment</span><span class='tstring_end'>&quot;</span></span><span class='rbrace'>}</span><span class='rparen'>)</span>
357
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>PAYMENTREQUEST_0_PAYMENTACTION</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Sale</span><span class='tstring_end'>&quot;</span></span><span class='rbrace'>}</span><span class='rparen'>)</span>
358
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>TOKEN</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_token'>token</span><span class='rbrace'>}</span><span class='rparen'>)</span>
359
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>PAYERID</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_payer_id'>payer_id</span><span class='rbrace'>}</span><span class='rparen'>)</span>
360
+
361
+
362
+ <span class='comment'># Get checkout details
363
+ </span> <span class='id identifier rubyid_checkout_details_origin'>checkout_details_origin</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Request</span><span class='period'>.</span><span class='const'>GetCheckoutDetails</span><span class='lparen'>(</span><span class='id identifier rubyid_token'>token</span><span class='rparen'>)</span>
364
+ <span class='id identifier rubyid_checkout_details_origin'>checkout_details_origin</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='comma'>,</span> <span class='id identifier rubyid_value'>value</span><span class='op'>|</span>
365
+ <span class='id identifier rubyid_key'>key</span> <span class='op'>=</span> <span class='const'>CGI</span><span class='op'>::</span><span class='id identifier rubyid_unescape'>unescape</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
366
+ <span class='id identifier rubyid_value'>value</span> <span class='op'>=</span> <span class='const'>CGI</span><span class='op'>::</span><span class='id identifier rubyid_unescape'>unescape</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
367
+ <span class='kw'>end</span>
368
+
369
+ <span class='comment'># Submit checkout request to confirm the purchase
370
+ </span> <span class='id identifier rubyid_payment_response_origin'>payment_response_origin</span> <span class='op'>=</span> <span class='const'>HashWithIndifferentAccess</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='rparen'>)</span>
371
+ <span class='kw'>if</span> <span class='lparen'>(</span><span class='id identifier rubyid_checkout_details_origin'>checkout_details_origin</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>ACK</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_downcase'>downcase</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>success</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
372
+ <span class='id identifier rubyid_checkout_details_origin'>checkout_details_origin</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_setting'>setting</span><span class='rparen'>)</span>
373
+ <span class='id identifier rubyid_query_string'>query_string</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertHashToQueryString</span><span class='lparen'>(</span><span class='id identifier rubyid_checkout_details_origin'>checkout_details_origin</span><span class='rparen'>)</span>
374
+ <span class='id identifier rubyid_payment_response_origin'>payment_response_origin</span> <span class='op'>=</span> <span class='const'>EZHttp</span><span class='period'>.</span><span class='const'>Send</span><span class='lparen'>(</span><span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>EndPoint</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>express_checkout_endpoint</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_query_string'>query_string</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>post</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span>
375
+ <span class='kw'>end</span>
376
+
377
+ <span class='comment'># Convert response to Hash to return
378
+ </span> <span class='id identifier rubyid_payment_response'>payment_response</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertParamToHash</span><span class='lparen'>(</span><span class='id identifier rubyid_payment_response_origin'>payment_response_origin</span><span class='rparen'>)</span>
379
+
380
+ <span class='kw'>return</span> <span class='id identifier rubyid_payment_response'>payment_response</span>
381
+
382
+ <span class='kw'>rescue</span>
383
+ <span class='id identifier rubyid_throw'>throw</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error occured in ConfirmPurchase: TOKEN=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_token'>token</span><span class='rbrace'>}</span><span class='tstring_content'>, PAYERID=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_payer_id'>payer_id</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
384
+ <span class='kw'>end</span>
385
+ <span class='kw'>end</span>
386
+ <span class='kw'>end</span></pre>
387
+ </td>
388
+ </tr>
389
+ </table>
390
+ </div>
391
+
392
+ <div class="method_details ">
393
+ <p class="signature " id="CreateRecurringProfile-class_method">
394
+
395
+ + (<tt>Hash</tt>) <strong>CreateRecurringProfile</strong>(profile)
396
+
397
+
398
+
399
+ </p><div class="docstring">
400
+ <div class="discussion">
401
+
402
+ <p>Create a recurring profile for a customer</p>
403
+
404
+
405
+ </div>
406
+ </div>
407
+ <div class="tags">
408
+ <h3>Parameters:</h3>
409
+ <ul class="param">
410
+
411
+ <li>
412
+
413
+ <span class='name'>profile</span>
414
+
415
+
416
+ <span class='type'>(<tt><span class='object_link'><a href="Cart/RecurringProfile.html" title="EZPaypal::Cart::RecurringProfile (class)">EZPaypal::Cart::RecurringProfile</a></span></tt>)</span>
417
+
418
+
419
+
420
+ &mdash;
421
+ <div class='inline'>
422
+ <p>including all the config for the recurring profile</p>
423
+ </div>
424
+
425
+ </li>
426
+
427
+ </ul>
428
+
429
+ <h3>Returns:</h3>
430
+ <ul class="return">
431
+
432
+ <li>
433
+
434
+
435
+ <span class='type'>(<tt>Hash</tt>)</span>
436
+
437
+
438
+
439
+ &mdash;
440
+ <div class='inline'>
441
+ <p>profile creation confirmation from paypal</p>
442
+ </div>
443
+
444
+ </li>
445
+
446
+ </ul>
447
+
448
+ </div><table class="source_code">
449
+ <tr>
450
+ <td>
451
+ <pre class="lines">
452
+
453
+
454
+ 114
455
+ 115
456
+ 116
457
+ 117
458
+ 118
459
+ 119
460
+ 120
461
+ 121
462
+ 122
463
+ 123
464
+ 124
465
+ 125
466
+ 126
467
+ 127
468
+ 128
469
+ 129
470
+ 130
471
+ 131
472
+ 132</pre>
473
+ </td>
474
+ <td>
475
+ <pre class="code"><span class="info file"># File 'lib/core/request.rb', line 114</span>
476
+
477
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='const'>CreateRecurringProfile</span><span class='lparen'>(</span><span class='id identifier rubyid_profile'>profile</span><span class='rparen'>)</span>
478
+ <span class='kw'>begin</span>
479
+ <span class='comment'># Setup default options
480
+ </span> <span class='id identifier rubyid_setting'>setting</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>Setting</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
481
+ <span class='id identifier rubyid_default'>default</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>METHOD</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>CreateRecurringPaymentsProfile</span><span class='tstring_end'>&quot;</span></span><span class='rbrace'>}</span>
482
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_default'>default</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_profile'>profile</span><span class='rparen'>)</span>
483
+
484
+ <span class='comment'># Http call to create profile and get response
485
+ </span> <span class='id identifier rubyid_query_string'>query_string</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertHashToQueryString</span><span class='lparen'>(</span><span class='id identifier rubyid_setting'>setting</span><span class='rparen'>)</span>
486
+ <span class='id identifier rubyid_profile_response_origin'>profile_response_origin</span> <span class='op'>=</span> <span class='const'>EZHttp</span><span class='period'>.</span><span class='const'>Send</span><span class='lparen'>(</span><span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>EndPoint</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>express_checkout_endpoint</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_query_string'>query_string</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>post</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span>
487
+
488
+ <span class='comment'># Convert response to Hash to return
489
+ </span> <span class='id identifier rubyid_profile_response'>profile_response</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertParamToHash</span><span class='lparen'>(</span><span class='id identifier rubyid_profile_response_origin'>profile_response_origin</span><span class='rparen'>)</span>
490
+
491
+ <span class='kw'>return</span> <span class='id identifier rubyid_profile_response'>profile_response</span>
492
+ <span class='kw'>rescue</span>
493
+ <span class='id identifier rubyid_throw'>throw</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error occured in CreateRecurringProfile</span><span class='tstring_end'>&quot;</span></span>
494
+ <span class='kw'>end</span>
495
+ <span class='kw'>end</span></pre>
496
+ </td>
497
+ </tr>
498
+ </table>
499
+ </div>
500
+
501
+ <div class="method_details ">
502
+ <p class="signature " id="GetCheckoutDetails-class_method">
503
+
504
+ + (<tt>Hash</tt>) <strong>GetCheckoutDetails</strong>(token)
505
+
506
+
507
+
508
+ </p><div class="docstring">
509
+ <div class="discussion">
510
+
511
+ <p>Get current checkout details, only works if token has obtained</p>
512
+
513
+
514
+ </div>
515
+ </div>
516
+ <div class="tags">
517
+ <h3>Parameters:</h3>
518
+ <ul class="param">
519
+
520
+ <li>
521
+
522
+ <span class='name'>token</span>
523
+
524
+
525
+ <span class='type'>(<tt>String</tt>)</span>
526
+
527
+
528
+
529
+ </li>
530
+
531
+ </ul>
532
+
533
+ <h3>Returns:</h3>
534
+ <ul class="return">
535
+
536
+ <li>
537
+
538
+
539
+ <span class='type'>(<tt>Hash</tt>)</span>
540
+
541
+
542
+
543
+ &mdash;
544
+ <div class='inline'>
545
+ <p>checkout details associated with the given token</p>
546
+ </div>
547
+
548
+ </li>
549
+
550
+ </ul>
551
+
552
+ </div><table class="source_code">
553
+ <tr>
554
+ <td>
555
+ <pre class="lines">
556
+
557
+
558
+ 48
559
+ 49
560
+ 50
561
+ 51
562
+ 52
563
+ 53
564
+ 54
565
+ 55
566
+ 56
567
+ 57
568
+ 58
569
+ 59
570
+ 60
571
+ 61
572
+ 62
573
+ 63
574
+ 64
575
+ 65
576
+ 66
577
+ 67
578
+ 68</pre>
579
+ </td>
580
+ <td>
581
+ <pre class="code"><span class="info file"># File 'lib/core/request.rb', line 48</span>
582
+
583
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='const'>GetCheckoutDetails</span><span class='lparen'>(</span><span class='id identifier rubyid_token'>token</span><span class='rparen'>)</span>
584
+ <span class='kw'>unless</span> <span class='lparen'>(</span><span class='id identifier rubyid_token'>token</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span><span class='rparen'>)</span>
585
+ <span class='kw'>begin</span>
586
+ <span class='comment'># Setup default options
587
+ </span> <span class='id identifier rubyid_setting'>setting</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>Setting</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
588
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>METHOD</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>GetExpressCheckoutDetails</span><span class='tstring_end'>&quot;</span></span><span class='rbrace'>}</span><span class='rparen'>)</span>
589
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>TOKEN</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_token'>token</span><span class='rbrace'>}</span><span class='rparen'>)</span>
590
+
591
+ <span class='comment'># Get checkout details
592
+ </span> <span class='id identifier rubyid_query_string'>query_string</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertHashToQueryString</span><span class='lparen'>(</span><span class='id identifier rubyid_setting'>setting</span><span class='rparen'>)</span>
593
+ <span class='id identifier rubyid_checkout_details_origin'>checkout_details_origin</span> <span class='op'>=</span> <span class='const'>EZHttp</span><span class='period'>.</span><span class='const'>Send</span><span class='lparen'>(</span><span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>EndPoint</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>express_checkout_endpoint</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_query_string'>query_string</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>post</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span>
594
+
595
+ <span class='comment'># Convert checkout details to Hash to return
596
+ </span> <span class='id identifier rubyid_checkout_details'>checkout_details</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertParamToHash</span><span class='lparen'>(</span><span class='id identifier rubyid_checkout_details_origin'>checkout_details_origin</span><span class='rparen'>)</span>
597
+
598
+ <span class='kw'>return</span> <span class='id identifier rubyid_checkout_details'>checkout_details</span>
599
+ <span class='kw'>rescue</span>
600
+ <span class='id identifier rubyid_throw'>throw</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error occured in GetExpressCheckoutDetails: token=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_token'>token</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
601
+ <span class='kw'>end</span>
602
+ <span class='kw'>end</span>
603
+ <span class='kw'>end</span></pre>
604
+ </td>
605
+ </tr>
606
+ </table>
607
+ </div>
608
+
609
+ <div class="method_details ">
610
+ <p class="signature " id="GetCheckoutURL-class_method">
611
+
612
+ + (<tt>String</tt>) <strong>GetCheckoutURL</strong>(token)
613
+
614
+
615
+
616
+ </p><div class="docstring">
617
+ <div class="discussion">
618
+
619
+ <p>Get current checkout url to redirect user to, only works if token has
620
+ obtained</p>
621
+
622
+
623
+ </div>
624
+ </div>
625
+ <div class="tags">
626
+ <h3>Parameters:</h3>
627
+ <ul class="param">
628
+
629
+ <li>
630
+
631
+ <span class='name'>token</span>
632
+
633
+
634
+ <span class='type'>(<tt>String</tt>)</span>
635
+
636
+
637
+
638
+ </li>
639
+
640
+ </ul>
641
+
642
+ <h3>Returns:</h3>
643
+ <ul class="return">
644
+
645
+ <li>
646
+
647
+
648
+ <span class='type'>(<tt>String</tt>)</span>
649
+
650
+
651
+
652
+ &mdash;
653
+ <div class='inline'>
654
+ <p>paypal checkout url to redirect user to</p>
655
+ </div>
656
+
657
+ </li>
658
+
659
+ </ul>
660
+
661
+ </div><table class="source_code">
662
+ <tr>
663
+ <td>
664
+ <pre class="lines">
665
+
666
+
667
+ 41
668
+ 42
669
+ 43</pre>
670
+ </td>
671
+ <td>
672
+ <pre class="code"><span class="info file"># File 'lib/core/request.rb', line 41</span>
673
+
674
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='const'>GetCheckoutURL</span><span class='lparen'>(</span><span class='id identifier rubyid_token'>token</span><span class='rparen'>)</span>
675
+ <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>EndPoint</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>express_checkout_url</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;token=</span><span class='tstring_end'>&quot;</span></span> <span class='op'>+</span> <span class='id identifier rubyid_token'>token</span> <span class='kw'>unless</span> <span class='id identifier rubyid_token'>token</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
676
+ <span class='kw'>end</span></pre>
677
+ </td>
678
+ </tr>
679
+ </table>
680
+ </div>
681
+
682
+ <div class="method_details ">
683
+ <p class="signature " id="Refund-class_method">
684
+
685
+ + (<tt>Hash</tt>) <strong>Refund</strong>(transaction_id, refund_type, amount, currency, note)
686
+
687
+
688
+
689
+ </p><div class="docstring">
690
+ <div class="discussion">
691
+
692
+ <p>Refund money to a transaction</p>
693
+
694
+
695
+ </div>
696
+ </div>
697
+ <div class="tags">
698
+ <h3>Parameters:</h3>
699
+ <ul class="param">
700
+
701
+ <li>
702
+
703
+ <span class='name'>all</span>
704
+
705
+
706
+ <span class='type'>(<tt>String</tt>)</span>
707
+
708
+
709
+
710
+ </li>
711
+
712
+ </ul>
713
+
714
+ <h3>Returns:</h3>
715
+ <ul class="return">
716
+
717
+ <li>
718
+
719
+
720
+ <span class='type'>(<tt>Hash</tt>)</span>
721
+
722
+
723
+
724
+ </li>
725
+
726
+ </ul>
727
+
728
+ </div><table class="source_code">
729
+ <tr>
730
+ <td>
731
+ <pre class="lines">
732
+
733
+
734
+ 137
735
+ 138
736
+ 139
737
+ 140
738
+ 141
739
+ 142
740
+ 143
741
+ 144
742
+ 145
743
+ 146
744
+ 147
745
+ 148
746
+ 149
747
+ 150
748
+ 151
749
+ 152
750
+ 153
751
+ 154
752
+ 155
753
+ 156</pre>
754
+ </td>
755
+ <td>
756
+ <pre class="code"><span class="info file"># File 'lib/core/request.rb', line 137</span>
757
+
758
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='const'>Refund</span><span class='lparen'>(</span><span class='id identifier rubyid_transaction_id'>transaction_id</span><span class='comma'>,</span> <span class='id identifier rubyid_refund_type'>refund_type</span><span class='comma'>,</span> <span class='id identifier rubyid_amount'>amount</span><span class='comma'>,</span> <span class='id identifier rubyid_currency'>currency</span><span class='comma'>,</span> <span class='id identifier rubyid_note'>note</span><span class='rparen'>)</span>
759
+ <span class='comment'># Setup default options
760
+ </span> <span class='id identifier rubyid_setting'>setting</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>Setting</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
761
+ <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span>
762
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>METHOD</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>RefundTransaction</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
763
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>TRANSACTIONID</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_transaction_id'>transaction_id</span><span class='comma'>,</span>
764
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>REFUNDTYPE</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_refund_type'>refund_type</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Partial</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
765
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>AMT</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_amount'>amount</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
766
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>CURRENCYCODE</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_currency'>currency</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>USD</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
767
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>NOTE</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_note'>note</span> <span class='op'>||</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_end'>&quot;</span></span>
768
+ <span class='rbrace'>}</span>
769
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
770
+
771
+ <span class='comment'># Http call to create profile and get response
772
+ </span> <span class='id identifier rubyid_query_string'>query_string</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertHashToQueryString</span><span class='lparen'>(</span><span class='id identifier rubyid_setting'>setting</span><span class='rparen'>)</span>
773
+ <span class='id identifier rubyid_refund_response_origin'>refund_response_origin</span> <span class='op'>=</span> <span class='const'>EZHttp</span><span class='period'>.</span><span class='const'>Send</span><span class='lparen'>(</span><span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>EndPoint</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>express_checkout_endpoint</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_query_string'>query_string</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>post</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span>
774
+
775
+ <span class='comment'># Convert response to Hash to return
776
+ </span> <span class='id identifier rubyid_profile_response'>profile_response</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertParamToHash</span><span class='lparen'>(</span><span class='id identifier rubyid_refund_response_origin'>refund_response_origin</span><span class='rparen'>)</span>
777
+ <span class='kw'>end</span></pre>
778
+ </td>
779
+ </tr>
780
+ </table>
781
+ </div>
782
+
783
+ <div class="method_details ">
784
+ <p class="signature " id="SetupExpressCheckout-class_method">
785
+
786
+ + (<tt>Hash</tt>) <strong>SetupExpressCheckout</strong>(cart, returnUrl, cancelUrl)
787
+
788
+
789
+
790
+ </p><div class="docstring">
791
+ <div class="discussion">
792
+
793
+ <p>Setup express checkout cart</p>
794
+
795
+
796
+ </div>
797
+ </div>
798
+ <div class="tags">
799
+ <h3>Parameters:</h3>
800
+ <ul class="param">
801
+
802
+ <li>
803
+
804
+ <span class='name'>cart</span>
805
+
806
+
807
+ <span class='type'>(<tt><span class='object_link'><a href="Cart/OneTimePurchaseCart.html" title="EZPaypal::Cart::OneTimePurchaseCart (class)">EZPaypal::Cart::OneTimePurchaseCart</a></span> / <span class='object_link'><a href="Cart/RecurringPurchaseCart.html" title="EZPaypal::Cart::RecurringPurchaseCart (class)">EZPaypal::Cart::RecurringPurchaseCart</a></span></tt>)</span>
808
+
809
+
810
+
811
+ </li>
812
+
813
+ <li>
814
+
815
+ <span class='name'>returnUrl</span>
816
+
817
+
818
+ <span class='type'>(<tt>String</tt>)</span>
819
+
820
+
821
+
822
+ </li>
823
+
824
+ <li>
825
+
826
+ <span class='name'>cancelUrl</span>
827
+
828
+
829
+ <span class='type'>(<tt>String</tt>)</span>
830
+
831
+
832
+
833
+ </li>
834
+
835
+ </ul>
836
+
837
+ <h3>Returns:</h3>
838
+ <ul class="return">
839
+
840
+ <li>
841
+
842
+
843
+ <span class='type'>(<tt>Hash</tt>)</span>
844
+
845
+
846
+
847
+ &mdash;
848
+ <div class='inline'>
849
+ <p>response = &quot;TOKEN&quot;</p>
850
+ </div>
851
+
852
+ </li>
853
+
854
+ </ul>
855
+
856
+ </div><table class="source_code">
857
+ <tr>
858
+ <td>
859
+ <pre class="lines">
860
+
861
+
862
+ 15
863
+ 16
864
+ 17
865
+ 18
866
+ 19
867
+ 20
868
+ 21
869
+ 22
870
+ 23
871
+ 24
872
+ 25
873
+ 26
874
+ 27
875
+ 28
876
+ 29
877
+ 30
878
+ 31
879
+ 32
880
+ 33
881
+ 34
882
+ 35
883
+ 36</pre>
884
+ </td>
885
+ <td>
886
+ <pre class="code"><span class="info file"># File 'lib/core/request.rb', line 15</span>
887
+
888
+ <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='const'>SetupExpressCheckout</span> <span class='lparen'>(</span><span class='id identifier rubyid_cart'>cart</span><span class='comma'>,</span> <span class='id identifier rubyid_returnUrl'>returnUrl</span><span class='comma'>,</span> <span class='id identifier rubyid_cancelUrl'>cancelUrl</span><span class='rparen'>)</span>
889
+ <span class='kw'>begin</span>
890
+ <span class='comment'># Setup default options
891
+ </span> <span class='id identifier rubyid_setting'>setting</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>Setting</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
892
+ <span class='id identifier rubyid_default'>default</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>METHOD</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>SetExpressCheckout</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span>
893
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>RETURNURL</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_returnUrl'>returnUrl</span><span class='comma'>,</span>
894
+ <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>CANCELURL</span><span class='tstring_end'>&quot;</span></span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_cancelUrl'>cancelUrl</span>
895
+ <span class='rbrace'>}</span>
896
+ <span class='id identifier rubyid_setting'>setting</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_default'>default</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='id identifier rubyid_cart'>cart</span><span class='rparen'>)</span>
897
+
898
+ <span class='comment'># Get setup express checkout details
899
+ </span> <span class='id identifier rubyid_query_string'>query_string</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertHashToQueryString</span><span class='lparen'>(</span><span class='id identifier rubyid_setting'>setting</span><span class='rparen'>)</span>
900
+ <span class='id identifier rubyid_setup_ec_response_origin'>setup_ec_response_origin</span> <span class='op'>=</span> <span class='const'>EZHttp</span><span class='period'>.</span><span class='const'>Send</span><span class='lparen'>(</span><span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Config</span><span class='period'>.</span><span class='const'>EndPoint</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>express_checkout_endpoint</span><span class='tstring_end'>&quot;</span></span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_query_string'>query_string</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>post</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_body'>body</span>
901
+
902
+ <span class='comment'># Convert express checkout details to Hash to return
903
+ </span> <span class='id identifier rubyid_setup_ec_response'>setup_ec_response</span> <span class='op'>=</span> <span class='const'>EZPaypal</span><span class='op'>::</span><span class='const'>Helper</span><span class='period'>.</span><span class='const'>ConvertParamToHash</span><span class='lparen'>(</span><span class='id identifier rubyid_setup_ec_response_origin'>setup_ec_response_origin</span><span class='rparen'>)</span>
904
+
905
+ <span class='kw'>return</span> <span class='id identifier rubyid_setup_ec_response'>setup_ec_response</span>
906
+ <span class='kw'>rescue</span>
907
+ <span class='id identifier rubyid_throw'>throw</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Error occured in SetupExpressCheckout</span><span class='tstring_end'>&quot;</span></span>
908
+ <span class='kw'>end</span>
909
+ <span class='kw'>end</span></pre>
910
+ </td>
911
+ </tr>
912
+ </table>
913
+ </div>
914
+
915
+ </div>
916
+
917
+ </div>
918
+
919
+ <div id="footer">
920
+ Generated on Sat Apr 21 02:53:51 2012 by
921
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
922
+ 0.7.5 (ruby-1.9.3).
923
+ </div>
924
+
925
+ </body>
926
+ </html>