-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.js
102 lines (85 loc) · 2.81 KB
/
app.js
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
var express = require('express');
var exphbs = require('express-handlebars');
var port = process.env.PORT || 3000
var app = express();
function create_preference(req,res){
let preference = {
"back_urls": {
"success": "https://carlosdanielpohlod.herokuapp.com/success",
"failure": "https://carlosdanielpohlod.herokuapp.com/failure",
"pending": "https://carlosdanielpohlod.herokuapp.com/pending"
},
"auto_return": "approved",
"payment_methods": {
"excluded_payment_methods": [
{
"id": "amex"
}
],
"installments": 6
},
"notification_url": "https://beeceptor.com/console/mercadopagoteste",
"statement_descriptor": "Tienda e-commerce",
"external_reference": "[email protected]",
"items": [
{
"ID": 1234,
"title": req.query.title,
"description": "Celular de Tienda e-commerce",
"quantity": 1,
"unit_price": parseFloat(req.query.price)
}
],
"payer": {
"id":"725762927",
"name": "Lalo",
"surname": "Landa",
"email":"[email protected]",
"identification": {
"type": "CPF",
"number": ""
},
"address": {
"street_name": "Insurgentes Sur",
"house_number":"1602",
"zip_code": " 78134-190"
}
}
}
const mercadopago = require ('mercadopago');
mercadopago.configure({
access_token: 'APP_USR-334491433003961-030821-12d7475807d694b645722c1946d5ce5a-725736327',
public_key:'APP_USR-6096a634-0b35-452c-94c9-a18adb8ffb15',
integrator_id:'dev_24c65fb163bf11ea96500242ac130004',
collector_id:'725736327'
});
mercadopago.preferences.create(preference)
.then(function(response){
req.query['init_point'] = response.body.init_point
req.query['preference_id'] = response.body.id
res.render('detail', req.query);
}).catch(function(error){
console.log(error);
});
return global
}
app.engine('handlebars', exphbs());
app.set('view engine', 'handlebars');
app.use(express.static('assets'));
app.use('/assets', express.static(__dirname + '/assets'));
app.get('/', function (req, res) {
res.render('home');
});
app.get('/success', (req, res)=>{
res.render('success', req.query)
})
app.get('/pending', (req, res) => {
res.render('pending')
})
app.get('/failure', (req, res) => {
res.render('failure')
})
app.get('/detail', function (req, res) {
create_preference(req,res)
});
app.listen(port);