
Security News
Axios Maintainer Confirms Social Engineering Attack Behind npm Compromise
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.
multi-acquirer-payment-controller
Advanced tools
Pacote de integração com múltiplas adquirentes de pagamento
Pacote de integração com múltiplas adquirentes de pagamento, permitindo processar pagamentos com diferentes provedores através de uma interface unificada.
npm install multi-acquirer-payment-controller
import { PaymentController } from 'controller-payment-multi-acquirer';
// Cria o controlador com o provedor desejado
const paymentController = new PaymentController('pagseguro');
// Inicializa com as credenciais
await paymentController.initialize({
email: 'seu-email@exemplo.com',
token: 'seu-token-de-acesso'
}, 'sandbox'); // ou 'production'
const paymentResult = await paymentController.generatePayment({
orderId: 'pedido-123',
description: 'Compra na loja virtual',
amount: 1000, // R$ 10,00
customer: {
name: 'José da Silva',
email: 'jose@email.com',
documentNumber: '12345678909'
},
items: [
{
id: 'produto-1',
name: 'Produto de Teste',
quantity: 1,
unitAmount: 1000
}
],
paymentMethod: {
type: 'credit_card',
installments: 1,
card: {
number: '4111111111111111',
expirationMonth: 12,
expirationYear: 2030,
securityCode: '123',
holderName: 'José da Silva'
}
}
});
console.log('Pagamento gerado:', paymentResult);
const paymentInfo = await paymentController.queryPayment('ID_DO_PAGAMENTO');
console.log('Informações do pagamento:', paymentInfo);
// Estorno total
const refundResult = await paymentController.refundPayment('ID_DO_PAGAMENTO');
console.log('Estorno realizado:', refundResult);
// Estorno parcial
const partialRefundResult = await paymentController.refundPayment('ID_DO_PAGAMENTO', 500); // R$ 5,00
console.log('Estorno parcial realizado:', partialRefundResult);
// Altera para outro provedor
paymentController.changeProvider('mercadopago');
// Inicializa com as credenciais do novo provedor
await paymentController.initialize({
accessToken: 'seu-access-token-do-mercado-pago'
}, 'sandbox');
import { PaymentError, ErrorCodes } from 'controller-payment-multi-acquirer';
try {
const paymentResult = await paymentController.generatePayment({
// dados do pagamento
});
} catch (error) {
if (error instanceof PaymentError) {
console.error(`Erro de pagamento: ${error.message}`);
console.error(`Código: ${error.code}`);
console.error('Dados adicionais:', error.data);
// Tratamento específico por código de erro
if (error.code === ErrorCodes.PAYMENT_CREATION_ERROR) {
// Lógica específica para erro de criação de pagamento
}
} else {
console.error('Erro desconhecido:', error);
}
}
Para adicionar uma nova adquirente, você precisa:
src/gateways com o nome da adquirentePaymentGatewayInterfacePaymentGatewayFactoryO pacote inclui testes automatizados para todas as funcionalidades principais. Os testes estão localizados na pasta .tests e são organizados por funcionalidade:
Para executar todos os testes:
npm test
Para executar testes específicos:
# Teste de inicialização
npm run test:init
# Teste de criação de pagamento
npm run test:create
# Teste de consulta de pagamento
npm run test:query
# Teste de estorno de pagamento
npm run test:refund
# Executar todos os testes em sequência
npm run test:all
Para mais detalhes sobre os testes, consulte o README da pasta de testes.
MIT
FAQs
Pacote de integração com múltiplas adquirentes de pagamento
We found that multi-acquirer-payment-controller demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.