carllee1983/ecpay-einvoice-b2c 问题修复 & 功能扩展

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

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

carllee1983/ecpay-einvoice-b2c

最新稳定版本:v5.0.0

Composer 安装命令:

composer require carllee1983/ecpay-einvoice-b2c

包简介

ECPay e-Invoice API wrapper with DTO-based operations, Laravel coordinator, and sandbox-ready docs

README 文档

README

此套件封裝綠界電子發票(B2C)API,提供 Operations/Queries/Notifications 的一致介面、DTO-based 欄位建構、加密/解密與 Laravel 整合。

需求

  • PHP ^8.3

安裝

composer require carllee1983/ecpay-einvoice-b2c

快速開始

use CarlLee\EcPayB2C\EcPayClient;
use CarlLee\EcPayB2C\Operations\Invoice;
use CarlLee\EcPayB2C\DTO\InvoiceItemDto;

$server = 'https://einvoice-stage.ecpay.com.tw';
$merchantId = '2000132';
$hashKey = 'ejCk326UnaZWKisg';
$hashIV = 'q9jcZX8Ib9LM8wYk';

$client = new EcPayClient($server, $hashKey, $hashIV);

$invoice = new Invoice($merchantId, $hashKey, $hashIV);
$invoice->setRelateNumber('YEP' . date('YmdHis'))
    ->setCustomerEmail('demo@example.com')
    ->setItems([
        InvoiceItemDto::fromArray(['name' => '商品範例', 'quantity' => 1, 'unit' => '', 'price' => 100]),
    ])
    ->setSalesAmount(100);

$response = $client->send($invoice);
$data = $response->getData();

命令契約(重要)

  • EcPayClient::send() 只接受 CarlLee\EcPayB2C\Contracts\SendableCommandInterface(通常直接繼承 CarlLee\EcPayB2C\Content 即可)。
  • 舊的 CarlLee\EcPayB2C\InvoiceInterface 已標記 deprecated(相容層)。
  • 若需自行檢視「實際送出的加密內容」,建議呼叫 Content::getTransportBody()getContent() 為相容名稱)。

文件

  • docs/README.md:文件索引與流程圖
  • docs/api-overview.md:介接流程與模組總覽
  • docs/error-codes.md:常見錯誤碼與驗證訊息

统计信息

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

GitHub 信息

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

其他信息

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

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固