Beispiel #1
0
            db.collection('usuario').update({'email':usuario.email},{$set:{'compras':usuario.compras}}, function(err,compraFeita){
                var pagseguro = require('pagseguro');
                var pag = new pagseguro({
                    email: '*****@*****.**',
                    token: '594E47A96886469AB5452A7DD3695452',
                    mode: 'sandbox'//////////////tirar sandbox daqui
                });

                pag.currency('BRL');
                pag.reference('12345');
                var valorFinal = req.body.valor.replace(',','.');
                var valorUnitario = parseFloat(valorFinal/req.body.quantidade).toFixed(2);
                pag.addItem({
                    id: 1,
                    description: req.body.oferta,
                    amount: valorUnitario,
                    quantity: req.body.quantidade
                });

                pag.buyer({
                    name: usuario.nome,
                    email: usuario.email
                });

                pag.setRedirectURL("http://localhost:3000/compraconcluida.html");////////////////URL de retorno para o usuário
                pag.setNotificationURL("http://localhost:3000/notificacao");//////////URL de notificacao para mudança de pagamento

                pag.send(function(err, resposta) {
                    if (err) {
                        console.log(err);
                    }
                    var parseString = require('xml2js').parseString;
                    console.log(resposta);
                    var xml = resposta;
                    parseString(xml, function (err, result) {
                        console.log(result);
                        var codigo = result.checkout.code[0];
                        console.log(codigo);
                        res.send({status:2,codigo:codigo});

                    });
                });
            })
Beispiel #2
0
var xml2js = require('xml2js');
var pagseguro = require('pagseguro');
//Inicializar a função com o e-mail e token
var pag, pagseguro;
pagseguro = require('pagseguro');
pag = new pagseguro('*****@*****.**', 'E4C115D9E959499BB524AAD7EA79255B');

//Configurando a moeda e a ferência do pedido
pag.currency('BRL');
pag.reference('12345');

//Adicionando itens
//pag.addItem({
//    id: 1,
//    description: 'Descrição do primeiro produto',
//    amount: "4230.00",
//    quantity: 3
//});

pag.addItem({
    id: 1,
    description: 'melancia',
    amount: '0.25',
    quantity: 1
})

pag.addItem({
    id: 2,
    description: 'melancia 02',
    amount: '0.85',
    quantity: 1
Beispiel #3
0
  payment: (req, res) => {

    const bag = req.session.shoppingBag;

    if (!bagHasItems(bag)) {
      res.json(apiResultFactory.errorResult('Escolha as peças que você mais gostou e nos conte suas medidas para fazer seu pedido e receber em sua casa peças incríveis feitas exclusivamente para você!'));
      return;
    }

    if (!bag.shipping.address || !bag.shipping.address.addressId) {
      res.json(apiResultFactory.errorResult('Diga pra gente um endereço onde possamos te entregar suas peças exclusivas feitas especialmente para você!'));
      return;
    }

    const pag = new PagSeguro({email: '*****@*****.**', token: '6F26796364124974844649FEAD6B1A71', mode: 'sandbox'});

    pag.currency('BRL');

    Object
      .keys(bag.items)
      .map(itemId => {
        var item = bag.items[itemId];
        pag.addItem({
          id: itemId,
          description: item.product.name,
          amount: parseFloat(item.product.price).toFixed(2),
          quantity: 1,
          weight: item.product.weight
        });
      });

    //Configurando as informações do comprador
    pag.buyer({name: req.user.name, email: req.user.email});

    const addr = bag.shipping.address;

    pag.shipping({
      type: 1,
      street: addr.street,
      number: addr.number,
      complement: addr.obs,
      district: addr.district,
      postalCode: addr.code,
      city: addr.city,
      state: addr.state,
      country: 'BRA'
    });

    // pag.setNotificationURL('http://www.lojamodelo.com.br/notificacao'); Enviando o
    // xml ao pagseguro
    pag.send(function (err, pagSeguroResponse) {
      if (err) {
        res.json(apiResultFactory.errorResult(err));
        return;
      }

      parseXml(pagSeguroResponse, function (xmlErr, result) {
        if (xmlErr) {
          res.json(apiResultFactory.errorResult(err));
          return;
        }

        if (result.errors) {
          res.json(apiResultFactory.errorResult(result.errors.error[0].message));
          return;
        }

        if(!result.checkout || !result.checkout.code[0]){
          res.json(apiResultFactory.errorResult('Não conseguimos finalizer o código pagamento no PagSeguro.'));
          return;
        }

        res.json(apiResultFactory.successResult({token: result.checkout.code[0]}));
      });

    });

  },