erilshk/vinti4net 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

erilshk/vinti4net

Composer 安装命令:

composer require erilshk/vinti4net

包简介

SDK PHP de integração com a RedeVinti4 (SISP, Cabo Verde) para pagamentos online completo e seguro. Compra 3DS, Pagamento de Serviço, Recargas, Reembolsos e Recibos

README 文档

README

SDK PHP para integração com o sistema de pagamentos Vinti4Net (SISP Cabo Verde, Serviço MOP021).

Packagist Version PHP Version License: MIT Build Status cobertura

📦 Instalação

composer require erilshk/vinti4net

🚀 Começo Rápido

1. Configuração Básica

Esta parte do código deve estar presente em ambos os arquivos de processamento e resposta

<?php

require_once 'vendor/autoload.php';

use Erilshk\Sisp\Vinti4Net;

// Configuração
$vinti4 = new Vinti4Net(
    posID: 'SEU_POS_ID',           // Fornecido pelo SISP
    posAuthCode: 'SEU_AUTH_CODE',  // Fornecido pelo SISP
    endpoint: null                 // Opcional: URL customizada para testes
);

2. Criar Pagamento

// Pagamento com 3DS (Compra)
$vinti4->preparePurchase(
    amount: 1500.00,
    billing: [
        'email' => 'cliente@email.com',
        'billAddrCountry' => '132', // Código do país (132 = Cabo Verde)
        'billAddrCity' => 'Praia',
        'billAddrLine1' => 'Rua Exemplo, 123',
        'billAddrPostCode' => '7600'
    ],
    currency: 'CVE' // opcional
);

// Ou pagamento de serviço (Água, Luz, etc.)
$vinti4->prepareServicePayment(
    amount: 2500.00,
    entity: 10001,        // Código da entidade (ex: ELECTRA)
    number: '123456789'   // Referência do cliente
);

// Ou recarga de telemóvel
$vinti4->prepareRecharge(
    amount: 500.00,
    entity: 10021,        // Código da operadora (ex: CVMóvel)
    number: '9912345'     // Número de telefone
);

3. Gerar Formulário de Pagamento

$htmlForm = $vinti4->createPaymentForm(
    responseUrl: 'https://seusite.com/pagamento/callback',
    lang: 'pt' // Opcional: languageMessages
);

echo $htmlForm; // Formulário auto-submissível

4. Processar Resposta (Callback)

// No seu endpoint de callback (ex: /pagamento/callback)
$response = $vinti4->processResponse($_POST);

if ($response->isSuccess()) {
    // Pagamento aprovado
    $transactionId = $response->getTransactionId();
    $amount = $response->getAmount();
    
    // Atualizar DB
    // Liberar produto/serviço
    
} elseif ($response->isCancelled()) {
    // Usuário cancelou
    echo "Pagamento cancelado pelo usuário";
    
} elseif ($response->hasInvalidFingerprint()) {
    // Erro de segurança
    error_log("Fingerprint inválido: " . json_encode($response->debug));
    
} else {
    // Erro no pagamento
    echo "Erro: " . $response->message;
    echo "Detalhe: " . $response->detail;
}

📋 Tipos de Transação

Tipo Método Descrição
💳 Compra 3DS preparePurchase() Compras com autenticação 3D Secure
🧾 Serviço prepareServicePayment() Pagamento de entidades (água, luz, etc.)
📱 Recarga prepareRecharge() Recarga de telemóvel
💰 Reembolso prepareRefund() Estorno de transação

🧾 Gerar Recibo

$response = $vinti4->processResponse($_POST);

// Gerar recibo HTML
$receiptHtml = $response->generateReceiptHtml(
    companyName: 'Sua Empresa Lda',
);

echo $receiptHtml;

🔧 Configuração Avançada

Parâmetros Customizados

$vinti4->setRequestParams([
    'merchantRef' => 'REF_CUSTOM',
    'merchantSession' => 'SESS_CUSTOM',
    'languageMessages' => 'pt', // ou 'en'
    'timeStamp' => '2024-01-01 12:00:00'
]);

Reembolso

$vinti4->prepareRefund(
    amount: 1500.00,
    merchantRef: 'E_REFERENCE',
    transactionID: 'TXN78901',
    clearingPeriod: '2411'
);

🛡️ Tratamento de Erros

try {
    $vinti4->preparePurchase(1500, $billing);
    $form = $vinti4->createPaymentForm('https://callback.com');
    echo $form;
    
} catch (InvalidArgumentException $e) {
    echo "Erro de validação: " . $e->getMessage();
    
} catch (Exception $e) {
    echo "Erro geral: " . $e->getMessage();
}

🧪 Testes

Maintenance Coverage Status

# Executar testes
composer test

# Testes com cobertura
composer test-coverage

codecov

🔗 Links Úteis

📄 Licença

MIT License - veja LICENSE para detalhes.

🤝 Contribuições

Contribuições são bem-vindas! Por favor, leia CONTRIBUTING antes de enviar Pull Requests.

Desenvolvido com ❤️ para Cabo Verde

GitHub followers Stars Contributors Issues

erilshk/vinti4net 适用场景与选型建议

erilshk/vinti4net 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 73 次下载、GitHub Stars 达 1, 最近一次更新时间为 2025 年 11 月 16 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「sisp」 「vinti4」 「vinti4net」 「cabo verde」 「sisp-php」 「vinti4pay」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 erilshk/vinti4net 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 erilshk/vinti4net 我们能提供哪些服务?
定制开发 / 二次开发

基于 erilshk/vinti4net 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 73
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 34
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-11-16