network.attested.payment.recurring
A recurring payment commitment. Immutable once created — supporters cancel and create new subscriptions to change terms. Bills on anniversary dates with automatic retry on failure.
Details · record, key tid
| Kind | record |
|---|---|
| Record key | tid |
| Authority | payment.attested.network |
| Indexed |
Checks
Validunlimited-stringdefs.main.record.properties.unitNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "A recurring payment commitment. Immutable once created — supporters cancel and create new subscriptions to change terms. Bills on anniversary dates with automatic retry on failure.",
"key": "tid",
"record": {
"properties": {
"amount": {
"description": "Amount per billing period in the smallest unit of the given currency. Applications typically enforce a monthly-equivalent range of 500–25000.",
"minimum": 1,
"type": "integer"
},
"createdAt": {
"description": "Timestamp of initial subscription creation.",
"format": "datetime",
"type": "string"
},
"currency": {
"description": "ISO 4217 currency code (e.g. USD, EUR).",
"maxLength": 3,
"minLength": 3,
"type": "string"
},
"entitlements": {
"description": "Optional list of strong references to records representing goods or services the payer is entitled to as a result of this payment. Referenced records may use any lexicon; their schemas are not defined by this spec.",
"items": {
"ref": "com.atproto.repo.strongRef",
"type": "ref"
},
"type": "array"
},
"frequency": {
"default": 1,
"description": "Billing frequency multiplier applied to the unit (e.g. unit=monthly, frequency=3 bills every three months).",
"minimum": 1,
"type": "integer"
},
"signatures": {
"description": "Attestation entries. Each entry is a com.atproto.repo.strongRef pointing to a network.attested.payment.proof record in a creator or broker repository.",
"items": {
"ref": "com.atproto.repo.strongRef",
"type": "ref"
},
"type": "array"
},
"subject": {
"description": "DID of the creator receiving payment.",
"format": "did",
"type": "string"
},
"txnid": {
"description": "Unique transaction identifier for deduplication. Typically a ULID or UUID assigned by the payment broker.",
"maxLength": 64,
"type": "string"
},
"unit": {
"description": "Billing period.",
"knownValues": [
"monthly",
"quarterly",
"semiannual",
"yearly"
],
"type": "string"
}
},
"required": [
"subject",
"amount",
"currency",
"unit",
"txnid",
"createdAt"
],
"type": "object"
},
"type": "record"
}
},
"id": "network.attested.payment.recurring",
"lexicon": 1
}