创建订单

更新时间:2024.06.18

用户申请使用服务时,商户可通过此接口申请创建微信支付分订单。

注意:API参数涉及时间参数时需注意,可能由于商户时钟系统和微信支付分时钟系统,取当前时间存在一定误差。可能导致在API调用出现失败情况。因此商户在传入时间参数时需预留一定误差时间。

# 接口说明

支持商户:
【普通服务商】
请求方式:
【POST】/v3/payscore/partner/serviceorder
请求域名:
【主域名】
https://api.mch.weixin.qq.com
使用该域名将访问就近的接入点
【备域名】
https://api2.mch.weixin.qq.com
使用该域名将访问异地的接入点 ,指引点击查看

# 请求参数

    Header HTTP头参数
  • Authorization 必填 string
    请参考 签名认证 生成认证信息
  • Accept 必填 string
    请设置为 application/json
  • Content-Type 必填 string
    请设置为 application/json
    Body 包体参数
  • service_id 必填 string(32)
    【服务ID】 该服务ID有本接口对应产品的权限
  • appid 必填 string(32)
    【服务商公众号ID】 服务商申请的公众号或移动应用APPID
  • sub_mchid 必填 string(32)
    【子商户商户号】 子商户商户号,由微信支付生成并下发
  • sub_appid 选填 string(32)
    【子商户公众号ID】 子商户申请的公众号或移动应用APPID
  • out_order_no 必填 string(32)
    【商户订单号】 商户系统内部服务订单号(不是交易单号),要求32个字符内,只能是数字、大小写字母_-|* 且在同一个商户号下唯一。
  • service_introduction 必填 string(20)
    【服务信息】 服务信息,用于介绍本订单所提供的服务
  • post_payments 选填 array[Payment]
    【后付费项目】 后付费项目列表,最多包含100条付费项目,用于用户侧展示与完结订单时的总金额计算
    • 属性
  • post_discounts 选填 array[ServiceOrderCoupon]
    【商户优惠】 商户优惠列表,最多包含30条商户优惠,用于用户侧展示与完结订单时的总金额计算
    • 属性
  • risk_fund 必填 object
    【服务风险金】 用于微信支付分对本次服务进行风险评估
    • 属性
  • time_range 必填 object
    【服务时间】 服务时间,用于用户侧展示
    • 属性
  • location 选填 object
    【服务位置】 服务位置,用于用户侧展示
    • 属性
  • openid 选填 string(128)
    【服务商公众号下的用户标识】 微信用户在服务商公众号appid下的唯一标识;
    need_user_confirm为false时,openid与sub_openid必须填写并且只能填写一个
  • sub_openid 选填 string(128)
    【子商户公众号下的用户标识】 微信用户在子商户公众号sub_appid下的唯一标识;
    need_user_confirm为false时,1. openid与sub_openid必须填写并且只能填写一个 2. 如果填写了sub_openid,那么sub_appid必填
  • need_user_confirm 选填 boolean
    【是否需要用户确认】 false: 不需要; true: 需要确认(默认true)
  • notify_url 必填 string(256)
    【商户回调地址】 商户接收用户确认订单通知或扣款成功回调通知的地址
  • attach 选填 string(256)
    【附加数据】 附加数据,可作为自定义参数使用,需要先urlencode后传入,总长度不大于256字符,超出报错处理。

请求示例

POST

# 应答参数

    200OK
  • out_order_no 必填 string(32)
    【商户订单号】 调用接口传入的商户订单号
  • service_id 必填 string(32)
    【服务ID】 调用接口传入的服务ID
  • appid 必填 string(32)
    【服务商公众号ID】 调用接口传入的服务商公众号ID
  • mchid 必填 string(32)
    【服务商商户号】 调用接口传入的服务商商户号
  • sub_appid 选填 string(32)
    【子商户公众号ID】 调用接口传入的子商户公众号ID
  • sub_mchid 必填 string(32)
    【子商户商户号】 调用接口传入的子商户商户号
  • service_introduction 必填 string(20)
    【服务信息】 调用接口传入的服务信息
  • state 必填 string(32)
    【服务订单状态】 当前单据状态.
    CREATED: 服务订单已创建
    DOING: 服务订单进行中
    DONE: 服务订单已完成
    REVOKED: 商户取消服务订单
    EXPIRED: 服务订单已失效,"CREATED"状态超过30天未变动,则订单失效
  • state_description 选填 string(32)
    【订单状态说明】 对服务订单"DOING"状态的附加说明. * USER_CONFIRM: 用户确认 * MCH_COMPLETE:商户完结
  • post_payments 选填 array[object]
    【后付费项目】 调用接口传入的后付费项目
    • 属性
  • post_discounts 选填 array[object]
    【商户优惠】 调用接口传入的商户优惠
    • 属性
  • risk_fund 选填 object
    【服务风险金】 调用接口传入的服务风险金
    • 属性
  • time_range 选填 object
    【服务时间】 调用接口传入的服务时间
    • 属性
  • location 选填 object
    【服务位置】 调用接口传入的服务位置
    • 属性
  • attach 选填 string(256)
    【附加数据】 调用接口传入的附加数据
  • notify_url 选填 string(256)
    【商户回调地址】 调用接口传入的商户回调地址
  • order_id 必填 string(64)
    【微信支付服务订单号】 微信支付服务订单号,每个微信支付服务订单号与商户号下对应的商户订单号一一对应
  • package 选填 string(1024)
    【跳转微信侧数据包】 确认订单流程,商户前端跳转到微信侧传入的数据包,该数据一小时内有效

应答示例

200 OK

# 错误码

# 公共错误码

状态码 错误码 描述 解决方案
400 PARAM_ERROR 参数错误 请根据错误提示正确传入参数
400 INVALID_REQUEST HTTP 请求不符合微信支付 APIv3 接口规则 请参阅 接口规则
401 SIGN_ERROR 验证不通过 请参阅 签名常见问题
500 SYSTEM_ERROR 系统异常,请稍后重试 请稍后重试

# 业务错误码

状态码 错误码 描述 解决方案
400 INVALID_ORDER_STATE 单据状态错误 确认操作是否符合流程
400 INVALID_REQUEST 请求参数符合参数格式,但不符合业务规则 请确认相同单号是否使用了不同的参数
400 ORDER_CANCELED 单据已取消 当前状态无需操作
400 ORDER_DONE 订单已完成 当前状态无需操作
403 NO_AUTH 商户信息不合法 登录商户平台核对,传入正确信息
404 ORDER_NOT_ EXIST 订单不存在 确认入参,传入正确单据
429 FREQUENCY_LIMITED 频率超限 请求量不要超过接口调用频率限制
500 SYSTEM_ERROR 系统错误 5开头的状态码都为系统问题,请使用相同参数稍后重新调用
反馈
咨询
目录