ez_paypal 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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>