你有没有见过这种页面:商品卡片标着价格和库存,点进去填个邮箱、扫码付款,卡密几秒钟自动发到邮箱——全程没有客服、没有发货员,站长睡觉的时候它也在卖货。
这类「自动发卡站」,国内开源圈最有名的一套程序就是独角数卡。GitHub 12.1k Star,做卡商、卖软件激活码、卖网课账号的站长,用它的不计其数。
我把 2.0.6 版从安装到发卡完整跑了一遍。先说结论:功能是真全——预置 16 种支付方式、付款秒发卡密,还有批发价、优惠码、自定义下单输入框这些进阶功能;安装是真有坑——Redis、composer 平台检查、PHP 扩展三道关,我都踩平了。这篇先把它是干什么的、能干什么讲透,再把搭建步骤和坑位写清楚,看完你就知道值不值得用、怎么用。
独角数卡能干什么
它专门服务一类生意:卖虚拟商品。对号入座——
- 游戏点卡、直充卡密:买家付款秒到卡密,自己拿去充
- 软件激活码、License:自动发码,批量卖也不乱
- 网课账号、会员共享号:人工审核再发货,防批量薅羊毛
- 教程资料、工具下载:付款后自动发下载链接
这些生意的共同点:商品虚拟、交付即时、客户遍布全国。上电商平台要么不给卖、要么抽成重,自建一套发卡站、收款直接进自己口袋,是这个圈子的常规玩法。
核心功能亮点
- 16 种支付方式预置:支付宝当面付、支付宝 PC、码支付、Paysapi、Payjs、易支付、PayPal、Stripe…… 主流收款渠道全覆盖
- 两种发货模式混用:自动发货(付款秒发邮箱)+ 人工处理(手动发货),一个站两种生意都能做
- 卡密批量管理:一行一条批量导入,卖出自动扣减、去重分配
- 营销工具齐全:批发价(买 ≥N 件每件降价)、优惠码、限购、商品分类
- 自定义下单输入框:卖游戏账号要收集买家 QQ 号?给商品加一个必填输入框就行
- 三套前台模板:官方独角兽、Luna、hyper,后台一键切换
- 站点级配置:防红开关、图形验证码、订单过期时间、邮件模板
- 管理后台:dcat-admin 内核,简繁中文
底子怎么样
- 版本:2.0.6(Release 停在 2021 年,仓库到 2026 年还有代码提交)
- 协议:MIT——商用、改代码、闭源分发都不限
- 技术栈:Laravel 6 + dcat-admin 2.x
- GitHub:12.1k star / 2.8k fork
它跟普通电商程序不一样。没有购物车、没有物流,整个流程就一条线:「选商品 → 填邮箱 → 付款 → 收卡密」。卖实物不行,卖虚拟的很顺。
我的测试环境
| 项目 | 配置 |
|---|---|
| 系统 | Windows + 宝塔面板 |
| PHP | 8.0.28(宝塔装的) |
| 数据库 | MySQL 8.0 |
| Redis | 5.0.14.1(Windows 移植版) |
- 站点名改成了「源码湾」,方便对照截图
上手搭建:三道关我都踩平了
第一步:先装 Redis,这步跳不过
独角数卡强依赖 Redis——缓存和队列全走它,安装向导会当场测 Redis 连通性,没有 Redis 直接装不下去。
Windows 下 Redis 官方版 2016 年就停更了,但有个老哥(tporadowski)一直在维护移植版。去 GitHub 搜 tporadowski/redis,下 5.0.14.1 的 zip,解压后命令行里跑:
redis-server.exe redis.windows.conf看到 The server is now ready to accept connections on port 6379 就成了,挂着别关。
第二步:PHP 环境处理,三个坑都在这
坑一:宝塔默认禁用函数拦 composer。
composer install 跑到一半报 putenv() has been disabled——宝塔 php.ini 的 disable_functions 默认禁了一长串函数,composer 要用。去 PHP 设置里把 putenv 放开,再跑,又报 proc_get_status();再放开,又报 passthru()。我是分三次才把 composer 伺候好。
坑二:PHP 8 装依赖报平台检查错。
放开函数后 composer 还是不给装:
bacon/bacon-qr-code 1.0.3 requires php ^5.4|^7.0 -> your php version (8.0.28) does not satisfy that requirement.它的依赖清单锁着 PHP 7,PHP 8 环境直接拒装。加个参数绕过:
composer install --ignore-platform-reqs装完实际跑起来没问题,package:discover 全过,安装、下单、发货全流程都验证过。清单是老的,代码兼容性没事。
坑三:Redis 扩展没启用。
这个坑在提交安装向导时才爆出来,页面弹一行英文:Please make sure the PHP Redis extension is installed and enabled.
宝塔的 php_redis.dll 其实早就在 ext 目录里躺着,只是 php.ini 里没写。加一行:
extension=php_redis.dll重启 PHP 服务。
第三步:跑安装向导
php artisan serve --port=9095浏览器打开 http://127.0.0.1:9095,自动跳安装向导。第一屏就是填数据库:

往下滚动还有 Redis 连接信息和站点名称。下图是填完的状态,站点名称我填的「源码湾」:

提交,等进度条跑完:

它会自动建库导表(20 多张表)、写好 .env 和 install.lock。
默认管理员账号 admin,密码也是 admin,后台地址 /admin。装完第一件事就是去改密码。
界面实拍:前台和后台
前台
首页是商品列表,可按分类筛选:

商品卡片上标着「自动发货」「人工处理」两种类型。自动发货就是付款秒发卡密,人工处理是下单后你去后台手动发。
点进商品是下单页:

填邮箱、选数量、选支付方式,下单就完事。支付通道预置了一大把——支付宝当面付、支付宝 PC、码支付、Paysapi、Payjs、易支付、PayPal、Stripe……十几种可选,多到一屏放不下。
订单查询页:

三种查法:订单号、下单邮箱、浏览器(按浏览器记录查)。客户把订单号丢了也能找回来。
后台
后台是 dcat-admin 的老味道,登录页很素:

进后台先看仪表盘:

订单数、成交率、销售额、待处理订单,都在一屏里。
(小槽点:仪表盘写的 V2.0.5,源码标签明明是 2.0.6,作者忘了改,不影响用。)
商品管理:

自动发货的商品库存不用自己填——系统按卡密数量自动算。我传了 3 条卡密,库存就显示 3。
新增商品页字段挺全:

除了常规的名字、描述、分类、价格,有个「批发价配置」——填 5=3 表示买 5 件及以上每件 3 元,适合走量。下面还有「其他输入框配置」,能给指定商品加自定义输入框:比如卖游戏账号要收集买家的 QQ 号,填 qq_account=QQ账号=true,下单页就会多一个必填输入框。
卡密管理:

批量导入就在这,一行一条卡密,导进去即入库。自动发货的商品卖出后自动扣减。
订单管理:

订单状态、支付通道、下单 IP、查询密码都在这。我这个是全新站所以是空的,真实运营后所有订单都会进这个列表。
系统设置:

网站标题、LOGO、公告、模板、语言都在这改。内置三套前台模板(官方独角兽、Luna、hyper),防红开关、图形验证码、订单过期时间这些也有。
支付配置:

预置了十几个支付方式的模板,每个填上自己的商户号、密钥、公私钥就能启用,不用改一行代码。另外还有「优惠管理」,能建优惠码做满减、折扣,这菜单在左侧栏里,我没单独截图。
说几个缺点
- 必须 Redis。这是最硬的坎——虚拟主机、只有 MySQL 的便宜空间,基本无缘,你得会自己装 Redis 服务
- PHP 8 装依赖要绕。依赖清单锁在 PHP 7,PHP 8 环境 composer 直接拒装,得加
--ignore-platform-reqs才能过 - 后台界面是 2019 年的味道。dcat-admin 2.x 的风格,能用,不好看。好在前台有 3 套模板可选
- Release 停在 2021 年。2.0.6 之后没发过新版,虽然仓库还有提交,但大版本 5 年没动了。介意项目活跃度的要掂量
反过来说,它的功能完成度是真的高。支付通道、发卡逻辑、订单查询这些核心功能,比不少收费的同类程序还全——12.1k star 不是白来的。
常见问题
源码获取
上面教程用的完整包,我整理好放夸克网盘了,免费取:
- 官方 2.0.6 源码,已装好 composer 依赖(vendor 目录全量打包,不用你自己跑 composer,省掉上面那几个坑的一半)
- 原版 LICENSE(MIT)
- 免责声明 + 跳转文件
上面记的这些坑,你自己走一遍也都会遇到。环境、依赖、配置、目录结构,一个都省不了。包里是我这边全部跑通之后才打的——要跳过这几步,直接拿下面这个。
两个小提醒:
- 建议先「转存到自己网盘」再下载——直接下载的链接容易失效,转存后就是你自己的了,随时能下;
- 手机上操作:点开链接 → 右下角「保存到网盘」→ 回夸克 App 的「我的网盘」里下载。
装之前先确认两件事:PHP ≥ 7.2(8.0 我实测没问题)、有 Redis 可用。其他的照上面走就行。