org.hypercerts.funding.receipt
Schema Diff
+7 -1
Compatibility Analysis
Breaking Changes Detected
6 breaking changes, 0 non-breaking changes.
Breaking Changes (6)
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.to", sort: "maxLength", value: "2048" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.paymentNetwork", sort: "maxLength", value: "50" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.paymentRail", sort: "maxLength", value: "50" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.transactionId", sort: "maxLength", value: "256" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.currency", sort: "maxLength", value: "10" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.amount", sort: "maxLength", value: "50" }
Migration Guidance
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.paymentRail", sort: "maxLength", value: "50" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.to", sort: "maxLength", value: "2048" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.transactionId", sort: "maxLength", value: "256" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.amount", sort: "maxLength", value: "50" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.currency", sort: "maxLength", value: "10" }
- ConstraintAdded ConstraintAdded { vertex_id: "org.hypercerts.funding.receipt:body.paymentNetwork", sort: "maxLength", value: "50" }
1
1
{
2
2
"id": "org.hypercerts.funding.receipt",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"from",
11
11
"to",
12
12
"amount",
13
13
"currency",
14
14
"createdAt"
15
15
],
16
16
"properties": {
17
17
"to": {
18
18
"type": "string",
19
+
"maxLength": 2048,
19
20
"description": "The recipient of the funds. Can be identified by DID or a clear-text name."
20
21
},
21
22
"for": {
22
23
"type": "string",
23
24
"format": "at-uri",
24
25
"description": "Optional reference to the activity, project, or organization this funding relates to."
25
26
},
26
27
"from": {
27
28
"ref": "app.certified.defs#did",
28
29
"type": "ref",
29
30
"description": "DID of the sender who transferred the funds. Leave empty if sender wants to stay anonymous."
30
31
},
31
32
"notes": {
32
33
"type": "string",
33
34
"maxLength": 500,
34
35
"description": "Optional notes or additional context for this funding receipt."
35
36
},
36
37
"amount": {
37
38
"type": "string",
38
-
"description": "Amount of funding received."
39
+
"maxLength": 50,
40
+
"description": "Amount of funding received as a numeric string (e.g. '1000.50')."
39
41
},
40
42
"currency": {
41
43
"type": "string",
44
+
"maxLength": 10,
42
45
"description": "Currency of the payment (e.g. EUR, USD, ETH)."
43
46
},
44
47
"createdAt": {
45
48
"type": "string",
46
49
"format": "datetime",
47
50
"description": "Client-declared timestamp when this receipt record was created."
48
51
},
49
52
"occurredAt": {
50
53
"type": "string",
51
54
"format": "datetime",
52
55
"description": "Timestamp when the payment occurred."
53
56
},
54
57
"paymentRail": {
55
58
"type": "string",
59
+
"maxLength": 50,
56
60
"description": "How the funds were transferred (e.g. bank_transfer, credit_card, onchain, cash, check, payment_processor)."
57
61
},
58
62
"transactionId": {
59
63
"type": "string",
64
+
"maxLength": 256,
60
65
"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."
61
66
},
62
67
"paymentNetwork": {
63
68
"type": "string",
69
+
"maxLength": 50,
64
70
"description": "Optional network within the payment rail (e.g. arbitrum, ethereum, sepa, visa, paypal)."
65
71
}
66
72
}
67
73
},
68
74
"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."
69
75
}
70
76
},
71
77
"$type": "com.atproto.lexicon.schema",
72
78
"lexicon": 1
73
79
}