创建订单
该接口用于创建票牛订单,创建订单会锁定商品库存。创建后订单会保留15分钟,超时后会关闭。创建成功后,可以支付订单。
POST /openapi/v2/order/makeOrder
参数
context-type "application/x-www-form-urlencoded"
| name | 类型 | 是否必填 | 意义 | 取值 |
|---|---|---|---|---|
| sign | String | 是 | 签名 | 483DFD2E8BE0AF2D486F04C7320C7C5E |
| appId | int | 是 | 代理商的唯一id | 1 |
| timeStamp | long | 是 | 时间戳 有效期10分钟 | 1482995969920 |
| orderId | String | 是 | 代理商订单id | js8asa8su |
| count | int | 是 | 数量 | 1 |
| amount | Bigdecimal | 是 | 金额 (单位元,精度小数点后一位,没有邮费必须和商品金额一样,如果有邮费则是商品金额加上邮费) | 100 |
| ticketGroupId | int | 否 | 直接购票商品id | 121 (deprecated,建议使用ticketCategoryId) |
| ticketCategoryId | int | 是 | 直接购票票档id | 111 |
| areaTicketType | int | 是 | 选座方式 | 0:"直接购票", 1:"选座" , 3:"选排" ,目前仅支持直接购票 |
| ticketGroupIds | List | 否 | 选座/选排参数 商品数组 | 选座/选排 必填 |
| deliverType | int | 是 | 配送方式 | 1快递,2门店自取,3现场自取,4电子票 |
| postage | Bigdecimal | 是 | 邮费 | 快递全国统一收取邮费10元,免邮则不收取(具体和商务洽谈),如果传了邮费则amount字段需要加上邮费 |
| receiverName | String | 是 | 收货人姓名 | 老王 |
| phone | String | 是 | 收货人手机号码 | 13700000000 |
| district | String | 否 | (快递必填)行政区,按照给出 district.md | 上海市上海市静安区 |
| address | String | 否 | (快递必填)收货地址 | 余姚路339号(百乐门商务楼)2楼东区 |
| idCards | String | 否 | (演出要求则必填)身份证信息:姓名,证件类型,身份证号(这里使用json字符串), 需要拓展实名类型见关于实名信息字段 | [{"name":"李雷","idCardType":1,"idCard":"320829199909090009"},{"name":"韩梅梅","idCardType":2,"idCard":"SG839986","countryAreaId":5}] |
关于实名信息字段
对于实名信息进行升级,增加多种证件类型,部分存在强实名校验
| name | 类型 | 定义 |
|---|---|---|
| name | String | 姓名 |
| idCardType | int | 证件类型, 默认为1身份证, 详见下方关于实名类型 |
| idCard | String | 证件号 |
| countryAreaId | int | 签发地Id,证件类型为护照时,签发地必填。相关取值参考签发地查询接口 |
关于实名类型
| 证件类型 | idCardType |
|---|---|
| 身份证 | 1 |
| 护照 | 2 |
| 港澳居民来往内地通行证 | 3 |
| 台湾居民来往大陆通行证 | 4 |
| 港澳台居民居住证 | 5 |
| 外国人永久居留身份证 | 6 |
请求示例(测试环境):
curl -X POST http://openapibeta.piaoniu.com/openapi/v2/order/makeOrder\
-v -d "orderId=js8asa8su&count=1&amount=100&ticketGroupId=121&receiverName=%E8%80%81%E7%8E%8B&phone=13700000000&district=%E4%B8%8A%E6%B5%B7%E5%B8%82%E4%B8%8A%E6%B5%B7%E5%B8%82%E9%9D%99%E5%AE%89%E5%8C%BA&address=%E4%BD%99%E5%A7%9A%E8%B7%AF339%E5%8F%B7%EF%BC%88%E7%99%BE%E4%B9%90%E9%97%A8%E5%95%86%E5%8A%A1%E6%A5%BC%EF%BC%892%E6%A5%BC%E4%B8%9C%E5%8C%BA&appId=10000&timeStamp=1489795985518&sign=13D25407EE9E2332545DA1AF186056E5"\
-H "Content-Type: application/x-www-form-urlencoded"
返回值 :
| name | 意义 | 取值 |
|---|---|---|
| success | 是否成功,成功后会返回订单号,错误会返回错误码及提示 | true/false |
| orderId | 票牛订单,方便对账 | 12102910 |
| errorCode | 错误码,详见下表 | PRAM_ERROR |
| errorHint | 错误提示 | 收货地址不全 |
errcode含义:
| 错误码 | 含义 |
|---|---|
| PARAM_ERROR | 参数错误,例如:收货地址不全 |
| USER_ERROR | 用户被限制下单,例如:未支付订单数超过3单 |
| CAMPAIGN_ERROR | 活动错误(目前第三方系统对接没有活动信息,故不会出现此错误),例如:没有参加活动资格 |
| TICKET_ERROR | 商品错误,例如:该商品已下架 |
| STOCK_ERROR | 数量错误,例如:库存不足 |
| PRICE_ERROR | 价格错误,例如:总金额与商品金额不匹配 |
| OTHER_ERROR | 其他未知错误 |
建议联调时通过业务对齐,减少PARAM_ERROR/USER_ERROR出现。
建议当出现TICKET_ERROR/STOCK_ERROR/PRICE_ERROR时,重新调用商品库存及价格查询接口同步该商品信息。
示例(成功):
{
"success":true,
"orderId":12102910
}
示例(失败):
{
"success":false,
"errorCode":"STOCK_ERROR",
"errorHint":"商品已售空"
}
变更历史
| name | 时间 | 内容 |
|---|---|---|
| v1.1 | 2025-09-25 | 实名制下单护照证件添加签发地 |