December 27, 2021
正常的结算流程是指:WalletsNet 向结算行发送结算指令,结算行按照指令在参与者的结算账户间进行资金划转,完成后参与者会收到详细的结算报告
参与者在结算账户开户行对结算账户进行充值,到账后,由结算行通知 WalletsNet 结算账户余额变更
参与者在结算账户开户行对结算账户进行提现操作,结算行需严格按照以下流程安全的完成提现操作,否则会形成结算风险
camt.050 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | WalletsNet | 结算行 | WalletsNet 向结算行发出结算指令 |
以下 camt.050 message sample 对应的场景为「编号-1」
xxxxxxxxxx
611{
2 "AppHdr": {
3 "Fr": {
4 "FIId": {
5 "FinInstnId": {
6 "ClrSysMmbId": {
7 "MmbId": "WCSMHKHKXXX"
8 }
9 }
10 }
11 },
12 "To": {
13 "FIId": {
14 "FinInstnId": {
15 "ClrSysMmbId": {
16 "MmbId": "XXXXXXXXXXX" // 结算行的 PID
17 }
18 }
19 }
20 },
21 "BizMsgIdr": "B20210728WCSMHKHKXXXBPSP27678571155",
22 "MsgDefIdr": "camt.050.001.05",
23 "CreDt": "2021-07-28"
24 },
25 "Document": {
26 "LqdtyCdtTrf": {
27 "LqdtyTrfId": {
28 "InstrId": "20210728WCSMHKHKXXXBWPSP68976878360"
29 },
30 "Cdtr": {
31 "FinInstnId": {
32 "Othr": {
33 "Id": "机构的 PID(Creditor)",
34 "Issr": "开户行"
35 }
36 }
37 },
38 "CdtrAcct": {
39 "Id": "Creditor 机构的结算账户 ",
40 "Ccy": "HKD" // 结算账户币种
41 },
42 "TrfdAmt": {
43 "Amt": "2485.82", // 交收金额
44 "Ccy": "HKD" // 交收币种
45 },
46 "Dbtr": {
47 "FinInstnId": {
48 "Othr": {
49 "Id": "机构的 PID(Debtor)",
50 "Issr": "开户行"
51 }
52 }
53 },
54 "DbtrAcct": {
55 "Id": "Debtor 机构的结算账户",
56 "Ccy": "HKD" // 结算账户币种
57 },
58 "SttlmDt": "2021-07-28" // 结算日期
59 }
60 }
61}
camt.025 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | 结算行/成员机构 | WalletsNet | 向 WalletsNet 返回camt指令执行结果 |
WalletsNet | 结算行/成员机构 | 向结算行/成员机构返回camt指令执行结果 |
以下 camt.025 message sample 对应的场景为「编号-1」
xxxxxxxxxx
371{
2 "AppHdr": {
3 "Fr": {
4 "FIId": {
5 "FinInstnId": {
6 "ClrSysMmbId": {
7 "MmbId": "ABNKHKHHXXX"
8 }
9 }
10 }
11 },
12 "To": {
13 "FIId": {
14 "FinInstnId": {
15 "ClrSysMmbId": {
16 "MmbId": "WCSMHKHKXXX"
17 }
18 }
19 }
20 },
21 "BizMsgIdr": "B20210728ABNKHKHHXXXBPSP16174910265",
22 "MsgDefIdr": "camt.025.001.05",
23 "CreDt": "2021-07-28"
24 },
25 "Document": {
26 "RctDtls": {
27 "OrgnlMsgId": {
28 "MsgId": "B20210728WCSMHKHKXXXBPSP94375543765", // 对应的结算指令ID
29 "MsgNmId": "camt.050.001.05"
30 },
31 "ReqHdlg": {
32 "StsCd": "ACCC", // 见下表
33 "Desc": null // 不超过140个字符的备注
34 }
35 }
36 }
37}
Code | Code Name | ISO Description |
---|---|---|
ACCC | AcceptedSettlementCompletedCreditorAccount | Settlement on the creditor's account has been completed. |
RCVD | Received(表示approval) | Payment initiation has been received by the receiving agent |
RJCT | Rejected | Payment initiation or individual transaction included in the payment initiation has been rejected. |
PDNG | Pending | Payment initiation or individual transaction included in the payment initiation is pending. Further checks and status update will be performed. |
camt.054 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | WalletsNet | 成员方 | 结算行向成员方发送结算报告 |
以下 camt.054 message sample 对应的场景为「编号-1」
xxxxxxxxxx
751{
2 "AppHdr": {
3 "Fr": {
4 "FIId": {
5 "FinInstnId": {
6 "ClrSysMmbId": {
7 "MmbId": "WCSMHKHKXXX"
8 }
9 }
10 }
11 },
12 "To": {
13 "FIId": {
14 "FinInstnId": {
15 "ClrSysMmbId": {
16 "MmbId": "XPAYHKHHXXX"
17 }
18 }
19 }
20 },
21 "BizMsgIdr": "B20210728WCSMHKHKXXXBPSP39108438525",
22 "MsgDefIdr": "camt.054.001.09",
23 "CreDt": "2021-07-28"
24 },
25 "Document": {
26 "BkToCstmrDbtCdtNtfctn": {
27 "GrpHdr": {
28 "MsgId": "B20210728WCSMHKHKXXXBPSP39108438525",
29 "CreDtTm": "2021-07-28T17:16:29.702055+08:00"
30 },
31 "Ntfctn": {
32 "Id": "16258114693741277184", // 结算ID
33 "Acct": {
34 "Id": "xxxx", // 结算账户 ID
35 "Ccy": "HKD", // 结算账户币种
36 "Nm": "xxxx" // 结算账户名
37 },
38 "Ntry": [
39 {
40 "Amt": {
41 "Amount": "2649.0", // 结算金额
42 "Ccy": "HKD" // 结算币种
43 },
44 "CdtDbtInd": "DBIT", // 结算类型,DBIT 为 Debit 结算账户;CRDT 为 Credit 结算账户
45 "Sts": "BOOK", // 结算状态,BOOK表示已经结算
46 "NtryDtls": [ // 这里是与本次结算相关联的交易列表,
47 {
48 "Btch": {
49 "NbOfTxs": "1",
50 "TtlAmt": "2649.0", // 结算金额
51 "CdtDbtInd": "DBIT" // 语义同上面的 CdtDbtInd
52 },
53 "TxDtls": [ // 这个列表里面显示了每一笔交易的明细
54 {
55 "Refs": { // 关联的交易ID
56 "MsgId": "B20210728XPAYHKHHXXXBPSP77658872253",
57 "InstrId": "20210728XPAYHKHHXXXBWPSP64025291115",
58 "EndToEndId": "20210728XPAYHKHHXXXBWPSP64025291115",
59 "TxId": "20210728XPAYHKHHXXXBWPSP64025291115"
60 },
61 "Amt": { // 关联的交易金额
62 "Amount": "2649.0", // 交易指令中指定的交收金额
63 "Ccy": "HKD" // 交易指令中指定的交收币种
64 },
65 "CdtDbtInd": "DBIT" // 交易类型,DBIT 为 Debit(即付款),CRDT 为 Credit(即收款)
66 }
67 ]
68 }
69 ]
70 }
71 ]
72 }
73 }
74 }
75}
camt.003 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | 结算行 | WalletsNet | 查询某成员机构某清算账户的信息 |
2 | WalletsNet | 结算行 | 查询某成员机构某结算账户的信息 |
以下 camt.003 message sample 对应的场景为「编号-2」
xxxxxxxxxx
551{
2 "AppHdr": { // 消息头
3 "BizMsgIdr": "B20210205WCSMHKHKXXXPSP96443213381", // 消息id
4 "MsgDefIdr": "camt.003.001.07", // 消息类型, camt003 用于查询账户余额
5 "CreDt": "2021-02-05", // 消息创建日时期, 格式 YYYY-MM-DD
6 "Fr": {
7 "FIId": {
8 "FinInstnId": {
9 "ClrSysMmbId": {
10 "MmbId": "WCSMHKHKXXX" // 发送方member id
11 }
12 }
13 }
14 },
15 "To": {
16 "FIId": {
17 "FinInstnId": {
18 "ClrSysMmbId": {
19 "MmbId": "XXXXXXXXXX" // 接受方 member id
20 }
21 }
22 }
23 }
24 },
25 "Document": {
26 "GetAcct": {
27 "MsgHdr": {
28 "MsgId": "B20210205WCSMHKHKXXXPSP96443213381", // 消息id 和消息头内的消息ID保持一致
29 "CreDtTm": "2021-02-05T16:00:34.521767+08:06" // 消息创建时间,格式 YYYY-MM-DDTHH:MM:SS.ffffff+HH:MM ,需要带上时区
30 },
31 "AcctQryDef": {
32 "QryTp": "ALLL", // 查询类型, 固定值 ALL
33 "AcctCrit": [ // 查询体,这里是一个数组,目前只需要支持单次查询, 即数组长度只会为1
34 {
35 "NewCrit": {
36 "SchCrit": [ // 这里也是一个数组,表示一个查询可以有多个查询条件, 目前只需要支持使用账户ID精确查询
37 {
38 "AcctId": {
39 "EQ": {
40 "Othr": {
41 "Id": "hLzbnfEOp3dObRDXF", // 结算账户ID
42 "Issr": "XXX" // 开户行,在查询机构有多个开户方时用于区分
43 }
44 }
45 }
46 }
47 ]
48 }
49 }
50 ]
51 }
52 }
53 }
54}
55
camt.004 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | 结算行 | WalletsNet | 返回某成员机构某结算账户的信息 |
2 | WalletsNet | 结算行 | 返回某成员机构某清算账户的信息 |
以下 camt.004 message sample 对应的场景为「编号-2」
xxxxxxxxxx
1071{
2 "AppHdr": {
3 "BizMsgIdr": "B20210517WCSMHKHKXXXPSP95392645792",
4 "MsgDefIdr": "camt.004.001.09",
5 "CreDt": "2021-02-05",
6 "Fr": {
7 "FIId": {
8 "FinInstnId": {
9 "ClrSysMmbId": {
10 "MmbId": "XXXXXXXXXXX"
11 }
12 }
13 }
14 },
15 "To": {
16 "FIId": {
17 "FinInstnId": {
18 "ClrSysMmbId": {
19 "MmbId": "WCSMHKHKXXX"
20 }
21 }
22 }
23 }
24 },
25 "Document": {
26 "RtrAcct": {
27 "MsgHdr": {
28 "MsgId": "B20210517WCSMHKHKXXXPSP95392645792",
29 "CreDtTm": "2021-02-05T16:00:34.521767+08:06",
30 "OrgnlBizQry": {
31 "MsgId": "B20210517WCSMHKHKXXXPSP95392645792", // 所回复消息的BizMsgIdr
32 "CreDtTm": "2021-02-05T16:00:35.532213+08:06" // 所回复消息的创建时间
33 }
34 },
35 "RptOrErr": {
36 "AcctRpt": [// 返回的结果, 这里是数组
37 {
38 "AcctId": { // 查询条件
39 "Othr": {
40 "Id": "hLzbnfEOp3dObRDXF", // 结算账户ID
41 "Issr": "XXBANK" // 结算账户开户行
42 }
43 },
44 "AcctOrErr": {
45 "Acct": {
46 "Nm": "xxxx", // 结算账户名称
47 "Ccy": "HKD", // 结算账户币种
48 "MulBal": [ // 余额, 这里是数组,以下有四种情况:实际余额、应收、应付、圈存
49 { // Tp.Cd == "CRDT" && CdtDbtInd == "CRDT" && Sts == "STLD" 则该项表示「结算账户当前实际余额」
50 "Amt": "2000000.00", // 金额
51 "CdtDbtInd": "CRDT", // 借贷状态 枚举值, CRDT 贷, DBIT 借
52 "Sts": "STLD", // 余额状态 枚举值, PDNG 处理中, STLD 已结算
53 "ValDt": {
54 "DtTm": "2021-02-05 12:32:18" // 余额可用时间, 选填
55 },
56 "PrcgDt": {
57 "DtTm": "2021-02-06 12:32:18" // 上次更新时间, 选填
58 },
59 "Tp": {
60 "Cd": "CRDT" //见下表
61 }
62 },
63 { // Tp.Cd == "CRDT" && CdtDbtInd == "CRDT" && Sts == "PDNG" 则该项表示「应收」
64 "Amt": "500.00", // 金额
65 "CdtDbtInd": "CRDT", // 借贷状态 枚举值, CRDT 贷, DBIT 借
66 "Sts": "PDNG", // 余额状态 枚举值, PDNG 处理中, STLD 已结算
67 "ValDt": {
68 "DtTm": "2021-02-05 12:32:18" // 余额可用时间, 选填
69 },
70 "PrcgDt": {
71 "DtTm": "2021-02-06 12:32:18" // 上次更新时间, 选填
72 },
73 "Tp": {
74 "Cd": "CRDT" //见下表
75 }
76 },
77 { // Tp.Cd == "DBIT" && CdtDbtInd == "DBIT" && Sts == "STLD" 则该项表示「应付」
78 "Amt": "888.00", // 金额
79 "CdtDbtInd": "DBIT", // 借贷状态 枚举值, CRDT 贷, DBIT 借
80 "Sts": "PDNG", // 余额状态 枚举值, PDNG 处理中, STLD 已结算
81 "ValDt": {
82 "DtTm": "2021-02-05 12:32:18" // 余额可用时间, 选填
83 },
84 "PrcgDt": {
85 "DtTm": "2021-02-06 12:32:18" // 上次更新时间, 选填
86 },
87 "Tp": {
88 "Cd": "DBIT" //见下表
89 }
90 },
91 { // Tp.Cd == "NOTE" 则该项表示「圈存」,即 reservation,该金额不可被用作交易
92 "Amt": "8000.00", // 金额
93 "CdtDbtInd": "CRDT", // 借贷状态 枚举值, CRDT 贷, DBIT 借
94 "Tp": {
95 "Cd": "NOTE" //见下表
96 }
97 }
98 ]
99 }
100 }
101 }
102 ]
103 }
104 }
105 }
106}
107
Code | Code Name | ISO Description |
---|---|---|
CRDT | Credit | Balance representing the sum of all credit entries booked to an account. |
DBIT | Debit | Balance representing the sum of all debit entries booked to an account. |
Code | Code Name | ISO Description |
---|---|---|
PDNG | Pending | Booking on the account owner's account in the account servicer's ledger has not been completed. Usage: this can be used for expected items, or for items for which some conditions still need to be fulfilled before they can be booked. If booking takes place, the entry will be included with status Booked in subsequent account report or statement. Status Pending cannot be reversed. |
STLD | Settled | Booking on the account owner's account in the account servicer's ledger has been completed |
Code | Code Name | ISO Description |
---|---|---|
CRDT | Credit | Balance representing the sum of all credit entries booked to an account. |
DBIT | Debit | Balance representing the sum of all debit entries booked to an account. |
NOTE | Noted | Balance representing the amount that a financial institution has set aside for a specific reason and which is therefore not available. 在 WalletsNet 中,NOTE 特指圈存(Reservation) |
camt.046 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | 结算行/成员机构 | WalletsNet | 查询某成员机构某结算账户的圈存 |
以下 camt.046 message sample 对应的场景为「编号-1」
xxxxxxxxxx
531{
2 "AppHdr": {
3 "Fr": {
4 "FIId": {
5 "FinInstnId": {
6 "ClrSysMmbId": {
7 "MmbId": "XXXXXXXXXXX"
8 }
9 }
10 }
11 },
12 "To": {
13 "FIId": {
14 "FinInstnId": {
15 "ClrSysMmbId": {
16 "MmbId": "WCSMHKHKXXX"
17 }
18 }
19 }
20 },
21 "BizMsgIdr": "B20210728XPAYHKHHXXXBPSP80938928869",
22 "MsgDefIdr": "camt.046.001.06",
23 "CreDt": "2021-07-28"
24 },
25 "Document": {
26 "GetRsvatn": {
27 "MsgHdr": {
28 "MsgId": "20210728XPAYHKHHXXXBWPSP16200653306",
29 "CreDtTm": "2021-07-28T17:15:03.319291+08:00"
30 },
31 "RsvatnQryDef": {
32 "RsvatnCrit": {
33 "NewCrit": {
34 "SchCrit": {
35 "AcctOwnr": {
36 "FinInstnId": {
37 "ClrSysMmbId": {
38 "MmbId": "XXXXXXXXXXX" // 查询条件:成员机构的 PID
39 }
40 }
41 },
42 "AcctId": {
43 "Othr": {
44 "Id": "xxxxx" // 查询条件:成员机构的结算账户ID
45 }
46 }
47 }
48 }
49 }
50 }
51 }
52 }
53}
camt.047 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | WalletsNet | 结算行/成员机构 | 返回某成员机构某结算账户上的的圈存 |
以下 camt.047 message sample 对应的场景为「编号-1」
xxxxxxxxxx
701{
2 "AppHdr": {
3 "Fr": {
4 "FIId": {
5 "FinInstnId": {
6 "ClrSysMmbId": {
7 "MmbId": "WCSMHKHKXXX"
8 }
9 }
10 }
11 },
12 "To": {
13 "FIId": {
14 "FinInstnId": {
15 "ClrSysMmbId": {
16 "MmbId": "XXXXXXXXXXX"
17 }
18 }
19 }
20 },
21 "BizMsgIdr": "B20210728WCSMHKHKXXXBPSP51063013095",
22 "MsgDefIdr": "camt.047.001.07",
23 "CreDt": "2021-07-28"
24 },
25 "Document": {
26 "RtrRsvatn": {
27 "MsgHdr": {
28 "MsgId": "B20210728WCSMHKHKXXXBPSP51063013095",
29 "CreDtTm": "2021-07-28T17:15:03.378569+08:00",
30 "OrgnlBizQry": { // 圈存查询请求报文的信息
31 "MsgId": "B20210728XPAYHKHHXXXBPSP80938928869",
32 "MsgNmId": "camt.046.001.06"
33 }
34 },
35 "RptOrErr": {
36 "BizRpt": {
37 "CurRsvatn": {
38 "RsvatnId": {
39 "Tp": {
40 "Cd": "CARE" // code 的定义见下表
41 },
42 "AcctOwnr": {
43 "FinInstnId": {
44 "ClrSysMmbId": {
45 "MmbId": "XXXXXXXXXXX" // 结算账户归属的成员机构 PID
46 }
47 }
48 },
49 "AcctId": {
50 "Othr": {
51 "Id": "xxxx" // 结算账户 ID
52 }
53 }
54 },
55 "RsvatnOrErr": {
56 "Rsvatn": {
57 "Amt": {
58 "AmtWthCcy": {
59 "Ccy": "HKD", // 累计圈存的币种
60 "Amt": "53.0" // 累计圈存的金额
61 }
62 }
63 }
64 }
65 }
66 }
67 }
68 }
69 }
70}
目前 WalletsNet 只用到了 CARE,表示圈存的目的是为了提现
Code | Code Name | ISO Description |
---|---|---|
BLKD | Blocked | Amount blocked or frozen due to external circumstances such as a court order, death of beneficiary or account owner, or bankruptcy. |
CARE | CashReservation | Amount set aside by a participant to reserve liquidity from its own account, exclusively or executing cash withdrawals. |
HPAR | HighlyUrgentPaymentReservation | Amount set aside by a participant to reserve liquidity from its own account, exclusively for executing highly urgent payments. |
NSSR | NetSSSReservation | Amount set aside by a participant to reserve liquidity from its own account, exclusively for the settlement of the multilateral cash balance stemming from the Net Security Settlement System. |
THRE | ThresholdForInvestment | Amount above which funds will be destined for investment. |
UPAR | UrgentPaymentReservation | Amount set aside by a participant to reserve liquidity from its own account, exclusively for executing critical payments called urgent payments. |
camt.103 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | 结算行/成员机构 | WalletsNet | 在某成员机构的某结算账户上创建圈存 |
以下 camt.103 message sample 对应的场景为「编号-1」
xxxxxxxxxx
611{
2 "AppHdr": {
3 "Fr": {
4 "FIId": {
5 "FinInstnId": {
6 "ClrSysMmbId": {
7 "MmbId": "XXXXXXXXXXX"
8 }
9 }
10 }
11 },
12 "To": {
13 "FIId": {
14 "FinInstnId": {
15 "ClrSysMmbId": {
16 "MmbId": "WCSMHKHKXXX"
17 }
18 }
19 }
20 },
21 "BizMsgIdr": "B20210728ZRMTHKHHXXXBPSP24526944985",
22 "MsgDefIdr": "camt.103.001.02",
23 "CreDt": "2021-07-28"
24 },
25 "Document": {
26 "CretRsvatn": {
27 "MsgHdr": {
28 "MsgId": "20210728ZRMTHKHHXXXBWPSP83558210608",
29 "CreDtTm": "2021-07-28T17:15:00.771116+08:00"
30 },
31 "RsvatnId": {
32 "RsvatnId": "20210728ZRMTHKHHXXXAWPSP76889065097", // 圈存ID,将来用此ID操作圈存,如删除、变更
33 "SysId": {
34 "MktInfrstrctrId": {
35 "Cd": "WNET" // 固定值
36 }
37 },
38 "Tp": {
39 "Cd": "CARE" // 圈存类型代码,具体请见 camt.047 部分对代码的解释
40 },
41 "AcctOwnr": {
42 "FinInstnId": {
43 "ClrSysMmbId": {
44 "MmbId": "XXXXXXXXXXX" // 成员机构 PID
45 }
46 }
47 },
48 "AcctId": {
49 "Othr": {
50 "Id": "xxxx", // 结算账户ID
51 "Issr": "XXBank" // 结算账户开户行
52 }
53 }
54 },
55 "ValSet": {
56 "StartDtTm": "2021-07-28T17:15:00.771137+08:00",
57 "Amt": "733" // 需要圈存的金额
58 }
59 }
60 }
61}
camt.049 报文使用场景:
编号 | 发出方 | 收到方 | 备注 |
---|---|---|---|
1 | 结算行/成员机构 | WalletsNet | 删除某成员机构的某结算账户上的某圈存 |
以下 camt.049 message sample 对应的场景为「编号-1」
xxxxxxxxxx
571{
2 "AppHdr": {
3 "Fr": {
4 "FIId": {
5 "FinInstnId": {
6 "ClrSysMmbId": {
7 "MmbId": "XXXXXXXXXXX"
8 }
9 }
10 }
11 },
12 "To": {
13 "FIId": {
14 "FinInstnId": {
15 "ClrSysMmbId": {
16 "MmbId": "WCSMHKHKXXX"
17 }
18 }
19 }
20 },
21 "BizMsgIdr": "B20210728XPAYHKHHXXXBPSP80016400900",
22 "MsgDefIdr": "camt.049.001.06",
23 "CreDt": "2021-07-28"
24 },
25 "Document": {
26 "DelRsvatn": {
27 "MsgHdr": {
28 "MsgId": "20210728XPAYHKHHXXXBWPSP43468780027",
29 "CreDtTm": "2021-07-28T17:15:08.576031+08:00"
30 },
31 "CurRsvatn": {
32 "RsvatnId": "20210728XPAYHKHHXXXAWPSP42789165160", // 创建时的圈存ID
33 "SysId": {
34 "MktInfrstrctrId": {
35 "Cd": "WNET" // 固定值
36 }
37 },
38 "Tp": {
39 "Cd": "CARE" // 圈存类型代码,具体请见 camt.047 部分对代码的解释
40 },
41 "AcctOwnr": {
42 "FinInstnId": {
43 "ClrSysMmbId": {
44 "MmbId": "XXXXXXXXXXX" // 成员机构 PID
45 }
46 }
47 },
48 "AcctId": {
49 "Othr": {
50 "Id": "xxxxx", // 结算账户ID
51 "Issr": "XXBANK" // 结算账户开户行
52 }
53 }
54 }
55 }
56 }
57}