2 JSON-RPC API
2.3 支付接口
2.3.1 在线支付HWT
请求:
{
"method": "submit",
"params": [{
"offline": false,
"secret": "ss3ZBtHP********ryGE4Kuf",
"tx_json": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount": 100,
"Destination": "hHb9CJAWyB4hj91VRWn96DkukG4bwdtyTr",
"TransactionType": "Payment",
"Memos": [{
"Memo": {
"MemoData": "74657374",
"MemoType": "737472696E67"
}
}]
}
}]
}
字段名称 | 类型 | 描述 |
---|---|---|
method | string | RPC接口名称 |
offline | bool | 是否离线提交。默认false |
Amount | unsignedint,object | 金额 |
Memos | object[] | (可选)备注集 |
Memo | object | 备注 |
MemoData | string | 备注内容,必须是Hex编码格式例如“test”,Hex编码后是“74657374” |
MemoType | string | 备注类型,必须是Hex编码格式。例如“string”,Hex编码后是“737472696E67” |
响应结果:
{
"result": {
"engine_result": "tesSUCCESS",
"engine_result_code": 0,
"engine_result_message": "The transaction was applied. Only final in a validated ledger.",
"status": "success",
"tx_blob": "1200002280000000240000000F614000000000000064684000000000002710732103EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C87446304402206BEE8A50F000D3EBA91F4C50D0A2D08927514C414ABCA729303AE09B1A2E9A90022030E05AC825DC510AF5244552091A08FD84364A32B7F57B1C5CEC2FF19561051781142E244E6F20104E57C0C60BD823CB312BF10928C78314B5F762798A53D543A014CAF8B297CFF8F2F937E8F9EA7C06737472696E677D0474657374E1F1",
"tx_json": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount": "100",
"Destination": "hHb9CJAWyB4hj91VRWn96DkukG4bwdtyTr",
"Fee": "10000",
"Flags": 2147483648,
"Memos": [
{
"Memo": {
"MemoData": "74657374",
"MemoType": "737472696E67"
}
}
],
"Sequence": 15,
"SigningPubKey": "03EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C8",
"TransactionType": "Payment",
"TxnSignature": "304402206BEE8A50F000D3EBA91F4C50D0A2D08927514C414ABCA729303AE09B1A2E9A90022030E05AC825DC510AF5244552091A08FD84364A32B7F57B1C5CEC2FF195610517",
"hash": "4E284CD73E6BDE90DD8A740B4E49340B3C5A8D4DBA497BFDD75264351EB16617"
}
}
}
2.3.2 在线支付二级资产
请求:
{
"method": "submit",
"params": [{
"secret": "ss3ZBtHP********ryGE4Kuf",
"tx_json": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount":
{
"currency":"AAA",
"value":"100",
"issuer":"hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA"
},
"Destination": "hDg53Haik2475DJx8bjMDSDPj4VX7rtaMd",
"TransactionType": "Payment"
}
}]
}
字段名称 | 类型 | 描述 |
---|---|---|
Amount | object | 二级资产对象 |
currency | string[] | 币种 |
value | string | 金额 |
issuer | string | 发行商的账号地址,表示这个资产由哪个账户发型的。 |
响应结果:
{
"result": {
"engine_result": "tesSUCCESS",
"engine_result_code": 0,
"engine_result_message": "The transaction was applied. Only final in a validated ledger.",
"status": "success",
"tx_blob": "1200002280000000240000001461D5038D7EA4C68000000000000000000000000000434E5900000000002E244E6F20104E57C0C60BD823CB312BF10928C7684000000000002710732103EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C87446304402203E834B34015FECA576495B26BE5F9417DC66E08DF19B6DD03426EB9A464AD94102201C32708767013A1FDB103F4AF98690D056E330B5C2355E5A127EBEA603636FC481142E244E6F20104E57C0C60BD823CB312BF10928C783148B240FCDC580525F0BFCABB590F434252AC36AF8",
"tx_json": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount": {
"currency": "AAA",
"issuer": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"value": "100"
},
"Destination": "hDg53Haik2475DJx8bjMDSDPj4VX7rtaMd",
"Fee": "10000",
"Flags": 2147483648,
"Sequence": 20,
"SigningPubKey": "03EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C8",
"TransactionType": "Payment",
"TxnSignature": "304402203E834B34015FECA576495B26BE5F9417DC66E08DF19B6DD03426EB9A464AD94102201C32708767013A1FDB103F4AF98690D056E330B5C2355E5A127EBEA603636FC4",
"hash": "EC6846907FF581B64CC0670765C7DE5D6CFF7D0F7C4994DFEAA67DA6A6082094"
}
}
}
2.3.3 离线签名支付
离线签名,是指在不连接区块链网络节点的情况下,通过区块链的签名算法,对交易进行签名的过程。
请求:
{
"method": "sign",
"params": [
{
"offline": false,
"secret": "ss3ZBtHP********ryGE4Kuf",
"tx_json": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount": 100,
"Destination": "hHb9CJAWyB4hj91VRWn96DkukG4bwdtyTr",
"TransactionType": "Payment"
}
}
]
}
字段名称 | 类型 | 描述 |
---|---|---|
offline | bool | 如果是true,表示离线签名 |
secret | string | 私钥 |
tx_json | object | 交易要素 |
Account | string | 源账号地址 |
Amount | unsigned int、object | 交易额 |
Destination | string | 目标账号地址 |
TransactionType | string | 交易类型 |
响应结果:
{
"result": {
"status": "success",
"tx_blob": "12000022800000002400000015614000000000000064684000000000002710732103EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C874463044022004CF356A73F323F8C5264DFF0CE41788E8989EA920CDE2B964BAF0E2D58CDE2902202145CA36596893D0F4E2CD01161BA4E09C8454DC0755D9AC695AE4123A9E569D81142E244E6F20104E57C0C60BD823CB312BF10928C78314B5F762798A53D543A014CAF8B297CFF8F2F937E8",
"tx_json": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount": "100",
"Destination": "hHb9CJAWyB4hj91VRWn96DkukG4bwdtyTr",
"Fee": "10000",
"Flags": 2147483648,
"Sequence": 21,
"SigningPubKey": "03EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C8",
"TransactionType": "Payment",
"TxnSignature": "3044022004CF356A73F323F8C5264DFF0CE41788E8989EA920CDE2B964BAF0E2D58CDE2902202145CA36596893D0F4E2CD01161BA4E09C8454DC0755D9AC695AE4123A9E569D",
"hash": "2288D9E2BCA0227C45BC44AB4C6726B7BDC085C31E16CD1A84D5E5020CEF2D13"
}
}
}
提交交易
请求:
{
"method": "submit",
"params": [
{
"tx_blob": "12000022800000002400000015614000000000000064684000000000002710732103EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C874463044022004CF356A73F323F8C5264DFF0CE41788E8989EA920CDE2B964BAF0E2D58CDE2902202145CA36596893D0F4E2CD01161BA4E09C8454DC0755D9AC695AE4123A9E569D81142E244E6F20104E57C0C60BD823CB312BF10928C78314B5F762798A53D543A014CAF8B297CFF8F2F937E8"
}
]
}
响应结果:
{
"result": {
"engine_result": "tesSUCCESS",
"engine_result_code": 0,
"engine_result_message": "The transaction was applied. Only final in a validated ledger.",
"status": "success",
"tx_blob": "12000022800000002400000015614000000000000064684000000000002710732103EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C874463044022004CF356A73F323F8C5264DFF0CE41788E8989EA920CDE2B964BAF0E2D58CDE2902202145CA36596893D0F4E2CD01161BA4E09C8454DC0755D9AC695AE4123A9E569D81142E244E6F20104E57C0C60BD823CB312BF10928C78314B5F762798A53D543A014CAF8B297CFF8F2F937E8",
"tx_json": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount": "100",
"Destination": "hHb9CJAWyB4hj91VRWn96DkukG4bwdtyTr",
"Fee": "10000",
"Flags": 2147483648,
"Sequence": 21,
"SigningPubKey": "03EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C8",
"TransactionType": "Payment",
"TxnSignature": "3044022004CF356A73F323F8C5264DFF0CE41788E8989EA920CDE2B964BAF0E2D58CDE2902202145CA36596893D0F4E2CD01161BA4E09C8454DC0755D9AC695AE4123A9E569D",
"hash": "2288D9E2BCA0227C45BC44AB4C6726B7BDC085C31E16CD1A84D5E5020CEF2D13"
}
}
}
2.3.4 获取交易历史
请求:
{
"method": "tx",
"params": [
{
"transaction": "4E284CD73E6BDE90DD8A740B4E49340B3C5A8D4DBA497BFDD75264351EB16617",
"binary": false
}
]
}
字段名称 | 类型 | 描述 |
---|---|---|
method | string | RPC接口名称 |
transaction | string | 交易记录的hash,即交易的流水号 |
binary | bool | 交易结果是否以二进制显示,默认false。如果为true则以二进制格式显示;若为false,则以JSON格式显示 |
响应结果:
{
"result": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"Amount": "100",
"Destination": "hHb9CJAWyB4hj91VRWn96DkukG4bwdtyTr",
"Fee": "10000",
"Flags": 2147483648,
"Memos": [
{
"Memo": {
"MemoData": "74657374",
"MemoType": "737472696E67"
}
}
],
"Sequence": 15,
"SigningPubKey": "03EAC169AF572EB52038D1C51F7E5B9C94CE34A7FBB714860BE001BDE25A4B03C8",
"TransactionType": "Payment",
"TxnSignature": "304402206BEE8A50F000D3EBA91F4C50D0A2D08927514C414ABCA729303AE09B1A2E9A90022030E05AC825DC510AF5244552091A08FD84364A32B7F57B1C5CEC2FF195610517",
"date": 619176740,
"hash": "4E284CD73E6BDE90DD8A740B4E49340B3C5A8D4DBA497BFDD75264351EB16617",
"inLedger": 467844,
"ledger_current_index": 467932,
"ledger_index": 467844,
"meta": {
"AffectedNodes": [
{
"ModifiedNode": {
"FinalFields": {
"Account": "hHb9CJAWyB4hj91VRWn96DkukG4bwdtyTr",
"AssetNumber": "0000000000000006",
"Balance": "99989772898258360",
"Flags": 8388608,
"OwnerCount": 0,
"Sequence": 189
},
"LedgerEntryType": "AccountRoot",
"LedgerIndex": "2B6AC232AA4C4BE41BF49D2459FA4A0347E1B543A4C92FCEE0821C0201E2E9A8",
"PreviousFields": {
"Balance": "99989772898248260"
},
"PreviousTxnID": "E2D3A468F6CD4A52B3580D8041AD325146B79E38C50D89093020C3A1BFB24E9C",
"PreviousTxnLgrSeq": 467828
}
},
{
"ModifiedNode": {
"FinalFields": {
"Account": "hnUy2SHThB9DubsPmkJZUXTf5FcNDGhYEA",
"AssetNumber": "0000000000000003",
"Balance": "13369849900",
"Flags": 8388608,
"OwnerCount": 0,
"Sequence": 16
},
"LedgerEntryType": "AccountRoot",
"LedgerIndex": "AA22EEB13821659B8316218C1D78606FD9C57C3192C2104EB7B0920AA30FF6C6",
"PreviousFields": {
"Balance": "13369860000",
"Sequence": 15
},
"PreviousTxnID": "E2D3A468F6CD4A52B3580D8041AD325146B79E38C50D89093020C3A1BFB24E9C",
"PreviousTxnLgrSeq": 467828
}
}
],
"TransactionIndex": 0,
"TransactionResult": "tesSUCCESS",
"delivered_amount": "100"
},
"status": "success",
"validated": true
}
}
字段名称 | 类型 | 描述 |
---|---|---|
date | unsigned int | 交易时间 |
ledger_index | unsigned int | 交易所在账本的账本号 |
meta | object | 交易记录原始信息 |
AffectedNodes | object | 影响的单元,包括 CreatedNode,ModifiedNodes,DeletedNode |
CreatedNode | object | 创建的单元,包含 NewFields,新建的字段。 |
ModifiedNode | object | 修改的单元,包含 PreviousFields,修改前的字段;FinalFields,修改后的字段。 |
DeletedNode | object | 删除的单元,包含 FinalFields,被删除的字段。 |
TransactionIndex | unsigned int | 交易序号,该交易在所在区块中的序号 |
TransactionResult | string | 交易结果 |
delivered_amount | string | 交易金额 |