创建支付票据
提交地址:https://openapi.basicex.com/v2/invoices
请求方式:POST
Content-Type:
application/json
请求传参
参数 | 是否必填 | 类型 | 描述 |
---|---|---|---|
buyerId | 否 | string | 商户侧客户识别编号,用于支付该票据的商户侧客户 ID |
orderId | 是 | string | 商户侧内部订单编号,该订单编号在同一商户内唯一,用于将支付票据与商户订单 ID 进行关联 |
fiat | 否 | string | 币趣会根据此法币币种进行折算,转换为对应的所有加密币种对应金额(当前共支持22种加密货币),即客户可任选一加密货币进行支付,商家得到该币种,此字段与currency 之间必传一个。ISO 4217 3 位字符的法币币种代码,支付法币种类:CNY/USD/EUR/HKD/INR/IDR/PHP/THB |
currency | 否 | string | 加密货币币种,例如: BCNY(推荐,CNY 1:1),USDT, BTC 等 查看币种列表,当该参数传入时,则此票据只能支付此币种,此字段与fiat 之间必传一个 |
forcedChain | 否 | string | 强制选择指定公链,例如: TRC20, ERC20 等 查看公链列表,当该参数传入时,用户只能在指定公链下进行支付,且不可使用币趣钱包支付 |
amount | 是 | decimal | 金额字段,与precision 精度字段结合,采用整数格式。即:如果precision 为2(amount÷10²),用户支付2.00 ,则需传入200 。 |
precision | 是 | int | 金额精度 与 amountType 结合,当传入coin_amount (加密货币)时,推荐精度 2-6 位,money_price (法币金额)时精度为 2。 |
amountType | 是 | string | 金额类型字段,表示传入的amount 是法币还是加密货币金额。coin_amount 加密货币金额, money_price 法币金额 |
description | 是 | string | 商品描述字段,将展示在收银台页面商品详情 |
metadata | 否 | json | 传入的结构化元数据,用于商户本身记录相应的数据。该字段将在后续原样返回 |
payerEmail | 否 | string | 商户侧的客户邮箱,如传入,则在票据支付成功后向该邮箱发送邮件 |
notificationUrl | 是 | string | 用于向商户指定地址推送 Webhook 通知的网址,必须为HTTPS |
redirectUrl | 否 | string | 用于用户在收银台支付成功后,跳转到此地址。该地址必须以https 或http 开头 |
buyerIp | 否 | string | 商户侧客户的 IP 地址 |
sendPaidNotification | 否 | bool | 是否发送己支付状态的通知数据。 默认为 false ,如设置为true ,则币趣将在区块链上收到用户转账款项且己有一个块确认后,发送paid 状态通知基于区块链特性,这并不意味该笔订单完全有效,币趣将在确认该交易成功且不可逆后,再次发送 complete 状态通知,paid 状态转complete 状态可能需要一些时间。 |
physical | 否 | bool | 是否为实物商品,默认为false ,如为实物商品时为true |
返回参数
币趣支付返回参数,具体取值请根据业务需求
订单请求成功后,响应code为0000
InvoiceObject
支付票据返回参数
字段 | 类型 | 描述 |
---|---|---|
invoiceId | string | 支付票据订单 ID |
merOrderId | string | 商户侧内部订单编号 |
fiat | string | ISO 4217 3 位字符的法币代码 |
currency | string | 如果支付票据订单限制了支付币种或选择了支付币种,则返回该字段 |
currencyInfo | CoinInfo | 如果支付票据订单限制了支付网络,或选择了支付网络,则返回该字段 查看详情 |
forcedChain | string | 如果支付票据订单限制了支付网络,或选择了支付网络,则返回该字段 查看详情 |
fiatAmount | string | 该支付票据的法币金额 |
fiatInfo | FiatCurrencyInfo | 法币详细信息 查看详情 |
description | string | 支付票据订单描述 |
metadata | map | 传入的结构化元数据,用于商户本身记录相应的数据。该字段将原样返回 |
payerEmail | string | 商户侧的客户邮箱,如传入,则在票据支付成功后向该邮箱发送邮件 |
merchantCode | string | 商户编码 |
merchantName | string | 商户名称 |
currencies | List | 支持的加密货币币种信息列表 |
fiatCurrencies | List | 支持的法币货币信息列表 |
paymentInfo | InvoicePaymentInfo | 支付信息 查看详情 |
exchangeRate | InvoiceExchangeRate | 汇率信息 |
type | int | 支付票据订单类型,该订单类型通过异或形式进行读取。 1. FIAT_CURRENCY_EXCHANGE : 表示该支付票据创建为法币汇率折算加密货币形式2. FORCE_SELECTED_CHAIN : 表示该支付票据创建为强制选择公链形式,后续不能变更币种和支付公链,仅在此链下进行支付3. FORCE_SELECTED_COIN : 表示该支付票据创建为强制选择加密货币币种形式,后续不能变更币种,仅支持支付此币种 |
status | string | 支付票据的当前状态(created: 表示该支付票据创建未支付, completed: 表示该支付票据已支付并完成, expired: 表示该支付票据已过期) |
invoiceTime | long | 支付票据的创建时间戳(13 位) |
expirationTime | long | 支付票据的过期时间戳(13 位) |
cashierUrl | string | 该支付票据对应的币趣收银台订单网址,可用于再次支付该笔未完成的订单,以避免用户多次提交未支付订单 |
CoinInfo
币种信息
字段 | 类型 | 描述 |
---|---|---|
currency | string | 币种名称 |
fullName | string | 币种全称 |
coinIcon | string | 币种图标 |
precision | string | 币种精度 |
networkList | string | 币种支持的公链列表信息 |
CoinChainInfo
公链信息
字段 | 类型 | 描述 |
---|---|---|
network | string | 公链网络名称 |
fullName | string | 公链网络全称 |
contractAddress | string | 合约地址 |
FiatCurrencyInfo
法币信息
字段 | 类型 | 描述 |
---|---|---|
fullName | string | 法币全名 |
name | string | 法币名称 |
symbol | string | 币种符号 |
icon | string | 币种图标 |
InvoicePaymentInfo
票据订单信息
字段 | 类型 | 描述 |
---|---|---|
allowPayment | string | 是否允许支付,如果为true ,表示该支付订单允许支付。如果为false ,表示前置条件未满足,例如:订单没有支付金额/没有选择币种/没有选择公链/收款地址已过期等 |
payeeAddress | string | 接收方地址,用户实际向该地址进行转账完成支付 |
network | CoinChainInfo | 网络信息 查看详情 |
totalAmount | string | 用户总计需要支付的金额 |
paidAmount | string | 用户已支付的金额 |
payeeAddressExpireTime | int | 收款地址过期时间,单位毫秒,需要在过期时间前完成支付或者重新获取收款地址 |