我已阅读并接受
《映美云开放平台开发者协议》
×
打印机默认纸张宽度和DPI值
打印机型号 | 默认纸张宽度 | 打印机DPI |
---|---|---|
MCP-58 | 58mm | 204 |
MCP-350 | 80mm | 204 |
MCP-360 | 80mm | 204 |
FP-570 | 80mm | 180 |
MCP-610 | 80mm | 180 |
MCP-230 | 78mm | 204 |
MCP-330 | 80mm | 204 |
CLP-180 | 110mm | 204 |
CFP-535 | 203.2mm | 180 |
CLQ-200FW | 110mm | 180 |
- API新手接入指南
- API调用协议说明
- API参数规定说明
- API调用安全规范
- 云打印数据安全方案
- 获取访问令牌接口
- 查询打印机基础信息接口
- 绑定打印机接口
- 解绑打印机接口
- 检查打印机绑定结果接口
- 取消待打印任务接口
- 打印映美规范HTML页面-传URL地址接口
- 打印映美规范HTML页面-传HTML代码接口
- 打印标准规范HTML页面-传HTML代码接口
- 打印标准规范HTML页面-传URL接口
- 打印标准规范HTML页面-转灰度图接口
- 打印ESC指令接口
- 打印定点坐标文本接口
- 打印黑白标签接口
- 打印彩色标签接口
- 打印TSPL指令接口
- 打印快递面单接口
- 打印云模版接口
- 查询云模版接口
- 打印本地文档接口
- 打印远程文档接口
- 打印发票接口
- 语音播报接口
- 打印任务结果回调更新接口
- 打印设备状态回调更新接口
- 获取 MQTT 配置
- 关闭 MQTT 推送
- 订阅打印机状态
- 订阅打印任务状态
- 示例代码
- API状态返回码对应表
小票热敏打印机
MCP-58
MCP-58 热敏打印机行最多只能打印 32 个 12px 字符,也就是 HTML 里的 BODY 最宽是 32X12=384px 的宽度,所以在传给的是这种打印机,最大的宽度是按 384px 处理的, 设置 body 的 width 也无效。
MMCP-350、MCP-360、MCP-330
MP-350 热敏打印机行最多只能打印 48 个 12px 字符,也就是 HTML 里的 BODY 最宽是 48X12=576px 的宽度,所以在传给的是这种打印机,最大的宽度是按 576px 处理的;
MCP-350、MCP-360、CP-330 能处理的字符和大小更丰富一些,但当前的应用只能处理 同 MCP-58 相同的字体和字符.
小票针式打印机
MCP-230D/DC、MCP-610D/D
MCP-230D/DC、MCP-610D/DC 针式打印机打印速度相对较慢,MCP-230D/DC 打印机一行 最多只能打印 40 个 12px 字符,也就是 HTML 里的 BODY 最宽是 40X12=480px 的宽度, MCP-610 一行最多只能打印 34 个 12px 字符,也就是 HTML 里的 BODY 最宽是 34X12=408px 的宽度,所以传给 MCP-230D/DC 打印机,最大的宽度是按 480px 处理的, 传给 MCP-610D/DC 打印机,最大的宽度是按 408px 处理的,同样 MCP-230D/DC、MCP610D/DC 只能处理同 MCP-58 相同的字体和字符.
快递单针式打印机
CFP-570K
目前支持的模版有:【双色球模版】T0020101,【福彩模版】T0020201,快递单:【顺丰模版一】T0010101,【顺丰模版二】T0010102,【圆通模版一】 T0010201
API文档 / 开发文档 / API新手接入指南
接入流程
接入流程图
注册账号
配置应用
开发&测试
发布上线
1. 注册账号
要使用开放平台首先要成为开放平台开发者。
打开开放平台首页,注册成为开发者
点击右上角“注册”,提交开发者信息,完成开发者入驻
2. 配置应用
用户注册账号成功后系统会自动分配一个appid、appkey
其中打印结果回调地址、打印设备回调地址需用户在操作栏中的'编辑'处手动添加;
注:应用的回调地址为打印机执行完任务后的回调,为可选项;若配置应用中需开发此回调接口,详情请参考 《API回调更新接口》。
若配置了回调地址则签名密钥必填,确保回调接口的请求安全,详细方法请参考 《API调用安全规范》。
3. 开发&测试
开发者需对应用集成映美云平台提供的API接口
1. 通过调用获取访问凭证接口获得身份认证。
2. 通过调用打印接口即可实现.
注:集成接口详情请参考 API文档列表-集成接口
4. 发布上线
发布上线后,开发的应用系统计调用打印接口即可实现小票、快递面单、标签等票据的打印。
注:小票支持格式为html格式,只能支持映美规范的html标签。
快递面单目前仅支持:顺丰快递、圆通速递,后面会陆续支持主流及常见的快递商及快递面单模版。
注:集成接口详情请参考 API文档列表-集成接口
应用打印过程
状态码表
状态码 | 说明值 | 模块 | 备注 |
---|---|---|---|
0 | 成功 | 所有模块 | 所有接口成功都返回0 |
10000 | 调用接口失败 | 所有模块 | |
10101 | app_id不存在 | 所有模块 | 请检查app_id是否填写正确 |
10102 | 无效的访问令牌 | 所有模块 | 请检查令牌是否正确 |
10103 | 访问令牌已过期 | 所有模块 | 请重新获取令牌 |
10104 | app_id已停止运营 | 所有模块 | |
10105 | 签名失败 | 所有模块 | |
10106 | app_key不正确 | 获取token接口 | |
10107 | 参数验证不合格 | 所有模块 | |
10201 | 打印机不存在 | 所有模块 | |
10202 | 打印机已绑定在另一app_id,请联系客服! | 绑定打印机 | |
10203 | 打印机不属于此app_id,您无权解绑! | 解绑打印机 | |
10204 | 打印机未绑定,无需解绑! | 解绑打印机 | |
10205 | 打印设备与该app_id已绑定过! | 解绑打印机 | |
10206 | 打印机编码或校验码不能为空 | 解绑打印机 | |
10207 | app_id未绑定此打印设备 | 打印模块 | |
10208 | 打印机已被禁用 | 打印模块 | |
10301 | 打印机未联网,不能创建任务! | 打印模块 | |
20101 | 非逻辑性的错误提示,比如参数格式错误,参数有效性提示等 | 所有模块 | |
30101 | 系统处理数据不符合要求的提示信息 | ||
90100 | 其他异常 | 所有模块 |
注意事项 / 打印机默认纸张宽度和DPI值
打印机默认纸张宽度和DPI值
打印机型号 | 默认纸张宽度 | 打印机DPI |
---|---|---|
MCP-58 | 58mm | 204 |
MCP-350 | 80mm | 204 |
MCP-360 | 80mm | 204 |
FP-570 | 80mm | 180 |
MCP-610 | 80mm | 180 |
MCP-230 | 78mm | 204 |
MCP-330 | 80mm | 204 |
CLP-180 | 110mm | 204 |
CFP-535 | 203.2mm | 180 |
CLQ-200FW | 110mm | 180 |
API文档 / 开发文档 / API调用协议说明
应用接入映美云打印平台,调用API必须遵循以下规则
主域名 | 映美云主力常用服务地址 mcp.jolimark.com |
备用域名 | 映美云容灾备用服务地址 cloud.jolimark.com |
传输方式 | 采用HTTP、HTTPS传输 |
提交方式 | 采用POST或GET方法提交,根据具体接口来定 |
数据格式 | 提交数据为multipart/form-data,form表单数据格式,详见具体接口示例、返回数据为JSON格式 |
字符编码 | 统一采用UTF-8字符编码 |
签名算法 | 目前只支持MD5 |
签名要求 | 请求和接收数据均需要校验签名,详细方法请参考 安全规范 章节 |
判断逻辑 | 先判断协议字段返回,再判断业务返回,最后判断交易状态 |
API文档 / 开发指南
开发指南
映美云打印开放平台为用户提供丰富品类的云打印机,涵盖热敏、针式、喷墨、标签种类,满足不同打印介质的打印需要; 同时提供丰富的排版方式及打印连接方式,方便开发者高效的集成云打印能力。
打印连接方式介绍:
1. 云打印接入说明
云打印接入流程
1.注册开发者账号,获取appid 及 secrectkey (配图,显示appid 及 secretkey)
2.登记打印机状态及打印订单状态回调接口,用于接收状态同步;详见《打印机状态及打印订单状态回调》
3.云打印接口调用流程,详见对应接口说明:
云打印接口调用流程图:
2. 局域网打印
云打印机支持标准19100端口的局域网透传打印, 打印机为TCP Server, 应用通过19100端口建立与打印机的连接,然后发送ESC打印数据。
同时打印机支持设备发现协议,第三方应用可自动搜索局域网内的打印机,并建立打印连接,无需用户手动添加IP,详见“映美云打印机局域网打印协议”。
3. 蓝牙打印
映美带有蓝牙的云打印机(如:CFP-535B、CFP-820BW、CLP-180W)可以通过蓝牙传输ESC指令、映美标准html、图片 进行打印,另外CLP-180B标签打印机同时支持ESC和TSC指令,详见“映美云打印机蓝牙通信协议”
4. 局域网与蓝牙打印SDK
为了简化开发者用映美打印机进行局域网或蓝牙打印的开发量,映美对以上“映美云打印机局域网打印协议”与“映美云打印机蓝牙通信协议”进行了封装,并对外开放相应SDK,详见“ android版局域网与蓝牙打印SDK“,“IOS版局域网与蓝牙打印SDK”。
打印排版方式介绍:
1. ESC打印
映美云打印机支持标准ESC指令方式排版打印, 各机型ESC指令详见产品手册,云打印调用可查看“打印ESC指令接口”。
2. 映美HTML排版
映美模拟html排版方式,对于界面不复杂的打印小票,自定义了映美HTML排版, 云打印机内嵌HTML解析器(支持标准HTML子集,不支持js 与css), 排版简单,打印速度快。
3.标准HTML排版
即网页排版(支持js 与css), 适用于复杂的排版,实现与浏览器显示一致的打印效果。
4. 云模版
云模版技术为开发者提供可视化拖拽式排版工具,通过拖拽放入控件(或元件)实现高精度打印排版, 针对标签、针式平推的表单打印提供便捷的排版方案。详见“云模版”。
API文档 / 开发文档 / API参数规定说明
参数规定
时 间 | 标准北京时间,时区为东八区;如果商户的系统时间为非标准北京时间。参数值必须根据商户系统所在时区先换算成标准北京时间, 例如商户所在地为0时区的伦敦,当地时间为2014年11月11日0时0分0秒,换算成北京时间为2014年11月11日8时0分0秒。 |
时 间 戳 |
统一采用UTF-标准北京时间,时区为东八区,自1970年1月1日 0点0分0秒以来的秒数。注意:部分系统取到的值为毫秒级,需要转换成秒(10位数字)
比如时间为:2018-08-30 13:31:10,对应的时间戳是:1535607070 |
设备编码 | 统一用device_id参数表示(单个设备) |
带校验码的设备编码串 | 统一用device_codes参数表示(单个设备:设备编码串+校验码)。 |
API文档 / 开发文档 / API调用安全规范
安全规范
针对打印任务结果回调和打印机状态回调的签名算法
第一步
设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。
特别注意以下重要规则:
1. 参数名ASCII码从小到大排序(字典序)。
2. 如果参数的值为空不参与签名。
3. 参数名区分大小写。
4. 验证调用返回或映美云开放平台主动通知签名时,传送的sign参数不参与签名,将生成的签名与该sign值作校验。
第二步
在stringA最后拼接上key得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。key设置路径:映美云开放平台(open.jolimark.com)-->开发者中心->应用管理-->签名Key
举例,假设传送的参数如下:
bill_no: 20160726051
printer_code: 8C18D9FF2999
result_code: 10001
sign_type: MD5
time_stamp: 1469555061
nonce_str: b21c940fc39040a88a61c412b4bbab6b
1. 对参数按照key=value的格式,并按照参数名ASCII字典序排序如下:
stringA="bill_no=20160726051&nonce_str=b21c940fc39040a88a61c412b4bbab6b&printer_code=8C18D9FF2999
&result_code=10001&sign_type=MD5 &time_stamp=1469555061";
2. 拼接API密钥:
stringSignTemp="stringA&key=wyd@2016"
sign=MD5(stringSignTemp).toUpperCase()="1B03FB474982F1DC00904BB3F657CC5F"
3. 最终得到最终发送的数据:
params="bill_no=20160726051&nonce_str=b21c940fc39040a88a61c412b4bbab6b&printer_code=8C18D9FF2999
&result_code=10001&sign_type=MD5 &time_stamp=1469555061&sign=9A0A8659F005D6984697E2CA0A9CF3B7";
针对发送打印任务内容的签名算法
对打印任务内容签名,是为了保证客户方发送的数据,与云打印平台接收到的数据保持一致性的一种校验,并非为了加密传输,故客户可以选择进行签名或者不签名。
打印任务内容签名,只要对指定参数值签名即可。
举例,假设传送的参数如下:
app_id: 20160726051
access_token: 32c0b88034c64d8aa5f349811103446d
device_ids: 10001
copies: 1
cus_orderid: 1469555061
bill_content: http://open.yingmei.me/content/billtemplate/hanhongtest.html
sign_type: MD5
要签名的参数为:
bill_content="http://open.yingmei.me/content/billtemplate/hanhongtest.html"
使用MD5签名为:
sign=MD5(bill_content).toUpperCase()="65DFABFB474982F1DC00904BB3F6EFBCA"
最终得到的发送数据为:
params="app_id=201809011201&access_token=32c0b88034c64d8aa5f349811103446d&device_ids=16420003TT
&copies=1&cus_orderid=3454541665&bill_content=http://open.yingmei.me/content/billtemplate/hanhongtest.html
&sign_type=MD5&sign=65DFABFB474982F1DC00904BB3F6EFBCA"
API文档 / 开发文档 / 云打印数据安全方案
安全方案
数据隐私、服务安全需求
云服务的数据安全隐私问题是用户的基本需求,映美云打印充分理解用户需求,推出多个层级隐私安全解决方案, 以满足不同用户的安全隐私需求
一、映美云打印平台定期清理打印数据(每周)
二、安全云打印解决方案
1. 标准云打印API的数据安全解决方案
• 基于url打印任务的数据安全方案
2. 私有云部署云打印服务解决方案
• 标准云打印私有云部署解决方案
• 金融、政务、公共服务等行业高级私有云解决方案
基于url任务的数据安全方案(标准云打印服务)
注:1.第三方应用调用云打印API仅发生打印任务的下载链接地址及任务ID,不需要传打印数据本身到映美云服务器。
2.打印机收到打印任务后,直接从第三方应用业务服务器下载打印数据并打印;应用服务器可对url设置有效期,进一步加强数据安全。
云打印私有云部署解决方案
注: 1.提供独立的服务器(或云服务器),映美提供私有云部署(非源码)解决方案。
2.由第三方用户负责运维管理,映美不掌握服务器账号,无需访问权限。
金融、政务、公共服务等行业高级私有云解决方案
注: 1. 针对银行、政务、公共服务行业(电力、燃气、供暖、自来水)等高安全性、数据隐私等要求。
2.提供私有云部署解决方案,同时云打印服务部署在内网DMZ区域,即保证数据隐私又确保内网间服务隔离。
API文档 / API接口文档列表 / API回调更新接口 / 打印任务结果回调更新接口
打印任务结果回调更新
接入说明
接口说明
映美云开放平台采用异步架构,为了让您的软件能及时知道打印结果,开发者需要按映美参数要求,对接此打印任务回调接口。
回调接口地址必须使用外网IP 或域名,在“开发者中心-->应用管理”填入,同时需配置此回调地址及签名密钥。
回调流程:打印机任务结果变化-->上报映美云开放平台-->映美云开放平台回调通知您的软件-->您的软件进行相应业务处理。
所有的回调结果都是最终的打印结果,不管是打印失败,还是打印成功,映美云端都不会再对此任务进行重打处理。接入的应用软件商可以根据自已的业务情况,决定是否重新向映美云发送打印。
接口地址
https://xxxx/xxx/xxx/xxx
请求方式
支持POST方式
请求格式
application/x-www-form-urlencoded
请求参数
字段名 | 参数名 | 必须 | 数据类型 | 示例值 | 说明 |
---|---|---|---|---|---|
客户系统订单流水号 | bill_no | 是 | string(64) | 182da28a1aaf4e6ca9242e5aa81f841ea | 客户系统订单流水号 |
打印机编码 | printer_code | 是 | string(32) | 10480002WP | 打印机编码 |
打印结果状态码 | result_code | 是 | string(32) | 10001 |
结果状态码:
10000-打印失败,打印机下载数据失败 10001-打印成功 10002-打印失败,打印过程开盖 10003-打印失败,打印过程缺纸 10004-打印失败,通讯超时 10005-打印失败,打印机掉线 10006-打印失败,打印机未绑定 10007-打印失败,未找到打印机 10008-打印失败,超时未打印 10009-打印失败,解绑任务取消 10013-打印失败,打印机故障 10014-打印失败,用户取消任务 10016-打印失败,打印中切刀故障 10017-打印失败,打印内容错误 10018-打印失败,打印内容下载超时 10019-打印失败,打印内容解析错误 99999-其他错误 |
签名类型 | sign_type | 是 | string(32) | MD5 | 签名类型,默认为MD5 |
时间戳 | time_stamp | 是 | string(32) | 1412000000 | 时间戳,请见 接口规则-参数规定 |
随机字符串 | nonce_str | 是 | string(32) | ibuaiVcKdpRxkhJA | 随机字符串,长度要求在32位以内。推荐随机数生成算法 |
签名 | sign | 是 | string(32) | BFD727A4B68451NE84ED0J45LN9 | 通过签名算法计算得出的签名值,详见安全规范章节
签名算法 |
请求示例
"bill_no": "20160726051"
"printer_code": "8C18D9FF2999"
"result_code": "10001|10002|10003|10004"
"sign_type": "MD5"
"time_stamp": "1412000000"
"nonce_str": "ibuaiVcKdpRxkhJA"
"sign": "C380BEC2BFD727A4B6845133519F3AD6"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 数据类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | status | int | 0/1 | 返回成功则为1,失败则为0 |
返回结果 | data | string | ok | 成功或失败的信息 |
响应结果示例
调用成功
{
"status": 1,
"data": "ok"
}
调用失败,返回错误信息。
{
"status": 0,
"data": "error info"
}
API文档 / API接口文档列表 / API回调更新接口 / 打印设备状态回调更新接口
打印设备状态回调更新
接入说明
接口说明
映美云开放平台采用异步架构,为了让您的软件能及时知道打印机状态,开发者需要按映美参数要求,对接此打印设备状态回调接口。
回调接口地址必须使用外网IP 或域名,在“开发者中心-->应用管理”填入,同时需配置此回调地址及签名密钥。
回调流程:打印机状态变化-->上报映美云开放平台-->映美云开放平台回调通知您的软件-->您的软件进行相应业务处理。
接口地址
https://xxxx/xxx/xxx/xxx
请求格式
application/x-www-form-urlencoded
请求方式
post方式
请求参数
字段名 | 参数名 | 必须 | 数据类型 | 示例值 | 说明 |
---|---|---|---|---|---|
状态改变时间 | fault_time | 是 | string(32) | 2018-01-0112:30:00 | 状态改变时间,时间格式形如:yyyy-MM-dd HH:mm:ss格式; |
打印机编码 | printer_code | 是 | string(32) | 10480002WP | 打印机编码 |
打印机状态码 | result_code | 是 | string(32) | 1 | 状态码,1-正常, 2-缺纸,3-开盖,4-网络故障,99-其他异常 |
签名类型 | sign_type | 是 | string(32) | MD5 | 签名类型,默认为MD5 |
时间戳 | time_stamp | 是 | string(32) | 1412000000 | 时间戳,请见 接口规则-参数规定 |
随机字符串 | nonce_str | 是 | string(32) | ibuaiVcKdpRxkhJA | 随机字符串,长度要求在32位以内。推荐随机数生成算法 |
签名 | sign | 是 | string(32) | BFD727A4B68451NE84ED0J45LN9 | 通过签名算法计算得出的签名值,详见安全规范章节
签名算法 |
请求示例
"fault_time": "2018_01_01 12:30:00"
"printer_code": "8C18D9FF2999"
"result_code": "2"
""result_msg": "缺纸"
"sign_type": "MD5"
"time_stamp": "1412000000"
"nonce_str": "ibuaiVcKdpRxkhJA"
"sign": "C380BEC2BFD727A4B6845133519F3AD6"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 数据类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | status | int | 0/1 | 返回成功则为1,失败则为0 |
返回结果 | data | string | ok | 成功或失败的信息 |
响应结果示例
调用成功
{
"status": 1,
"data": "ok"
}
调用失败,返回错误信息。
{
"status": 0,
"data": "error info"
}
API文档 / API接口文档列表 / 权限API接口 / 获取访问令牌接口
获取访问令牌
接入说明
接口说明
令牌access_token是映美云开放平台的全局唯一接口调用凭据,映美云开放平台调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2592000秒(30天),需定时刷新,重复获取将导致上次获取的access_token失效。
映美云开放平台的API调用所需的access_token的使用及生成方式说明:
1、建议开发者使用中控服务器统一获取和刷新access_token,其他业务逻辑服务器所使用的access_token均来自于该中控服务器,不应该各自去刷新,否则容易造成冲突,导致access_token覆盖而影响业务;
2、目前access_token的有效期通过返回的expire_in来传达,目前是2592000秒之内的值。中控服务器需要根据这个有效时间提前去刷新新access_token;
3、中控服务器不仅需要内部定时主动刷新,调用映美打印接口时还需要被动刷新access_token,如:调用映美打印接口返回错误代码10103(访问令牌已过期)或返回错误代码10102(无效的访问令牌),就应刷新access_token,获取到新access_token后,再重新调用映美打印接口。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/GetAccessToken
请求格式
multipart/form-data
请求方式
GET方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
时间戳 | time_stamp | 是 | int(10) | 1535607070 | 精确到秒的时间戳。比如时间为:2018-08-30 13:31:10,对应的时间戳是:1535607070 |
签名 | sign | 是 | string(32) | sign=MD5(app_id=201809011201&sign_type=MD5&time_stamp=1535607070&key=tm9kcnfky8jrfrw)。Key值是开发者创建应用时,云打印开放平台为应用自动生成的 密钥,开发者请到“应用管理”应用详情中查看app_key值。签名后的数据需要转换成大写 | sign=MD5(app_id=201809011201&sign_type=MD5&time_stamp=1535607070&key=tm9kcnfky8jrfrw)。Key值是开发者创建应用时,云打印开放平台为应用自动生成的 密钥,开发者请到“应用管理”应用详情中查看app_key值。签名后的数据需要转换成大写 |
签名类型 | sign_type | 是 | string(32) | MD5 | 签名类型,默认为MD5 |
请求示例
"app_id": "201809011201"
"time_stamp": "1535607070"
"sign": "E1C6E3AD2147F2FA3CBD95D75E33217D"
"sign_type": "MD5"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | {"access_token":"678286e76ghg74ca787383c86aebb307d","expires_in": 2592000,"create_time":"2018-08-13 20:12:30"} | 获取成功后返回的json数据 |
失败信息 | return_msg | object | app_id不存在 | 失败后的错误信息 |
以下字段在return_code=0的时候有返回成功结果 格式:json格式
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
访问令牌 | access_token | string(32) | F1bc71d2788d4abd83a52c30539267c | return_data里面返回的access_token值 |
有效时间 | expires_in | int(4) | 2592000 | return_data里面返回的有效时间,单位为秒,从获取token的时间算起,在这个时间范围内有效 |
创建时间 | create_time | datetime | 2018-08-13 20:12:30 | token生成的时间 |
响应结果示例
成功信息
{
"return_code": 0,
"return_data": {
"access_token": "678286e76ghg74ca787383c86aebb888",
"expires_in": 2592000,
"create_time": "2018-08-13 20:12:30"
},
"return_msg":""
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印机管理接口 / 绑定打印机接口
绑定打印机
接入说明
接口说明
将打印机绑定到当前的应用id。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/BindPrinter
请求格式
multipart/form-data
请求方式
POST方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码和校验码 | device_codes | 是 | string(64) | 0480002WP#B2C4 | 打印机编码及校验码以“#”连接标识一台打印机进行绑定,一次绑定多个打印机以“,”分隔 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_codes": "10480002WP#B2C4"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | ok | 绑定成功返回的信息 |
失败信息 | return_msg | object | 打印机不存在/打印机已绑定到其他app_id | 绑定失败返回的错误信息 |
响应结果示例
成功信息
{
"return_code": 0,
"return_data": "ok",
"return_msg": ""
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印机管理接口 / 解绑打印机接口
解绑打印机
接入说明
接口说明
从当前应用id中解除绑定的打印机。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/UnBindPrinter
请求格式
multipart/form-data
请求方式
POST方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码 | device_id | 是 | string(32) | 10480002WP | 打印机编码 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_id": "10480002WP"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | ok | 绑定成功返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效/打印机不存在/打印机不属于此app_id | 错误信息 |
响应结果示例
成功信息
{
"return_code": 0,
"return_data": "ok",
"return_msg": ""
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印定点坐标文本接口
打印定点坐标文本
接入说明
适用场景
映美定点坐标打印是映美自创的打印技术,应用于客户需要自己设定文本打印位置的单据打印(套打),比如增值税发票、门票等票据、快递面单等打印。
适用机型
CFP-535、CFP-820
接口说明
将文本打印到客户指定的坐标位置。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintPointText
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的json数据 | bill_content | 是 | string | {'high':200, 'left': 0, 'top': 0,'content':[{'x':21,'y':29.5,'v':'映美卡莫','dsp':'客户'},{'x':106,'y':29.5,'v':'b12456767','dsp':'单号'},{'x':170,'y':29.5,'v':'2018-7-25','dsp':'日期'},{'x':7.5,'y':43,'v':'品名1','dsp':'品名颜色'},{'x':61,'y':43,'v':'55','dsp':'细码数量'},{'x':145,'y':43,'v':'个','dsp':'单位'},{'x':157,'y':43,'v':'20','dsp':'数量'},{'x':170,'y':43,'v':'25','dsp':'单价'},{'x':185,'y':43,'v':'150.00','dsp':'金额'}]} | 打印的定点坐标内容,必须是规定的json格式。参数详细说明:坐标单位为毫米。high:纸张高度,left:坐标相对于纸张左边缘的左偏移位置,top:坐标相对于纸张顶部的顶偏移位置,x:文本相对于left位置的横坐标,y:文本相对于top位置的纵坐标,v:打印的文本内容,dsp:文本说明,此属性可以不填写,为了方便客户检查数据用 |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": "[{'x':21,'y':29.5,'v':'映美卡莫','dsp':'客户'},{'x':106,'y':29.5,'v':'b12456767','dsp':'单号'},{'x':170,'y':29.5,'v':'2018-7-25','dsp':'日期'},{'x':7.5,'y':43,'v':'品名1','dsp':'品名颜色'},{'x':61,'y':43,'v':'55','dsp':'细码数量'},{'x':145,'y':43,'v':'个','dsp':'单位'},{'x':157,'y':43,'v':'20','dsp':'数量'},{'x':170,'y':43,'v':'25','dsp':'单价'},{'x':185,'y':43,'v':'150.00','dsp':'金额'}]}"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印快递面单接口
打印快递面单。
接入说明
适用场景
直接对接快递面单打印
适用机型
CFP-535、CFP-820
接口说明
打印标准的快递面单,如顺丰,圆通,EMS等
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintExpress
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号“,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
快递单模版id | template_id | 是 | string | T0010101 | 快递单的模版编号,此模版编号可在映美官网查看。可以支持顺丰,圆通,ems等。顺丰快递模版id为:T0010101;圆通快递模版id为:T0010201;EMS快递模版id为:T0010401 |
寄件-单位名称 | jj_dwmc | 否 | string | 深圳映美卡莫网络有限公司 | 寄件单位名称 |
寄件-寄件人 | jj_jjr | 否 | string | 张三 | 寄件人姓名 |
寄件-联系电话 | jj_lxdh | 否 | string | 135****5262 | 寄件人联系电话 |
寄件-地址 | jj_dz | 否 | string | 广东省深圳市南山区高新园十二路九洲电器大厦 | 寄件地址,包含省市区及街道的整个完整地址 |
收件-单位名称 | sj_dwmc | 否 | string | 深圳映美卡莫网络有限公司 | 收件单位名称 |
收件-收件人 | sj_sjr | 是 | string | 张三 | 收件人姓名 |
收件-联系电话 | sj_lxdh | 否 | string | 135****5262 | 收件人联系电话 |
收件-地址 | sj_dz | 是 | string | 广东省深圳市南山区高新园十二路九洲电器大厦 | 收件地址,包含省市区及街道的整个完整地址 |
物品-寄托物 | wp_jtw | 否 | string | 文件 | 寄托物品 |
物品-声明价值 | wp_smjz | 否 | string | 100 | 寄托物品的声明价值 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"template_id": "T0010101"
"jj_dwmc": "深圳映美卡莫网络有限公司"
"jj_jjr": "张三"
"jj_lxdh": "135XXXX5262"
"jj_dz": "广东省深圳市南山区高新园十二路九洲电器大厦"
"sj_dwmc": "深圳映美卡莫网络有限公司"
"sj_sjr": "张三"
"sj_lxdh": "135XXXX5262"
"sj_dz": "广东省深圳市南山区高新园十二路九洲电器大厦"
"wp_jtw": "文件"
"wp_smjz": 100
"time_out": 600
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印本地文档接口
打印本地文档
接入说明
适用场景
适用于调用方不方便提供文档的url地址,如C/S程序对接
适用机型
CLP-180、CLQ-200、CLQ-200F、CFP-535、CFP-820
接口说明
将pdf、图片(jpg、png )转换成base64格式的数据后,调用此接口,打印机便可按要求进行打印。其中pdf数据大小不超过过4M,图片数据大小不超过2M。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintFile
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号“,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
文档类型 | file_type | 是 | string(32) | 1 | 文档类型,1 pdf 、2图片 |
文档内容 | bill_content | 是 | string | 文档先转成二进制,再转成base64格式,由于数据太长需放在body中传参 | |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果。 |
打印机纸张高度 | paper_height | 否 | string | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置。 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
旋转打印 | reverse | 否 | int(4) | 1 | 0:不旋转,1顺时针旋转180度打印,2:旋转90度打印,3:旋转270度打印 ,不填则默认0 |
是否走纸 | walk_paper | 否 | int(4) | 1 | 打印完后打印机是否自动走纸到撕纸位0:自动走纸,1:不走纸,打印到那停到那 |
请求示例
"app_id": "201809011201"
"access_token": "01f813e88a687aad857360be39914eb"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": "JVBERi0xLjUKJeLjz9MKMiAwIG9iago8PC9MZW5ndGggNzAvRmlsdGVyL0ZsYXRlRGVjb2RlPj5zdHJlYW0KeJwr5CpUsDDUMzFSMABCUxM9IwsFI3MjBWMDS4XkXAX9iEwTBZd8hUCgMlNDPQuIKhDDxFDB2MgAqsYUogaoigsAucURQAplbmRzdHJlYW0KZW5kb2JqCjMgMCBvYmoKPDwvTGVuZ3RoIDEzMTAvRmlsdGVyL0ZsYXRlRGVjb2RlPj5zdHJlYW0KSInsV9uKG0cQfddX9A+ot6r6DotAM5ICISaBKE8hGGOvHYeEmI2Nk3x9TvVlJO1qbQIJeckukkbd1V2nqk5ddPPViz/u7s3Ns5nMtJvNimwUQ9brGxVz/2Z1883d/cu7d+8/vPjZ3L9d3XzxLZk3v60c2eCccckm7w1bdslIDDbj0N3qte7nhCXvLLMJkW2W1OWqAKdkIydTYv1oO+yjzS40CfHepmKYg+U8dLBk67nriGIzS1XiSuwSodggXUnwsMJVgeLzEMg4NWCmbJNx2Tp2p+3k/EmDy6xmZnwsAjFJt6IkK8E4J1Zgugj8ES7MHALxCQFFkCl9wojhapLq6wBMyTW0+cLZzN4W9te8DYlIUZ1NCPA1AbZOeMTzikB3pQqcewJo+n4RrMVzRuQLRkjGWlGUABHiWTxZYgfhpYs8FXJP6TMSQQP59PmMg"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
"reverse":1
"walk_paper":1
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印远程文档接口
打印远程文档
接入说明
适用场景
适用于调用方能提供要打印文档的url地址
适用机型
CLP-180、CLQ-200、CLQ-200F、CFP-535、CFP-820
接口说明
调用时传pdf、图片(jpg、png ) 对应的 url地址,打印机便可进行打印。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintFileByUrl
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号“,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
文档类型 | file_type | 是 | string(32) | 1 | 文档类型,1 pdf 、2图片 |
文档url地址 | bill_content | 是 | string | http://mcp.jolimark.com/billtemplate/img/1.PNG | 调用方文档url地址 |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果。 |
打印机纸张高度 | paper_height | 否 | string | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置。 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
旋转打印 | reverse | 否 | int(4) | 1 | 0:不旋转,1顺时针旋转180度打印,2:旋转90度打印,3:旋转270度打印 ,不填则默认0 |
是否走纸 | walk_paper | 否 | int(4) | 1 | 打印完后打印机是否自动走纸到撕纸位0:自动走纸,1:不走纸,打印到那停到那 |
请求示例
"app_id": "201809011201"
"access_token": "01f813e88a687aad857360be39914eb"
"device_ids": "10480002WP"
"copies": 1
"file_type": 1
"cus_orderid": "20180823120631465"
"bill_content": " http://mcp.jolimark.com/billtemplate/img/1.PNG"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
"reverse":1
"walk_paper":1
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印发票接口
增值税专用发票打印
接入说明
适用场景
适用机型
CFP-535、CFP-820
接口说明
将增值税专用发票套打到固定的位置。
接口地址
https://mcp.jolimark.com/mcp/v2/sys/PrintInvoice
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 数据类型 | 必须 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | string | 是 | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | string(32) | 是 | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编号 | device_ids | string | 是 | 10480002WP | 打印机编号,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | int | 否 | 每台打印机打印份数,默认为1 | |
客户系统订单流水号 | cus_orderid | string(32) | 是 | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的JSON数据 | bill_content | string(32) | 是 | 详见“bill_content JSON 参数” | |
打印任务超时时间 | time_out | int | 否 | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
bill_content JSON 参数
字段名 | 参数名 | 数据类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
发票号码 | fphm | string | 是 | ||
发票代码 | fpdm | string | 是 | ||
发票二维码 | fpewm | string | 是 | ||
机器编号 | jqbh | string | 否 | ||
附加信息 | fjxx | string | 否 | ||
开票日期 | kprq | string | 是 | ||
购方名称 | gfmc | string | 是 | ||
购方识别号 | gfsbh | string | 是 | 购方的纳税人识别号 | |
购方地址、电话 | gfdz | string | 是 | ||
购方开户行及账号 | gfkhh | string | 是 | 开户行名称及账号 | |
密码区 | mmq | string | 是 | 密码区字符串 | |
商品列表 | sp | object | 是 | 详见“sp 参数” | 商品列表是一个JSON数组 |
合计金额 | hjje | string | 是 | ||
合计税额 | hjse | string | 是 | ||
价税合计(小写) | jshj | string | 是 | ||
价税合计(大写) | jshjdx | string | 是 | ||
销售方名称 | xsfmc | string | 是 | ||
销售方识别号 | xsfsbh | string | 是 | 销售方的纳税人识别号 | |
销售方地址,电话 | xsfdz | string | 是 | ||
销售方开户行及账号 | xsfkhh | string | 是 | ||
备注 | bz | string | 是 | ||
收款人 | skr | string | 是 | ||
复核 | fh | string | 是 | ||
开票人 | kpr | string | 是 |
sp 参数
字段名 | 参数名 | 数据类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
商品名称 | spmc | string | 是 | ||
规格型号 | gghx | string | 否 | ||
单位 | spdw | string | 否 | 商品单位 | |
数量 | spsl | string | 否 | 商品数量 | |
单价 | spdj | string | 否 | 商品单价 | |
金额 | spje | string | 是 | 商品金额 | |
税率 | spslv | string | 是 | 商品税率 | |
税额 | spse | string | 是 | 商品税额 |
响应格式
JSON
返回参数:
数据格式:JSON
字段名 | 参数名 | 数据类型 | 必填 | 示例值 | 说明 |
---|---|---|---|---|---|
返回状态码 | return_code | int | 是 | 0/10101 | 返回成功则为0,失败则为对应错误码值,失败的状态码详见状态码表 |
失败信息 | return_msg | string | 是 | 错误消息 | |
返回数据 | return_data | string | 否 | 成功后返回的信息 |
API文档 / API接口文档列表 / API打印方式接口 / 语音播报接口
语音播报
接入说明
适用场景
用户需要用映美打印机播报指定的语音内容
适用机型
MCP-58AI语音版、CLP-58
接口说明
通过API的方式向打印机发送相应的文字,打印机会以语音的方式将文字播报出来。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PlayVoice
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 数据类型 | 必须 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | string | 是 | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | string(32) | 是 | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编号 | device_ids | string | 是 | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号 |
客户系统订单流水号 | cus_orderid | string(32) | 是 | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
打印任务超时时间 | time_out | int(4)) | 否 | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
语音播报内容 | tex | string(30) | 否 | 您有新的订单,金额126.5元 | 支持语音播报的打印机,收到信息后将此参数内容播报出来 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"cus_orderid": "20180823120631465"
"time_out": "600"
"tex": "您有新的订单,金额126.5元"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印黑白标签接口
打印黑白标签接口
接入说明
适用场景
应用于客户自定义、批量打印热敏标签,比如商超价标签、店铺商品标签等
适用机型
CLP-180
接口说明
打印内容分固定区域与可变区域,支持文本、图片、二维码、条形码打印。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintLabel
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 数据类型 | 必须 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | string | 是 | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | string(32) | 是 | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | string | 是 | 10480002WP,10480012WP | 打印机编码串,多台打印机间用“,”隔开,如果是多台打印机则必须为同一型号 |
打印份数 | copies | int | 否 | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | string(32) | 是 | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用。 |
要打印的json数据 | bill_content | string(32) | 是 |
{ "high":240, "width":320, "left":0, "paperinterval":0, "reverse":0, "top":0, "content":[ {"font-size":"12px", "v":"云打印", "x":6, "y":10}, {"font-size":"12px","v":"映美", "x":7, "y":40}], "img":[{ "type":1, "w":100, "h":100, "v":"http://mcp.jolimark.com/billtemplate/img/qrcode.png"}], "qrcode":[{ "x":0, "y":20, "v":"http://open.jolimark.com"}], "barcode":[], "varData": [{ "barcode":[{ "code":"CODE128", "h":35, "hri":2, "v":"1234567890", "w":2, "x":23, "y":138}], "content":[], "num":1 }] } |
此处所涉及的纸宽、高、坐标等按像素计算,
像素值=毫米数 * 8 参数详细说明: 一、主要参数 high: 类型:int 描述: 打印纸长度, 单位px 备注:必选字段 width: 类型:int 描述: 打印纸宽度, 单位px 备注:必选字段 left: 类型:int 描述: 打印区域左偏移, 单位px 备注:必选字段 top: 类型:int 描述: 打印区域顶部偏移, 单位px 备注:必选字段 reverse: 类型:int 描述: 打印反转, 默认不反转 0:不反转 2:翻转180度 备注:可选字段 paperinterval: 类型:int 描述:单位px 备注:可选字段 打印包含四大类:content(文本内容), qrcode(二维码), barcode(条形码)和img(图片),所有内容字段必须包含以下几个参数: x:相对于left位置的横坐标, y:文本相对于top位置的纵坐标, v:打印的内容 二、其他参数介绍: 1.content字段: font-weight: 类型:string 值: bold 字体加粗 normal字体正常 描述:字体加粗,为可选字段, 默认normal font-size: 类型:string 值: 12px, 24px, 48px 描述:字体大小,可选字段, 默认大小为12px font-underline: 类型:string 值: on 开启下划线 off 关闭下划线 备注:添加下划线,可选字段,默认off 2.barcode字段: w: 类型:int 值:2<= w <= 6, 默认为3 备注:条码宽度为窄条和宽条的宽度,为可选字段 h:类型:int 描述:条码高度,为可选字段,默认为182px。 code: 类型:string 描述:条码类型,UPC-A , CODE128 hri: 类型: int 值:0: 不打印, 1: 上部打印 2:下部打印 3:上下打印 描述:打印条码字符,可选字段,默认不打印 3.qrcode字段: 无特殊字段。 4.img字段: type:类型:int 值: 1代表v字段为图片的URL, 0代表v字段为图片的base64编码 描述:必选字段 w:类型:int 描述: 默认为100px,w和h字段如果仅设置一个,则w与h相等且为该设置的值。该字段为可选字段。 h:类型:int 描述: 同w字段。 varData是可变打印内部,是非必填的参数,当想一次提交批量打印多个条码时可用此参数,将多个标签中不同的部分通过此参数以json数组组合在一起。 num:打印的个数 |
打印机纸张类型 | paper_type | int(4) | 否 | 1 | 打印机的纸张类型,2:标签纸,4:黑标纸,5:标签带孔纸 默认为2 |
打印任务超时时间 | time_out | int(4) | 否 | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
响应格式
JSON
返回值
格式:json格式
字段名 | 变量名 | 数据类型 | 示例值 | 描述 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 | 返回成功则为0,失败则为对应错误码值,失败的状态码详见状态码表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | string | app_id无效/token令牌无效 | 错误信息 |
请求示例
{“app_id”:”201809011201”
“access_token”:”01f813e88a687aad857360be39914eb”
“device_ids”:”10480002WP”
“copies”:1
“cus_orderid”:”20180823120631465”
“bill_content”:{ "high":240,
"width":320,
"left":0,
"paperinterval":0,
"reverse":0,
"top":0,
"content":[
{"font-size":"12px",
"v":"云打印",
"x":6,
"y":10},
{"font-size":"12px","v":"映美",
"x":7,
"y":40}],
"img":[{
"type":1,
"w":100,
"h":100,
"v":"http://mcp.jolimark.com/billtemplate/img/qrcode.png"}],
"qrcode":[{
"x":0,
"y":20,
"v":"http://open.jolimark.com"}],
"barcode":[],
"varData":[{
"barcode":[{
"code":"CODE128",
"h":35,
"hri":2,
"v":"1234567890",
"w":2,
"x":23,
"y":138}],
"content":[],
"num":1
}]
}
“paper_width”:200
“paper_height”:100
“paper_type”:1
“time_out”:600
}
返回示例
返回成功 |
{ “return_code”:0, “return_data”:”ok,请等待打印机打印”, “return_msg”:”” } |
返回失败 | { “return_code”:10101, “return_data”:””, “return_msg”:”app_id不存在” } |
二、其他参数介绍:
1.content字段:
字段 | 类型 | 值 | 描述 |
---|---|---|---|
font-weight | string | bold 字体加粗 normal字体正常 | 字体加粗,为可选字段, 默认normal |
font-size | string | 12px, 24px, 48px | 字体大小,可选字段, 默认大小为12px |
font-underline | string | on 开启下划线 off 关闭下划线 | 添加下划线,可选字段,默认off |
2.barcode字段:
w:
类型:int
值:2<= w <= 6, 默认为3
备注:条码宽度为窄条和宽条的宽度,为可选字段
W | 多级条码模块(mm) | 双级条码模块 | |
---|---|---|---|
窄条宽度(mm) | 宽条宽度(mm) | ||
2 | 0.25 | 0.25 | 0.625 |
3 | 0.375 | 0.375 | 1.0 |
4 | 0.5 | 0.5 | 1.25 |
5 | 0.625 | 0.625 | 1.625 |
6 | 0.75 | 0.75 | 1.875 |
字段 | 类型 | 值 | 描述 |
---|---|---|---|
h | int | 条码高度,为可选字段,默认为182px。 | |
code | string | 条码类型,UPC-A , CODE128 | |
hri | int | 0: 不打印, 1: 上部打印 2:下部打印 3:上下打印 | 打印条码字符,可选字段,默认不打印 |
3.qrcode字段:无特殊字段。
4.img字段:
字段 | 类型 | 值 | 描述 |
---|---|---|---|
type | int | 1代表v字段为图片的URL, 0代表v字段为图片的base64编码 | 必选字段 |
W | int | 默认为100px,w和h字段如果仅设置一个,则w与h相等且为该设置的值。该字段为可选字段。 | |
h | int | 默认为100px,w和h字段如果仅设置一个,则w与h相等且为该设置的值。该字段为可选字段。 |
(三)、json 格式区域介绍
一个json文本分为打印参数区域,模版区域和可变打印区域。其中 打印参数区域和模版区域必须存在,一个json内容可以不包含可变打印区域(varData)。
实例中的”content”, ”img”, “qrcode”, “barcode”,如果内容为空,也可以不写在json中。
API文档 / API接口文档列表 / API打印方式接口 / 打印彩色标签接口
打印彩色标签接口
接入说明
适用场景
应用于客户软件对接打印彩色标签,适用于:标签内容多变,需要及时修改,即印即用的行业客户如:零售商超,个性化电商,中小型制造企业、柔性生产,企业办公、资产管理、服饰行业、医疗医药行业、制造业和化学工业等。
适用机型
ELP-480
接口说明
调用接口前,将需要打印的标签内容排版成图片,图片像素最大值由所用标签纸大小决定,且图片宽:高=标签纸宽:高。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintColorLabel
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 数据类型 | 必须 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | string | 是 | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | string(32) | 是 | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | string | 是 | 10480002WP,10480012WP | 打印机编码串,多台打印机间用“,”隔开,如果是多台打印机则必须为同一型号 |
打印份数 | copies | int | 否 | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | string(32) | 是 | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用。 |
要打印的任务的url地址 | bill_content | string(32) | 是 | http://mcp.jolimark.com/billtemplate/img/caise_.png,2 | 将打印内容排版保存为png格式的图片。多张不同标签批量打印时,为了避免bill_content数据太长,其中数字2表示有两张图片标签要打印,分别是http://mcp.jolimark.com/billtemplate/img/caise_1.png和http://mcp.jolimark.com/billtemplate/img/caise_2.png其他3、4、5....依此类推传参。 |
打印机纸张宽度 | paper_width | int(4) | 是 | 100 | 打印机纸张宽度,单位为毫米,最大100 |
打印机纸张高度 | paper_height | int(4) | 是 | 打印机纸张高度,单位为毫米 | |
打印机纸张类型 | paper_type | int(4) | 是 | 2 | 打印机的纸张类型,1:连续标签纸2:普通标签纸,4:黑标纸 |
打印任务超时时间 | time_out | int(4) | 否 | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
响应格式
JSON
返回值
格式:json格式
字段名 | 变量名 | 数据类型 | 示例值 | 描述 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 | 返回成功则为0,失败则为对应错误码值,失败的状态码详见状态码表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | string | app_id无效/token令牌无效 | 错误信息 |
示请求例
{“app_id”:”201809011201”
“access_token”:”01f813e88a687aad857360be39914eb”
“device_ids”:”10480002WP”
“copies”:1
“cus_orderid”:”20180823120631465”
“bill_content”:“http://mcp.jolimark.com/billtemplate/img/caise_.png,2”
“paper_width”:100
“paper_height”:100
“paper_type”:2
“time_out”:600
}
返回示例
返回成功 |
{ “return_code”:0, “return_data”:”ok,请等待打印机打印”, “return_msg”:”” } |
返回失败 | { “return_code”:10101, “return_data”:””, “return_msg”:”app_id不存在” } |
API文档 / API接口文档列表 / API打印方式接口 / 打印TSPL指令接口
打印TSPL指令接口
接入说明
适用场景
适用于TSC热敏标签打印,如:快递电子面单。TSPL指令简单易懂,很容易上手, 详见《常见TSPL指令使用》。
适用机型
CLP-180
接口说明
将TSPL标准指令代码以十进制传输到接口进行打印,支持打印内容包括:文字、条形码、二维码、线条等。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintTspl
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 数据类型 | 必须 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | string(32) | 是 | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | string(32) | 是 | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | string | 是 | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | int | 否 | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | string(32) | 是 | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的Tspl指令内容 | bill_content | string | 是 | 在每一条指令结尾需要加入换行符,即字符串“\r\n”或 16 进制 0x0D 0x0A | |
打印机纸张类型 | paper_type | int(4) | 是 | 1 | 打印机的纸张类型,2:标签纸,4:黑标纸,默认为2 |
打印任务超时时间 | time_out | int(4) | 否 | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
响应格式
JSON
返回值
格式:json格式
字段名 | 变量名 | 数据类型 | 示例值 | 描述 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 | 返回成功则为0,失败则为对应错误码值,失败的状态码详见状态码表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | string | app_id无效/token令牌无效 | 错误信息 |
示请求例
{“app_id”:”201809011201”
“access_token”:”01f813e88a687aad857360be39914eb”
“device_ids”:”10480002WP”
“copies”:1
“cus_orderid”:”20180823120631465”
“bill_content”:“SIZE 60 mm,40 mm\r\n
GAP 2 mm\r\n
CLS\r\n
TEXT 50,20,\"TSS24.BF2\",0,1,1,\"欢迎使用映美云打印\" \r\n
BARCODE 50,75,\"128\",79,0,0,3,6,\"75358888999999\" \r\n
TEXT 100,160,\"TSS24.BF2\",0,1,1,\"75358888999999\" \r\n
BAR 8,200,320,1 \r\n
QRCODE 60,210,M,4,A,0,\"http://open.jolimark.com\" \r\n
PRINT 1,1 \r\n”
“paper_type”:1
“time_out”:600
}
返回示例
返回成功 |
{ “return_code”:0, “return_data”:”ok,请等待打印机打印”, “return_msg”:”” } |
返回失败 | { “return_code”:10101, “return_data”:””, “return_msg”:”app_id不存在” } |
API文档 / API接口文档列表 / API打印方式接口 / 打印云模版接口
打印云模版
接入说明
适用场景
用户创建打印模版
适用机型
CLP-180、CLQ-200、CLQ-200F、CFP-535、CFP-820
接口说明
打印测试
用户在“映美云模版”平台上先排版设计打印页面,再调用此接口进行打印。规范详参考 《云模版打印对接流程》
映美云模版地址: https://form.jolimark.com
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintHtmlTemplate
请求格式
multipart/form-data
请求方式
POST方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
模版id | template_id | 是 | string(32) | 181114102641517033C | 映美模版官网设计的模版编号。 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的模版内容 | bill_content | 是 | string | {“p1”:”姓名”,”p2”:”籍贯”} | 填充模版的json数据,根据模版设计生成的字段,填写对应的数据。 |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
旋转打印 | reverse | 否 | int(4) | 1 | 0:不旋转,1顺时针旋转180度打印,2:旋转90度打印,3:旋转270度打印 ,不填则默认0 |
是否走纸 | walk_paper | 否 | int(4) | 1 | 打印完后打印机是否自动走纸到撕纸位0:自动走纸,1:不走纸,打印到那停到那 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": {"p1":"姓名","p2":"籍贯"}
"paper_type": 1
"time_out": 600
"reverse":1
"walk_paper":1
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 查询云模版接口
查询云模版
接入说明
适用场景
用户查询打印模版
接口说明
查询开发者账号下所创建的映美云模版信息,包括模版ID,模版名称,以供开发集成使用。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/GetTemplates
请求格式
multipart/form-data
请求方式
GET方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
手机号 | phone | 是 | string | 18682136687 | 登录映美云开放平台的手机号 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"phone": "18682136687"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | | 查询成功返回信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(return_code=0)
{
"return_code": 0,
"return_data": [
{
"template_name": "321(复制)",
"template_id": "7ebc75accc013f60"
},
{
"template_name": "321",
"template_id": "55e9131f380e4fc5"
},
{
"template_name": "123",
"template_id": "98cafae48718384f"
}
],
"return_msg": ""
}
API文档 / API接口文档列表 / API打印方式接口 / 打印ESC指令接口
打印ESC指令
接入说明
适用场景
适用于开发者懂Esc指令排版布局, 详见《打印机编程手册esc指令》 适用于所有机型,但需要注意不同机型对应的esc指定稍有不同。
接口说明
将ESC标准指令代码以文本格式传输到接口进行打印
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintEsc
请求格式
multipart/form-data
请求方式
POST方式
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的esc指令内容 | bill_content | 是 | string | 如果是十进制Esc指令内容,需要要转换成base64,如果是十六进制Esc指令内容不需要转成base64 | |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果 |
打印机纸张高度 | paper_height | 否 | int(4) | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置。 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
类型 | bill_type | 否 | int(4) | 当bill_content参数中esc指令是十进制时bill_type传2或不传,当bill_content参数中esc指令是十六进制时bill_type传17,当bill_content参数是esc的url 地址时bill_type传18 |
请求示例
"app_id": "665358db4d6311e5ac9902004c4f4f50"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": " ! 烧烤间 总单 11桌! 账单号:201811231011$ 就餐人数:2 服务员:张三$ 开台时间:2018/11/23 20:36 加菜员:张三$ 加菜时间:2018/11/24 00:03 ------------------------------------------------ !1) 铁板鲫鱼 1条 !"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
"bill_type":2
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印标准规范HTML页面-传URL接口
打印标准规范HTML页面-传URL
接入说明
适用场景
适用于html页面含有标准规范排版样式与表格的情况,以黑白双色打印
适用机型
CLP-180、CLQ-200、CLQ-200F、CFP-535、CFP-820
接口说明
html可以包含标准规范的标签,用于呈现打印页面上的表格数据以及标准规范排版,最高支持IE11内核。html页面的body宽度不大于打印机的纸张宽度值,body宽度的像素最大值等于纸张宽度*打印机dpi/25.4,打印机默认纸张宽度和DPI值。
注:在页面包含表格的情况下,表格线条需要设置为黑色。将要打印的内容宽度设置成打印机可以支持的最大宽度,打印效果会比较好。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintHtmlToPic
请求格式
multipart/form-data
请求方式
POST方式
打印效果
CFP-535W打印效果 CFP-535B打印效果 CFP-820打印效果
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的html的url地址 | bill_content | 是 | string | http://open.yingmei.me/content/billtemplate/hanhongtest.html | html页面的url地址,url需要做好UrlEncode编码 |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果 |
打印机纸张高度 | paper_height | 否 | int(4) | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置,但打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果。 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
旋转打印 | reverse | 否 | int(4) | 1 | 0:不旋转,1顺时针旋转180度打印,2:旋转90度打印,3:旋转270度打印 ,不填则默认0 |
是否走纸 | walk_paper | 否 | int(4) | 1 | 打印完后打印机是否自动走纸到撕纸位0:自动走纸,1:不走纸,打印到那停到那 |
请求示例
"app_id":"201809011201"
"access_token":"01f813e88a687aad857360be39914eb"
"device_ids":"10480002WP"
"copies":1
"cus_orderid":"20180823120631465"
"bill_content":"http://open.yingmei.me/content/billtemplate/hanhongtest.html"
"paper_width":200
"paper_height":100
"paper_type":1
"time_out":600
"reverse":1
"walk_paper":1
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}
]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印映美规范HTML页面-传URL地址接口
打印映美规范HTML页面-传URL地址
接入说明
适用场景
适用于外卖、餐饮、商超、医疗、物流等行业的小票打印。
适用机型
MCP-58、MCP-330、MCP-350、MCP-360、MCP-230、CLP-180、CLQ-200、CLQ-200F
接口说明
客户提供一个html页面的url地址,由打印机直接下载页面解析打印,此页面内的标签必须符合映美定义的html标签规范。标签规范详情请
详见《HTML模版设置说明文档》。
此接口,页面排版接近html, 程序可读性强,打印速度快,优先推荐使用。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintHtmlUrl
请求格式
multipart/form-data
请求方式
POST方式
打印效果
MCP-350打印效果 CLP-180打印效果 MCP-58打印效果
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的html的url地址 | bill_content | 是 | string | http://open.yingmei.me/content/billtemplate/hanhongtest.html | html页面的url地址 |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果 |
打印机纸张高度 | paper_height | 否 | int(4) | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置。 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
语音播报内容 | tex | 否 | string(30) | 您有新的订单,金额126.5元 | 支持语音播报的打印机,在打印完成后将此参数内容播报出来 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": "http://open.yingmei.me/content/billtemplate/hanhongtest.html"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}
]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
打印下载的HTML页面
接入说明
接口说明
打印客户提供的html页面,api下载网页到本地服务器,打印机再从本地服务器直接下载解析
接口地址
/mcp/sys/printloadhtml
请求格式
multipart/form-data
请求方式
打印测试
采用HTTP传输、支持POST方法
请求参数
参数名 | 必须 | 类型 | 说明 |
---|---|---|---|
app_id | true | String | 应用ID,开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
access_token | true | String | 调用接口凭证,注意有效期,过期需重新获取 |
merchant_code | true | String | 商家编码,由第三方集成平台传入,内容为接入的映美云平台应用下商家唯一标识即可 |
printer_codes | true | String | 打印机编码串,打印机编码标识一台打印机,多台打印间用“,”隔开 |
copies | false | Int | 每台打印机打印份数,默认为1可不传 |
bill_no | true | String | 票据单号,应用中单号唯一即可,必传项 |
bill_content | true | String | html页面url |
sign | true | String | 签名,参数按如下顺序进行MD5和utf-8进行加密:app_id=45d4b862501c477d9f254e3415b8888c&access_token=9d486eb02ba64fc9b90312ebd9e88888&merchant_code=2018&printer_codes=18110144VA&copies=1&bill_no=0d64247a89144b51af264d7188e20999&bill_content=test |
请求示例
"app_id": "665358db4d6311e5ac9902004c4f4f50"
"access_token": "678286e76ghg74ca787383c86aebb888"
"merchant_code": "ligongshop1"
"printer_codes": "8c5e2d654d6411e5,9c5e2d654d6411e5"
"copies": 1
"bill_no": "0509060001"
"bill_content": "html页面url"
"sign": "5F5FE304B89AE5E647A92010C7C532EB"
响应格式
JSON
返回示例
调用成功
{
"status": 1,
"data": "ok"
}
调用失败,返回错误信息。
{
"status": 0,
"data": "error info"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印标准规范HTML页面-传HTML代码接口
打印标准规范HTML页面-传HTML代码
接入说明
适用场景
html页面有标准规范表格和标准规范排版样式的情况,以黑白双色打印
适用机型
CLP-180、CLQ-200、CLQ-200F、CFP-535、CFP-820
接口说明
打印客户提供的html页面,支持标准规范的html标签,样式只能支持到IE11内核,可以打印表格数据以及标准规范排版页面,html页面的body宽度不大于打印机的纸张宽度值,Body宽度的像素最大值等于纸张宽度*打印机dpi/25.4,打印机的dpi值,详见 打印机默认纸张宽度和DPI值。
ps:页面包含表格的情况下,表格线条需要设置成黑色。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintRichHtmlCode
请求格式
multipart/form-data
请求方式
打印效果
CFP-535W打印效果 CFP-535B打印效果 CFP-820打印效果
打印测试
POST方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的html源代码 | bill_content | 是 | string | <html>\n <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body style="width:384px;"> <p style="text-align:center;font-size:48px;">欢迎光临</p> <h1 style="text-align:center;">映美测试页</h1> <br> <div> </div> </body> </html> | Html源代码内容,此参数需要做好UrlEncode编码。 |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果 |
打印机纸张高度 | paper_height | 否 | int(4) | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置,但打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果。 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
旋转打印 | reverse | 否 | int(4) | 1 | 0:不旋转,1顺时针旋转180度打印,2:旋转90度打印,3:旋转270度打印 ,不填则默认0 |
是否走纸 | walk_paper | 否 | int(4) | 1 | 打印完后打印机是否自动走纸到撕纸位0:自动走纸,1:不走纸,打印到那停到那 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": "http://open.yingmei.me/content/billtemplate/hanhongtest.html"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
"reverse":1
"walk_paper":1
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}
]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
打印HTML模版页面转图片
接入说明
接口说明
打印客户提供的html页面,api将网页转成图片保存在本地服务器,打印机再从本地服务器直接下载打印
接口地址
https://mcp.yingmei.me:8686/mcp/sys/printhtmltemplate
请求格式
multipart/form-data
请求方式
打印测试
采用HTTP传输、支持POST方法
请求参数
参数名 | 必须 | 类型 | 说明 |
---|---|---|---|
app_id | true | String | 应用ID,开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
access_token | true | String | 调用接口凭证,注意有效期,过期需重新获取 |
merchant_code | true | String | 商家编码,由第三方集成平台传入,内容为接入的映美云平台应用下商家唯一标识即可 |
printer_codes | true | String | 打印机编码串,打印机编码标识一台打印机,多台打印间用“,”隔开 |
template_id | true | String | 打印的模版编号,必传项 |
copies | false | Int | 每台打印机打印份数,默认为1可不传 |
bill_no | true | String | 票据单号,应用中单号唯一即可,必传项 |
bill_content | true | String | 打印的模版填充内容,必传项 |
sign | true | String | 签名,参数按如下顺序进行MD5和utf-8进行加密:app_id=45d4b862501c477d9f254e3415b8888c&access_token=9d486eb02ba64fc9b90312ebd9e88888&merchant_code=2018&printer_codes=18110144VA&copies=1&bill_no=0d64247a89144b51af264d7188e20999&bill_content=test |
请求示例
"app_id": "665358db4d6311e5ac9902004c4f4f50"
"access_token": "678286e76ghg74ca787383c86aebb888"
"merchant_code": "ligongshop1"
"printer_codes": "8c5e2d654d6411e5,9c5e2d654d6411e5"
"template_id": "2018052214523245"
"copies": 1
"bill_no": "0509060001"
"bill_content": "{'p1':'123','p2':'456'}"
"sign": "5F5FE304B89AE5E647A92010C7C532EB"
响应格式
JSON
返回示例
调用成功
{
"status": 1,
"data": "ok"
}
调用失败,返回错误信息。
{
"status": 0,
"data": "error info"
}
API文档 / API接口文档列表 / API打印机管理接口 / 检查打印机绑定结果接口
检查打印机绑定结果
接入说明
接口说明
校验打印机是否可以绑定。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/CheckPrinterEnableBind
请求格式
multipart/form-data
请求方式
POST方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码 | device_id | 是 | string(32) | 10480002WP | 打印机编码 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_id": "10480002WP"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 已绑定/未绑定 | 绑定成功返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
响应结果示例
成功信息
{
"return_code": 0,
"return_data": "已绑定/未绑定",
"return_msg": ""
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印机管理接口 / 查询打印机基础信息接口
查询打印机基础信息
接入说明
接口说明
查询打印机的基础信息,包括当前的软件、固件版本以及打印机型号。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/QueryPrinterInfo
请求格式
multipart/form-data
请求方式
GET方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码 | device_id | 是 | string(32) | 10480002WP | 打印机编码 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_id": "10480002WP"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object |
{
"device_id": "18100001SQ", "devicetype_id": 3, "devicetype_name": "mcp350" "var_version": "0.0.1", "firmware_version": "0.0.11", "last_varversion": "2.3.9", "last_FirmwareVersion": "2.6.4" } | 查询成功返回信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
以下字段在return_code=0的时候有返回成功信息。格式:json格式
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
打印机编码 | device_id | string(32) | 10480002WP | 打印机编码 |
打印机型号id | devicetype _id | int | 1 | 打印机型号id;1:mcp-58,2:mcp-350,3:mcp-360,4:fp-570,5:mcp-610,6:mcp-230,7:mcp-330,8:clp-180,9:cfp-535; |
打印机型号名称 | devicetype _name | string(32) | Mcp-58 | 打印机型号名称 |
当前软件版本 | var_version | string(16) | 0.0.1 | 打印机自身当前软件版本 |
当前固件版本 | firmware_version | string(16) | 0.0.1 | 打印机自身当前固件版本 |
最新软件版本 | last_varversion | string(16) | 1.0.1 | 此型号打印机最新的软件版本 |
最新固件版本 | last_firmwareversion | string(16) | 1.0.1 | 此型号打印机最新的固件版本 |
打印机分辨率 | DPI | int | 203 |
返回示例
成功信息
{
"return_code": 0,
"return_data": {
"device_id": "18100001SQ",
"devicetype_id": 3,
"devicetype_name": "mcp350"
"var_version": "0.0.1",
"firmware_version": "0.0.11",
"last_varversion": "2.3.9",
"last_FirmwareVersion": "2.6.4",
"DPI": "203"
},
"return_msg": ""
}
失败信息
{
"return_code":10101,
"return_data": "",
"return_msg":"app_id不存在"
}
注意事项 / 如何选择API打印方式?
如何选择打印方式?
映美规范与标准规范Html的区别
映美规范html只支持由映美提供的html标签来设计网页, 详见《HTML模版设置说明文档》。标准规范html可以支持ie11内核浏览器下的所有标签以及css样式。
打印方式 | 使用场景 | 接口说明 |
---|---|---|
打印映美规范html页面-传URL地址 | 直接利用 《HTML模版设置说明文档》设计的HTML页面 ,比如:餐饮、收银小票 | 客户提供一个html页面的url地址,由打印机直接下载页面解析打印,此页面内的标签必须符合映美定义的html标签规范。 详见《HTML模版设置说明文档》。 |
打印映美规范HTML页面-传HTML代码 | 利用 《HTML模版设置说明文档》设计的HTML页面,无法生成url | 打印应用提供映美规范标签的html源代码,由映美服务器转为html文件,打印机再从映美服务器直接下载解析打印,此打印方式跟映美规范标签的html页面一致,标签必须符合映美定义的html标签规范,标签规范详情请 详见《HTML模版设置说明文档》。 |
打印标准规范html页面-转图片 | 黑白双色打印(适用于表格、标准规范排版的相关样式) | 打印客户提供的html页面,支持标准规范的html标签,样式只能支持到IE11内核,可以打印表格数据以及标准规范排版页面,html页面的body宽度不大于打印机的纸张宽度值,Body宽度的像素最大值等于纸张宽度*打印机dpi/25.4打印机的dpi值,请详见 打印机默认纸张宽度和DPI值;Ps:页面包含表格的情况下,表格线条需要设置成黑色。 |
打印标准规范html页面-转灰度图 | 只使用热敏打印机,想将图片打印出多层灰度的效果 | 打印客户提供的html页面,支持标准规范的html标签,样式只能支持到IE11内核,可以打印灰度图片数据,html页面的body宽度不大于打印机的纸张宽度值,Body宽度的像素最大值等于纸张宽度*打印机dpi/25.4,打印机的dpi值,请详见 打印机默认纸张宽度和DPI值。 |
打印ESC指令 | 适用于开发者懂Esc指令排版布局, 详见《打印机编程手册esc指令》 | 以esc方式打印,将esc的标准指令代码以文本格式传输到接口。 |
打印定点坐标文本 | 指定打印位置(X、Y)进行打印,适用于票据打印,比如:增值税发票、门票、工作牌等 | 将文本打印到客户指定的坐标位置 |
打印快递面单 | 直接对接快递面单打印 | 打印标准的快递面单,如顺丰,圆通,EMS等 |
API文档 / API接口文档列表 / API打印机管理接口 / 查询打印机当前状态接口
查询打印机当前状态
接入说明
接口说明
查询打印机的当前状态,包括打印机是否在线,是否缺纸,是否开盖等。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/QueryPrinterStatus
请求格式
multipart/form-data
请求方式
GET方式
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码 | device_id | 是 | string(32) | 10480002WP | 打印机编码 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_id": "10480002WP"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | {" device_id ": "12340003QC","status_code": 4,"status_msg": "离线"} | 获取成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
以下字段在return_code=0的时候有返回值。 格式:json格式
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
打印机编码 | device_id | string(32) | 10480002WP | 打印机编码 |
打印机状态码 | status_code | int | 1 | 状态编码;0-打印机不存在,1-正常在线,2-缺纸,3-故障或开盖,4-离线,5-选择纸张错误,“6-不属于此应用id”,7-未绑定,8-已绑定到其他商户,99-其他异常 |
打印机状态信息 | status_msg | string | 正常在线 | 状态信息;0-打印机不存在,1-正常在线,2-缺纸,3-故障或开盖,4-离线,5-选择纸张错误,“6-不属于此应用id”,7-未绑定,8-已绑定到其他商户,99-其他异常 |
响应结果示例
成功信息
{
"return_code": 0,
"return_data":{
"device_id ": "12340003QC",
"status_code": 4,
"status_msg": "离线"
},
"return_msg":""
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印任务管理接口 / 取消待打印任务接口
取消待打印任务
接入说明
接口说明
取消指定打印机当前未开始打印的任务。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/CancelNotPrintTask
请求格式
multipart/form-data
请求方式
POST方式
请求参数
字段名 | 参数名 | 必填 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_idD |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期。 |
打印机编码 | device_id | 是 | string(32) | 10480002WP | 打印机编码 |
客户系统订单流水号 | cus_orderid | 否 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_id": "10480002WP"
"cus_orderid":"20180823120631465"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | {"count": 2, "result": [{ "cus_orderid": "001", "order_id": "0507d909c1b5c53c417ba88596ec3a03b85a", "order_date": "2018/6/1 12:05:38"},{"cus_orderid": "001", "order_id": "0507d909c1b5c53c417ba88596ec3a03b85a","order_date": "2018/6/1 12:05:38"}]} | 成功后返回的任务状态信息列表 |
以下字段在return_code=0的时候有返回值 格式:json格式
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
未打印的任务数量 | count | int | 2 | 未打印的任务数 |
结果集合 | result | object | 未打印的任务集合 | |
客户系统订单流水号 | cus_orderid | string(64) | 118010119103121096 | 客户系统的订单号 |
映美系统订单号 | order_id | string(36) | 010101d84d02dcca41a9961464d011dfa772 | 映美云打印平台的任务id |
任务创建时间 | order_date | datetime | 2018/6/1 12:05:38 | 任务创建的时间 |
返回示例
成功信息
{
"return_code": 0,
"return_data":{
"count": "2",
"result":[
{
"cus_orderid": "001",
"order_id": "041025b9134f98754d5c99f96b4fac9f5c36",
"order_date": "2018/6/1 12:05:38"
},
{
"cus_orderid": "001",
"order_id": "0507d909c1b5c53c417ba88596ec3a03b85a",
"order_date": "2018/6/1 12:05:38"
}
]
},
"return_msg": ""
}
失败信息
{
"return_code": 10101,
"return_data": "access_token不合法",
"return_msg": "null"
}
API文档 / API接口文档列表 / API打印任务管理接口 / 查询打印任务状态接口
查询打印任务状态
接入说明
接口说明
根据客户订单号来查询打印任务状态的接口。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/QueryPrintTaskStatus
请求格式
multipart/form-data
请求方式
GET方式
请求参数
字段名 | 参数名 | 必填 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期。 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户系统应该作为唯一值。 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"cus_orderid": "1048000223"
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object |
[
{ "cus_orderid": "2018011121", "order_id": "06174bd9de8d590a46079c445db0161c0f5b", "device_id": "18283511YU", "print_time": "2019/6/17 17:48:04", "result_code": "10001", "result_msg": "打印成功" } ] | 成功后返回的任务状态信息列表 |
失败信息 | return_msg | string | app_id无效/token令牌无效 | 错误信息 |
以下字段在return_code=0的时候有返回值 格式:json格式
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
客户系统订单流水号 | cus_orderid | string(64) | 118010119103121096 | 客户系统的订单号 |
映美系统订单号 | order_id | string(36) | 010101d84d02dcca41a9961464d011dfa772 | 映美云打印平台的任务id |
任务状态码 | result_code | string(32) | 10001 | 10000-打印失败,打印机下载数据失败,10001-打印成功,10002-打印失败,打印过程开盖,10003-打印失败,打印过程缺纸,10004-通讯超时,10005-打印失败,推送时打印机掉线,10006-保留值,10007-保留值,10008-超时未打印,10009-打印失败,解绑清理,10010-打印失败,推送时打印机开盖,10011-打印失败,推送时打印机缺纸,10012-打印失败,推送时打印机未注册,10013-打印失败,推送时未找到打印机可用状态 |
任务状态信息 | result_msg | string(32) | 任务状态详细信息 |
返回示例
成功信息
{
"return_code": 0,
"return_data": [
{
"cus_orderid": "T202212050018123076",
"order_id": "120551e5373b17dd423e8c09b3b93abc3e3c",
"result_msg": "打印成功"
"result_code": "10001"
"device_id": "21350534YT"
}
]
"return_msg": " "
}
失败信息
{
"return_code": 10101,
"return_data": "access_token不合法",
"return_msg": "null"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印映美规范HTML页面-传HTML代码接口
打印映美规范HTML页面-传HTML代码
接入说明
适用场景
在一些特定应用中,客户无法生成html页面url,可以传html源代码,由映美服务器代为生成打印
适用机型
MCP-58、MCP-330、MCP-350、MCP-360、MCP-230、CLP-180、CLQ-200、CLQ-200F
接口说明
打印应用提供映美规范标签的html源代码,由映美服务器转为html文件,打印机再从映美服务器直接下载解析打印,此打印方式跟映美规范标签的html页面一致,标签必须符合映美定义的html标签规范,标签规范详情请
详见《HTML模版设置说明文档》。
此接口,页面排版接近html, 程序可读性强,打印速度快,优先推荐使用。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintHtmlCode
请求格式
multipart/form-data
请求方式
POST方式
打印效果
MCP-350打印效果 CLP-180打印效果 MCP-58打印效果
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的html源代码 | bill_content | 是 | string | <html> \n <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body style="width:384px;"> <p style="text-align:center;font-size:48px;">欢迎光临</p> <h1 style="text-align:center;">映美测试页</h1> <br> <div> </div> </body> </html> | Html源代码内容,只支持映美规范的html标签,详见附录1.1此参数需要做好UrlEncode编码。 |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果 |
打印机纸张高度 | paper_height | 否 | int(4) | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置。 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
语音播报内容 | tex | 否 | string(30) | 您有新的订单,金额126.5元 | 支持语音播报的打印机,在打印完成后将此参数内容播报出来 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": "<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body style="width:384px;"> <p style="text-align:center;font-size:48px;">欢迎光临</p> <h1 style="text-align:center;">映美测试页</h1> <br> <div> </div> </body> </html>"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": "",
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
API文档 / API接口文档列表 / API打印方式接口 / 打印标准规范HTML页面-转灰度图接口
打印标准规范html页面-转灰度图
接入说明
适用场景
此接口适用于页面中含有图片需要打印的情况,以多层级灰度打印,仅适用于热敏打印机
适用机型
CLP-180、CLQ-200、CLQ-200F、CFP-535、CFP-820
接口说明
打印客户提供的html页面,支持标准规范的html标签,样式只能支持到IE11内核,可以打印灰度图片数据,html页面的body宽度不大于打印机的纸张宽度值,Body宽度的像素最大值等于纸张宽度*打印机dpi/25.4,打印机的dpi值,详见 打印机默认纸张宽度和DPI值。
接口地址
https://mcp.jolimark.com/mcp/v3/sys/PrintHtmlToGrayPic
请求格式
multipart/form-data
请求方式
POST方法
打印效果
CFP-535W打印效果 CFP-535B打印效果 CFP-820打印效果
打印测试
请求参数
字段名 | 参数名 | 必须 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期 |
打印机编码串 | device_ids | 是 | string | 10480002WP,10480012WP | 打印机编码串,多台打印机间用英文逗号”,”隔开,如果是多台打印机则必须为同一型号,最多支持50台 |
打印份数 | copies | 否 | int | 1 | 每台打印机打印份数,默认为1 |
客户系统订单流水号 | cus_orderid | 是 | string(32) | 20180823120631465 | 客户系统定义的订单流水号,在客户应用系统中应该作为唯一值,任务状态回调时需要使用 |
要打印的html的url地址 | bill_content | 是 | string | http://open.yingmei.me/content/billtemplate/hanhongtest.html | html页面的url地址,URL中的参数需要做好UrlEncode编码 |
打印机纸张宽度 | paper_width | 否 | int(4) | 203 | 打印机纸张宽度,单位为毫米,不填入时,取打印机的默认宽度值。各打印机的默认宽度见附录表1.2,打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果 |
打印机纸张高度 | paper_height | 否 | int(4) | 打印机纸张高度,单位为毫米,使用连续纸张打印才需要设置,但打印机型号为CLP-180时,需要传实际的纸张大小值,否则会影响打印效果 | |
打印机纸张类型 | paper_type | 否 | int(4) | 1 | 打印机的纸张类型,1:热敏纸,2:标签纸,3:带孔纸,默认为1 |
打印任务超时时间 | time_out | 否 | int(4) | 600 | 任务超时时间,单位为秒,最大值为86400秒(1天),不填则默认为600秒 |
旋转打印 | reverse | 否 | int(4) | 1 | 0:不旋转,1顺时针旋转180度打印,2:旋转90度打印,3:旋转270度打印 ,不填则默认0 |
是否走纸 | walk_paper | 否 | int(4) | 1 | 打印完后打印机是否自动走纸到撕纸位0:自动走纸,1:不走纸,打印到那停到那 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_ids": "10480002WP"
"copies": 1
"cus_orderid": "20180823120631465"
"bill_content": "http://open.yingmei.me/content/billtemplate/hanhongtest.html"
"paper_width": 200
"paper_height": 100
"paper_type": 1
"time_out": 600
"reverse":1
"walk_paper":1
响应格式
JSON
响应结果参数
字段名 | 参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | 成功发送任务,请等待打印机打印 | 成功后返回的信息 |
失败信息 | return_msg | object | app_id无效/token令牌无效 | 错误信息 |
返回示例
成功信息(打印机正常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
}
成功信息(打印机异常时)
{
"return_code": 0,
"return_data": "ok,请等待打印机打印",
"return_msg": ""
"printer_state": [
{
"print_code": "18340058AL",
"state_code": 4,
"status_msg": "离线"
},
{
"print_code": "18340058AL",
"state_code": 2,
"status_msg": "缺纸"
}
]
}
失败信息
{
"return_code": 10101,
"return_data": "",
"return_msg": "app_id不存在"
}
获取商户已绑定的打印机
接入说明
接口说明
获取该商户已绑定的打印机
接口地址
https://mcp.jolimark.com/mcp/sys/GetBindPrinters
请求格式
multipart/form-data
请求方式
采用HTTP传输、支持POST方法
请求参数
参数名 | 必须 | 类型 | 说明 |
---|---|---|---|
app_id | true | String | 应用ID |
access_token | true | String | 调用接口凭证,注意有效期,过期需重新获取 |
merchant_code | true | String | 商家编码,在应用中唯一标识 |
请求示例
"app_id": "665358db4fhfhf4656902004c4f4f50"
"access_token": "678286e76ghg74ca787383c86aebb888"
"merchant_code": "ligongshop1"
响应格式
JSON
返回结果
参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|
printer_code | String | 打印机编码 | |
merchant_code | String | 商家编码,在应用中唯一标识 | |
created_on | String | 创建时间 | |
status | Int | "status": 1 | 0 | 1:成功,0:失败 |
data | Array | 打印成功。调用失败则返回错误信息 |
返回示例
调用成功
{
"status": 1,
"data": [
{
"printer_code": "12340003QC",
"merchant_code": "2018",
"created_on": "2018/4/16 18:14:33"
}
]
}
调用失败,返回错误信息。
{
"status": 0,
"data": "error info"
}
检测打印机的当前状态
接入说明
接口说明
检测某一台打印机的当前状态
接口地址
https://mcp.jolimark.com/mcp/sys/CheckPrinterStatus
请求格式
multipart/form-data
请求方式
采用HTTP传输、支持POST方法
请求参数
参数名 | 必须 | 类型 | 说明 |
---|---|---|---|
app_id | true | String | 应用ID |
access_token | true | String | 调用接口凭证,注意有效期,过期需重新获取 |
merchant_code | true | String | 商家编码,在应用中唯一标识 |
printer_codes | true | String | 打印机编码 |
请求示例
"app_id": "665358db4fhfhf4656902004c4f4f50"
"access_token": "678286e76ghg74ca787383c86aebb888"
"merchant_code": "ligongshop1"
"printer_codes": "8c5e2d654d6411e"
响应格式
JSON
返回结果
参数名 | 类型 | 示例值 | 说明 |
---|---|---|---|
printer_code | String | 打印机编码 | |
equtype_name | String | 型号名称 | |
status_code | Int | 状态编码 | |
status_msg | String | 状态描述 | |
status | Int | "status": 1 | 0 | 1:成功,0:失败 |
data | Array | 打印成功。调用失败则返回错误信息 |
返回示例
调用成功
{
"status": 1,
"data": {
"printer_code": "12340003QC",
"equtype_name": "mcp350",
"status_code": "4",
"status_msg": "离线"
}
}
调用失败,返回错误信息。
{
"status": 0,
"data": "error info"
}
API文档 / API接口文档列表 / API打印任务管理接口 / 查询待打印任务接口
查询未打印的任务
接入说明
接口说明
查询指定打印机待打印任务(不包含已返回打印失败的任务)
接口地址
https://mcp.jolimark.com/mcp/v3/sys/QueryNotPrintTask
请求格式
multipart/form-data
请求方式
GET方式
请求参数
字段名 | 参数名 | 必填 | 类型 | 示例值 | 说明 |
---|---|---|---|---|---|
应用ID | app_id | 是 | string(32) | 201809011201 | 开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
访问令牌 | access_token | 是 | string(32) | 01f813e88a687aad857360be39914eb | 开发者通过appid获取的token令牌,注意令牌的有效期。 |
打印机编码 | device_id | 是 | string(32) | 10480002WP | 打印机编码 |
请求示例
"app_id": "201809011201"
"access_token": "678286e76ghg74ca787383c86aebb888"
"device_id": "10480002WP"
响应格式
JSON
返回结果
字段名 | 参数名 | 数据类型 | 示例值 | 说明 |
---|---|---|---|---|
返回状态码 | return_code | int | 0/10101 |
失败的状态码详见
API状态返回码对应表 |
成功信息 | return_data | object | {"count": 2,"result": [{ "cus_orderid": "001", "order_id": "0507d909c1b5c53c417ba88596ec3a03b85a", "order_date": "2018/6/1 12:05:38"},{"cus_orderid": "001","order_id": "0507d909c1b5c53c417ba88596ec3a03b85a", "order_date": "2018/6/1 12:05:38"}]} | 成功后返回的任务状态信息列表 |
以下字段在return_code=0的时候有返回值 格式:json格式
字段名 | 参数名 | 数据类型 | 示例值 | 说明 |
---|---|---|---|---|
未打印的任务数量 | count | int | 2 | 未打印的任务数 |
结果集合 | result | object | 未打印的任务集合 | |
客户系统订单流水号 | cus_orderid | string(64) | 118010119103121096 | 客户系统的订单号 |
映美系统订单号 | order_id | string(36) | 010101d84d02dcca41a9961464d011dfa772 | 映美云打印平台的任务id |
任务创建时间 | order_date | datetime | 2018/6/1 12:05:38 | 任务创建的时间 |
返回示例
成功信息
{
"return_code": 0,
"return_data": {
"count": 2,
"result": [
{
"cus_orderid": "001",
"order_id": "0507d909c1b5c53c417ba88596ec3a03b85a",
"order_date": "2018/6/1 12:05:38"
},
{
"cus_orderid": "001",
"order_id": "0507d909c1b5c53c417ba88596ec3a03b85a",
"order_date": "2018/6/1 12:05:38"
}
]
},
"return_msg":""
}
失败信息
{
"return_code": 10101,
"return_data": "access_token不合法",
"return_msg": "null"
}
设置打印机纸张宽度和类型
接入说明
接口说明
设置打印机纸张宽度和类型,针对CLP-180打印机机型
接口地址
https://mcp.jolimark.com/mcp/sys/SetPrinterPaperInfo
请求格式
multipart/form-data
请求方式
采用HTTP传输、支持POST方法
请求参数
参数名 | 必须 | 类型 | 说明 |
---|---|---|---|
app_id | true | string | 应用ID,开发者创建应用时,云打印开放平台会为应用自动分配此ID,开发者在“应用管理”应用详情中可查看app_id |
access_token | true | string | 调用接口凭证,注意有效期,过期需重新获取 |
printer_codes | true | string | 打印机编码串,打印机编码标识一台打印机,多台打印间用“,”隔开 |
paper_width | true | int | 纸张宽度,必传项,单位是MM |
current_paper_type | true | int | 当前纸张类型,1 = 热敏 2 = 标签 |
请求示例
"app_id": "888888db4d6311e5ac9902004c4f4f50"
"access_token": "678286e76ghg74ca787383c86aebb888"
"printer_codes": "8c5e2d654d6411e5,9c5e2d654d6411e5"
"paper_width": "200"
"current_paper_type": 1
响应格式
JSON
返回示例
调用成功
{
"status": 1,
"data": "ok"
}
调用失败,返回错误信息。
{
"status": 0,
"data": "error info"
}
API文档 / API接口文档列表 / MQTT 状态推送接入文档 / 获取 MQTT 配置
接口地址
https://mcp.jolimark.com/mcp/v2/sys/getMQTTConfig
请求格式
multipart/form-data
请求方式:
GET
请求参数
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
printerCode | string | 是 | 打印机编号 |
响应格式
JSON
返回参数:
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
serverIp | string | 是 | 服务器地址 |
port | int | 是 | 端口 |
userName | string | 是 | 用户名 |
password | string | 是 | 密码 |
返回示例:
{
"return_code": 0,
"return_data": {
"serverIp": "xxx.xxx.xxx.xxx",
"port": 1883,
"userName": null,
"password": null
},
"return_msg": ""
}
API文档 / API接口文档列表 / MQTT 状态推送接入文档 / 关闭 MQTT 推送
接口地址
https://mcp.jolimark.com/mcp/v2/sys/closeMQTTPush
请求格式
multipart/form-data
请求方式:
POST
请求参数:
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
printerCode | string | 是 | 打印机编号 |
响应格式
JSON
API文档 / API接口文档列表 / MQTT 状态推送接入文档 / 订阅打印机状态
订阅:
MQTT 主题 | 示例值 |
---|---|
printer/打印机编号 | printer/17380107YU |
返回:
返回 | 示例值 | 说明 |
---|---|---|
string | 17380107YU/1 | 斜杆(/)前为打印机编号,后为打印机状态码。 |
打印机状态码:
状态码 | 说明 |
---|---|
0 | 打印机不存在 |
1 | 正常在线 |
2 | 缺纸 |
3 | 故障或开盖 |
4 | 离线 |
5 | 选择纸张错误 |
6 | 不属于此应用 id |
7 | 未绑定 |
8 | 已绑定到其他商户 |
99 | 其他异常 |
API文档 / API接口文档列表 / MQTT 状态推送接入文档 / 订阅打印机状态
订阅:
MQTT 主题 | 示例值 |
---|---|
task/打印机编号 | task/17380107YU |
返回:
返回 | 示例值 | 说明 |
---|---|---|
string | 20191230/10001 | 斜杆(/)前为客户系统订单流水号(请求打印接口传入的 cus_orderid),后为任务状态码。可以根据客户系统订单流水号来处理打印任务状态。 |
任务状态码:
状态码 | 说明 |
---|---|
10000 | 打印失败,打印机下载数据失败 |
10001 | 打印成功 |
10002 | 打印失败,打印过程开盖 |
10003 | 打印失败,打印过程缺纸 |
10004 | 通讯超时 |
10005 | 打印失败,推送时打印机掉线 |
10006 | 保留值 |
10007 | 保留值 |
10008 | 超时未打印 |
10009 | 打印失败,解绑清理 |
10010 | 打印失败,推送时打印机开盖 |
10011 | 打印失败,推送时打印机缺纸 |
10012 | 打印失败,推送时打印机未注册 |
10013 | 打印失败,推送时未找到打印机可用状态 |
API文档 / API接口文档列表 / MQTT 状态推送接入文档 / 示例代码
C#:
/* * 以下代码使用了 MQTTnet 3.0.8 库,可以使用 nuget 管理命令导入。 * * Install-Package MQTTnet -Version 3.0.8 */ var factory = new MqttFactory(); var mqttClient = factory.CreateMqttClient(); var options = new MqttClientOptionsBuilder(); // 随机一个客户端 ID。 var clientId = Math.Abs(Guid.NewGuid().GetHashCode()).ToString(); // 设置连接 ip、端口。 // ip 通过 https://mcp.jolimark.com/mcp/v2/sys/getMQTTConfig 获取。 options.WithTcpServer("xxx.xxx.xxx.xxx", 1883); // 设置账号、密码。 options.WithCredentials("xxx", "xxx"); // 设置客户端 id。 options.WithClientId(clientId); // 连接服务器。 mqttClient.ConnectAsync(options.Build(), CancellationToken.None).Wait(); // 订阅的主题。 mqttClient.SubscribeAsync("task/17380107YU"); // 收到订阅消息。 mqttClient.UseApplicationMessageReceivedHandler(e => { // 有发布主题所订阅的主题就会触发该方法。 Console.Write("收到订阅内容 ->:"); Console.Write(e.ApplicationMessage.ConvertPayloadToString()); }); // Console.ReadKey();
JAVA:
/* * 以下代码使用了 ActiveMQ.jar 包。 * * <dependency> * <groupId>org.apache.activemq</groupId> * <artifactId>activemq-client</artifactId> * <version>5.14.4</version> * </dependency> */ ActiveMQConnectionFactory cf = new ActiveMQConnectionFactory("tcp://xxx.xxx.xxx.xxx:1883"); // 设置账号、密码。 cf.setUserName("xxx"); cf.setPassword("xxx"); // 创建连接对象。 Connection connection = cf.createConnection(); // 启用连接。 connection.start(); // 创建会话对象。 Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); // 订阅主题。 // Java 这里要使用点(.)。 Topic topic = session.createTopic("task.17380107YU"); MessageConsumer consumer = session.createConsumer(topic); // 接收订阅消息。 consumer.setMessageListener(new MessageListener() { @Override public void onMessage(Message message) { System.out.println("收到订阅内容 ->:"); if(message instanceof TextMessage){ TextMessage textMessage = (TextMessage)message; System.out.println(textMessage.getText()); } } }); // 为了测试,此处使用阻塞。 System.in.read();
PHP:
<?php /* * 以下代码使用 phpMQTT.php 库。 * * https://github.com/bluerhinos/phpMQTT/blob/master/phpMQTT.php */ require("../phpMQTT.php"); // 服务器 ip $server = 'xxx.xxx.xxx.xxx'; // 端口。 $port = 1883; // 账号、密码。 $username = "xxx"; $password = "xxx"; // 随机 ID. $client_id = 'pub_'.uniqid(); // 初始 MQTT 对象。 $mqtt = new Bluerhinos\phpMQTT($server, $port, $client_id); // 检查是否连接成功。 if (!$mqtt->connect(true, NULL, $username, $password)) { echo "连接失败\n"; exit(1); } $topics = [ 'task/17380107YU' => ['qos' => 0, 'function' => 'messageReceived'], ]; // 订阅主题。 $mqtt->subscribe($topics, 0); while ($mqtt->proc()){ } $mqtt->close(); // 接收订阅消息。 function messageReceived($topic, $msg){ echo "收到订阅内容 ->:"; echo $msg; }
注意事项 / 打印机默认纸张宽度和DPI值
打印机默认纸张宽度和DPI值
打印机型号 | 默认纸张宽度 | 打印机DPI |
---|---|---|
MCP-58 | 58mm | 203 |
MCP-350 | 80mm | 203 |
MCP-360 | 80mm | 203 |
FP-570 | 80mm | 180 |
MCP-610 | 80mm | 180 |
MCP-230 | 78mm | 203 |
MCP-330 | 80mm | 203 |
CLP-180 | 110mm | 203 |
CFP-535 | 203.2mm | 180 |
CLQ-200FW | 110mm | 180 |
注意事项 / 如何选择API打印方式?
如何选择打印方式?
映美规范与标准规范Html的区别
映美规范html只支持由映美提供的html标签来设计网页, 详见《HTML模版设置说明文档》。标准规范html可以支持ie11内核浏览器下的所有标签以及css样式。
打印方式 | 使用场景 | 接口说明 |
---|---|---|
打印映美规范html页面-传URL地址 | 直接利用 《HTML模版设置说明文档》设计的HTML页面 ,比如:餐饮、收银小票 | 客户提供一个html页面的url地址,由打印机直接下载页面解析打印,此页面内的标签必须符合映美定义的html标签规范。 详见《HTML模版设置说明文档》。 |
打印映美规范html页面-传HTML代码 | 利用 《HTML模版设置说明文档》设计的HTML页面,无法生成url | 打印应用提供映美规范标签的html源代码,由映美服务器转为html文件,打印机再从映美服务器直接下载解析打印,此打印方式跟映美规范标签的html页面一致,标签必须符合映美定义的html标签规范,标签规范详情请 详见《HTML模版设置说明文档》。 |
打印标准规范html页面-转图片 | 黑白双色打印(适用于表格、标准规范排版的相关样式) | 打印客户提供的html页面,支持标准规范的html标签,样式只能支持到IE11内核,可以打印表格数据以及标准规范排版页面,html页面的body宽度不大于打印机的纸张宽度值,Body宽度的像素最大值等于纸张宽度*打印机dpi/25.4打印机的dpi值,请详见 打印机默认纸张宽度和DPI值;Ps:页面包含表格的情况下,表格线条需要设置成黑色。 |
打印标准规范html页面-转灰度图 | 只使用热敏打印机,想将图片打印出多层灰度的效果 | 打印客户提供的html页面,支持标准规范的html标签,样式只能支持到IE11内核,可以打印灰度图片数据,html页面的body宽度不大于打印机的纸张宽度值,Body宽度的像素最大值等于纸张宽度*打印机dpi/25.4,打印机的dpi值,请详见 打印机默认纸张宽度和DPI值。 |
打印ESC指令 | 适用于开发者懂Esc指令排版布局, 详见《打印机编程手册esc指令》 | 以esc方式打印,将esc的标准指令代码以文本格式传输到接口。 |
打印定点坐标文本 | 指定打印位置(X、Y)进行打印,适用于票据打印,比如:增值税发票、门票、工作牌等 | 将文本打印到客户指定的坐标位置 |
打印快递面单 | 直接对接快递面单打印 | 打印标准的快递面单,如顺丰,圆通,EMS等 |
映美控股有限公司版权所有 ©jolimark.com 粤ICP备05080281号