Lib NodeJS que integra o serviço de pagamentos online do PagSeguro.
Via linha de comando, use:
npm install pagseguro.js
Você também pode adicionar como dependência em seu package.json
:
"dependencies": {
"pagseguro.js": "*"
}
var pagseguro = require('pagseguro' [, 'test']);
// Ao iniciar a instância deve-se passar os dados do
// vendedor para obter acesso à API.
var compra = pagseguro({
'name': 'Nome da loja',
'email': '[email protected]',
'token': 'TOKEN DE ACESSO'
});
compra.product.add({
'id': 'Livro - A Lei de Parkinson',
'description': 'A "Lei de Parkinson" é um achado genial de transparente simplicidade.',
'amount': 35.9,
'quantity': 1,
'weight': 30
});
compra.product.add({
'id': 'Caneta marca texto',
'description': 'Cor azul, número 2',
'amount': 3,
'quantity': 2,
'shippingCost': 1.7
});
compra.sender({
'name': 'João da Silva',
'email': '[email protected]',
'areaCode': 11,
'phone': '3030-3344',
'document': '99999999999',
'born': 'dd/MM/yyyy'
});
compra.shipping.set({
'type': 3,
'cost': 5.60,
'postalCode': '01001-000',
'state': 'SP',
'city': 'São Paulo',
'district': 'Sé',
'street': 'Praça da Sé',
'number': '500',
'complement': 'Lado Impar'
});
compra.checkout(function(err, res, body) {
if( !!err === false && !!body.errors === false ) {
// grava os dados no banco de dados
mongodb.save( body.checkout );
// redireciona o usuário para pagamento
res.redirect('https://pagseguro.uol.com.br/v2/checkout/payment.html?code=' + body.checkout.code);
}
});
});
compra.transactions(codigo, function(err, res, body) {
if( !!err === false && !!res.statusCode !== 404 ) {
// grava os dados no banco de dados
mongodb.save( body.transaction );
}
});
Para executar os testes, é necessário enviar via variável de ambiente o e-mail e o token de acesso à API do PagSeguro e os códigos de transações, se necessário:
PAGSEGURO_TEST=true [email protected] PAGSEGURO_TOKEN=XXXXXXX npm test
PAGSEGURO_TEST=true PAGSEGURO_CODES=123,456,789 [email protected] PAGSEGURO_TOKEN=XXXXXXX npm test