问题
Print Factory是意大利南部科森扎的一家印刷店,为到店客户、在线顾客和合作门店印制服装。订单来自四面八方,而门店、生产车间和合作伙伴都需要基于同一份数据工作。
我做了什么
我开发了一个定制PHP平台:公开网站、网店、管理面板,以及面向合作伙伴的API。
- 合作伙伴订单API——外部商店(首家是InCattedra)用各自的密钥发送订单。每个合作伙伴都有沙盒环境、请求限额和IP白名单,并且只能看到自己的订单;重复发送的订单不会被重复创建。
- 签名的状态webhook——每次状态变更都会回传给合作伙伴,以HMAC-SHA256签名;如果投递失败,会在1秒、5秒、30秒、5分钟和30分钟后重试。
- 在线定制器——顾客选择服装、颜色和尺码,上传设计,或从个人图形区重新打开已保存的项目。
- AI图像工作室——借助OpenAI和Replicate模型创建和编辑图片的工具,内容仅在顾客账户中私有保存。
- 生产车间屏幕——一个平板视图,列出每台机器要完成的每个步骤,按部门、紧急程度和负责人标记,员工一看就知道下一步做什么。
- 工单与结账——带时间线和PDF工单的作业,结账支持PayPal、银行转账或货到付款。
- 版税报告——由Print Factory销售其设计的合作伙伴会获得一个私密链接,查看自己的销售额和版税,不含任何顾客数据。
技术栈
在Apache上从零编写的PHP 8.3、由cron驱动的合作伙伴订单和邮件队列,以及OpenAI、Anthropic和Replicate API。
为什么这样做
DTF印刷需要真正透明的背景。一张看似已抠图、实际却在白底上合并过的PNG,印在深色T恤上会变成一个浅色矩形。因此平台会检查每个文件,清除边缘的浅色光晕,并在送印前以真实的服装颜色预览设计。


