Biblioteca de integração PagSeguro UOL com checkout transparente para Node.js
npm install node-pagseguro
var PagSeguro = require('node-pagseguro');
var payment = new PagSeguro({
email: 'email@account.com',
token: 'ABCDEFGH12345678ABCDEFGH12345678',
currency: '' //opcional - default BRL
})
ou
var PagSeguro = require('node-pagseguro');
var payment = new PagSeguro({
email: 'email@account.com',
token: 'ABCDEFGH12345678ABCDEFGH12345678',
sandbox: 0,
sandbox_email: '123123123123123@sandbox.pagseguro.com.br'
})
Para utilizar o modo Sandbox é necessário configurar com o e-mail obtido nas configurações do PagSeguro Sandbox e passar o valor 1 para o parâmetro 'sandbox'.
var payment = new PagSeguro({
email: 'email@account.com',
token: 'ABCDEFGH12345678ABCDEFGH12345678',
sandbox: 1,
sandbox_email: '123123123123123@sandbox.pagseguro.com.br'
})
payment.setSender({
name: String,
email: String,
cpf_cnpj: String,
area_code: String,
phone: String,
birth_date: String //formato dd/mm/yyyy
})
Utilizar essa função apenas se o proprietário do cartão de crédito for diferente do comprador
payment.setCreditCardHolder({
name: String,
cpf_cnpj: String,
area_code: String,
phone: String,
birth_date: String //formato dd/mm/yyyy
})
payment.setShipping({
street: String,
number: String,
district: String,
city: String,
state: String,
postal_code: String,
same_for_billing: Boolean //opcional, informar se o endereço de entrega for o mesmo do endereço de cobrança
})
Se a propriedade same_for_billing
do endereço de entrega (shipping) não for definido, os dados de cobrança são obrigatórios
payment.setBilling({
street: String,
number: String,
district: String,
city: String,
state: String,
postal_code: String
})
payment.addItem({
qtde: Number,
value: Number,
description: String
})
payment.sessionId(function(err, session_id) {
});
payment.sendTransaction({
method: String, //'boleto' ou 'creditCard'
value: Number,
installments: Number, //opcional, padrão 1
extra_amount: Number, //opcional, padrão 0
hash: String //senderHash gerado pela biblioteca do PagSeguro
}, function(err, data) {
});