org.hypercerts.funding.receipt
Schema Diff
+5 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 4 non-breaking changes.
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "app.certified.signature.defs#list" }
- AddedVertex AddedVertex { vertex_id: "org.hypercerts.funding.receipt:body.signatures" }
- AddedEdge AddedEdge { src: "org.hypercerts.funding.receipt:body", tgt: "org.hypercerts.funding.receipt:body.signatures", kind: "prop", name: Some("signatures") }
- AddedEdge AddedEdge { src: "org.hypercerts.funding.receipt:body.signatures", tgt: "app.certified.signature.defs#list", kind: "ref", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.certified.signature.defs#list" }AddedVertex { vertex_id: "org.hypercerts.funding.receipt:body.signatures" }
Additional Notes
- Non-breaking: AddedEdge { src: "org.hypercerts.funding.receipt:body", tgt: "org.hypercerts.funding.receipt:body.signatures", kind: "prop", name: Some("signatures") }
- Non-breaking: AddedEdge { src: "org.hypercerts.funding.receipt:body.signatures", tgt: "app.certified.signature.defs#list", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "Records a funding receipt for a payment from one user to another user. It may be recorded by the recipient, by the sender, or by a third party. The sender may remain anonymous.",
6
6
"key": "tid",
7
7
"record": {
8
8
"properties": {
9
9
"amount": {
10
10
"description": "Amount of funding received as a numeric string (e.g. '1000.50').",
11
11
"maxLength": 50,
12
12
"type": "string"
13
13
},
14
14
"createdAt": {
15
15
"description": "Client-declared timestamp when this receipt record was created.",
16
16
"format": "datetime",
17
17
"type": "string"
18
18
},
19
19
"currency": {
20
20
"description": "Currency of the payment (e.g. EUR, USD, ETH).",
21
21
"maxLength": 10,
22
22
"type": "string"
23
23
},
24
24
"for": {
25
25
"description": "Optional strong reference to the activity, project, or organization this funding relates to.",
26
26
"ref": "com.atproto.repo.strongRef",
27
27
"type": "ref"
28
28
},
29
29
"from": {
30
30
"description": "The sender of the funds (a free-text string, an account DID, or a strong reference to a record). Optional — omit to represent anonymity.",
31
31
"refs": [
32
32
"#text",
33
33
"app.certified.defs#did",
34
34
"com.atproto.repo.strongRef"
35
35
],
36
36
"type": "union"
37
37
},
38
38
"notes": {
39
39
"description": "Optional notes or additional context for this funding receipt.",
40
40
"maxLength": 500,
41
41
"type": "string"
42
42
},
43
43
"occurredAt": {
44
44
"description": "Timestamp when the payment occurred.",
45
45
"format": "datetime",
46
46
"type": "string"
47
47
},
48
48
"paymentNetwork": {
49
49
"description": "Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal).",
50
50
"maxLength": 50,
51
51
"type": "string"
52
52
},
53
53
"paymentRail": {
54
54
"description": "How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor).",
55
55
"maxLength": 50,
56
56
"type": "string"
57
57
},
58
+
"signatures": {
59
+
"description": "Optional cryptographic signatures attesting to this record's content.",
60
+
"ref": "app.certified.signature.defs#list",
61
+
"type": "ref"
62
+
},
58
63
"to": {
59
64
"description": "The recipient of the funds (a free-text string, an account DID, or a strong reference to a record).",
60
65
"refs": [
61
66
"#text",
62
67
"app.certified.defs#did",
63
68
"com.atproto.repo.strongRef"
64
69
],
65
70
"type": "union"
66
71
},
67
72
"transactionId": {
68
73
"description": "Identifier of the underlying payment transaction (e.g. bank reference, onchain transaction hash, or processor-specific ID). Use paymentNetwork to specify the network where applicable.",
69
74
"maxLength": 256,
70
75
"type": "string"
71
76
}
72
77
},
73
78
"required": [
74
79
"to",
75
80
"amount",
76
81
"currency",
77
82
"createdAt"
78
83
],
79
84
"type": "object"
80
85
},
81
86
"type": "record"
82
87
},
83
88
"text": {
84
89
"description": "A free-text string value (e.g. a display name, wallet address, or other identifier).",
85
90
"properties": {
86
91
"value": {
87
92
"description": "The string value.",
88
93
"maxLength": 2048,
89
94
"type": "string"
90
95
}
91
96
},
92
97
"required": [
93
98
"value"
94
99
],
95
100
"type": "object"
96
101
}
97
102
},
98
103
"id": "org.hypercerts.funding.receipt",
99
104
"lexicon": 1
100
105
}