forked from totaljs/examples
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdefault.js
More file actions
62 lines (52 loc) · 1.5 KB
/
default.js
File metadata and controls
62 lines (52 loc) · 1.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// $ npm install paypal-express-checkout
var paypal = require('paypal-express-checkout');
exports.install = function() {
F.route('/');
F.route('/pay/', redirect_payment);
F.route('/paypal/ok/', view_payment);
};
function redirect_payment() {
var self = this;
var payment = paypal.init(CONFIG('paypal-user'), CONFIG('paypal-password'), CONFIG('paypal-signature'), CONFIG('paypal-return'), CONFIG('paypal-cancel'), DEBUG);
var orderNumber = 100;
var price = 12.23;
payment.pay(orderNumber, price, 'support', 'EUR', function(err, url) {
if (err)
self.throw500(err);
else
self.redirect(url);
});
};
function view_payment() {
var self = this;
var payment = paypal.init(CONFIG('paypal-user'), CONFIG('paypal-password'), CONFIG('paypal-signature'), CONFIG('paypal-return'), CONFIG('paypal-cancel'), DEBUG);
payment.detail(self, function(err, data) {
if (err) {
self.throw500(err);
return;
}
/*
{
"TOKEN": "EC-2CM91608R1120253F",
"TIMESTAMP": "2013-01-27T10:18:20Z",
"CORRELATIONID": "d5b0e56e2875b",
"ACK": "Success",
"VERSION": "52.0",
"BUILD": "4181146",
"TRANSACTIONID": "5BG30034J7311192A",
"TRANSACTIONTYPE": "expresscheckout",
"PAYMENTTYPE": "instant",
"ORDERTIME": "2013-01-27T10:18:19Z",
"AMT": "12.23",
"TAXAMT": "0.00",
"CURRENCYCODE": "EUR",
"PAYMENTSTATUS": "Pending",
"PENDINGREASON": "multicurrency",
"REASONCODE": "None"
}
*/
if (data.ACK === 'Success')
console.log('OK');
self.json(data);
});
};