Settlement windows
SILOC settles on a deferred multilateral net basis, on business days. Núclea defines the daily settlement windows for boleto and card products. Lerian SILOC records and applies the transfer-order messages that open, advance, reconcile, and close its cycle state. It does not calculate the monetary net position.
Regulated certificates
You register the gateway’s certificates as a public certificate plus an external custody reference. The service holds no private key. When you register a certificate, the service parses its subject, serial, and validity window. You revoke the certificate over the API when you retire it. A credential-disabled state halts the gateway. A disabled or revoked certificate fail-closes the connection instead of running on invalid credentials.
Contingency and recovery
The SFN ingestion path has defined outcomes under failure. It does not promise to retain every frame. It also does not promise that every operation has a single end-to-end effect:
- An undecodable envelope, a decoded message without a nonblank
BCMSG.NUOp, or an unsupported (CodProdt,CodMsg) pair fails closed to an operator exception. The service does not supportLDL0020andLDL0006, and never relays them as settlement funding. - SLC relay is at-least-once. For a successfully decoded SLC funding frame, the service checks durable deduplication by
BCMSG.NUOpbefore relay and writes the processed-message record only after relay succeeds. This is not message-ID-only deduplication and is not an unconditional end-to-end exactly-once guarantee. - Parked and refused messages.
GET /api/v1/siloc/dlq/deferredlists the inbound messages parked for replay. Filter withstatus=SEMANTIC_REJECTEDfor the messages the service refused on their content and never applies. - Quarantined frames.
GET /api/v1/siloc/dlq/quarantinelists the frames moved to the backout queue. After you deal with the copy on that queue, resolve the frame. The service does not feed it again, and it clearsINBOUND_QUARANTINEDwhen no unresolved frame remains. - Relay failures.
GET /api/v1/siloc/dlq/relay-failureslists the funding frames parked during a relay outage. Replay a frame after the relay recovers. A replay of aBCMSG.NUOpalready relayed resolves the frame without a second relay.
Reconciliation
Reconciliation runs at several grains:
- Processed-message dedup ledger. For successfully decoded SLC funding frames with a nonblank NUOp, the ledger uses
BCMSG.NUOpand records it only after a successful relay. Undecoded and unsupported messages do not receive a processed-message record. - Relay audit feed. The relay feed lists the funding messages that the service relayed to Lerian SLC.
- Per-participant status and status history. Each participant carries its operational status per product. The service records each status change as a status-event history entry.
- OT cycle reconciliation. With
RECONCILE_ENABLED=true, the service compares each cycle with its final ROC and settles a cycle whose ROC matches its settled instruction.
Monitoring, alerts, and audit
Lerian SILOC exposes an operator surface for watching OT settlement cycles, connection and relay health, outbound requests, and participant status. The cycle and reconciliation surfaces report recorded state and reconciliation sets. They do not calculate aggregate position figures on read.
- OT settlement cycles.
GET /api/v1/siloc/cyclesandGET /api/v1/siloc/cycles/{cycleId}list and inspect cycles.GET /api/v1/siloc/cycles/{cycleId}/reconciliationreturns the reconciliation result, andGET /api/v1/siloc/cycles/{cycleId}/recalculationsreturns the cycle’s recálculo round chain, including each round’s complement/deposit window closure. - Settlement instructions.
GET /api/v1/siloc/settlement-instructionsandGET /api/v1/siloc/settlement-instructions/{instructionId}return each cycle’s obligation legs.POST /api/v1/siloc/rocsingests a semantic ROC revision. It accepts the rail’s semantic ROC format, not a Núclea ROC file, and a revision supersedes prior values for the cycle. - Outbound requests.
GET /api/v1/siloc/outbound/messageslists the requests the institution sent, newest first. Filter bystatus: the service cannot deliver aFAILEDrequest as stored, and that request needs an operator. AREFUSEDrequest came back from Núclea with an error. - Operational alerts.
GET /api/v1/siloc/alertsreturns an active-only, keyset-paged feed. PassactiveOnly=falseto include deactivated alerts as history. The alert types are:- Settlement cycle:
WINDOW_CLOSING(a deposit/complement deadline approaches),RECALCULATION(a cycle is in a recálculo round), andSCHEDULE_CHANGE(an operator recorded a contingency schedule announcement). - Connection and workers:
CONNECTION_DOWN,RELAY_DOWN,CERTIFICATE_EXPIRY,OUTBOUND_DISPATCHER_DOWN,OT_REPLAY_DOWN, andXSD_VALIDATOR_DOWN. - Câmara notices:
CAMARA_CLOSED,CAMARA_INTERRUPTED,COLLATERAL_REQUIRED,COLLATERAL_SUBSTITUTION, andELIGIBLE_ASSETS_CHANGED. - Inbound messages and requests:
INBOUND_QUARANTINED,INBOUND_SEMANTIC_REJECTED,FOREIGN_TENANT_COMMAND, andUNANSWERED_REQUEST.
- Settlement cycle:
- Alert acknowledgement.
POST /api/v1/siloc/alerts/{id}/acknowledgerecords that an operator saw the alert, with an optional note of up to 500 characters, and moves the alert to history. It does not end the condition. When the service checks an alert on a schedule, such asRELAY_DOWN, it raises the alert again while its condition holds. An alert that is already inactive answers 409.INBOUND_SEMANTIC_REJECTEDandFOREIGN_TENANT_COMMANDclose only by acknowledgement. A condition alert, such asRELAY_DOWNorRECALCULATION, also clears when its condition resolves. For example, a cycle that settles clears itsRECALCULATIONalert on the settle path. - Homologation scenarios.
GET /api/v1/siloc/homologation/scenarioslists the certification scenarios and the status of each. Running a scenario checks its pass criterion against the rail’s own state and records the evidence. It sends nothing to Núclea. - Audit trail.
GET /api/v1/siloc/audit-recordsreturns a paged, verbatim read of the audit trail, for example to export the record of an operator action or a participant status change. Boundsfromandtoare RFC3339 instants (the service rejects date-only values).
Schedule and contingency
The canonical OT window grid and the business-day calendar are compiled artifacts on the service. The service projects verbatim the schedule grids and session notices that Núclea sends.
- Calendar and windows.
GET /api/v1/siloc/schedule/calendarreturns the business-day calendar, andGET /api/v1/siloc/schedule/windowsreturns the compiled canonical OT window grid. The grid is a static artifact, not a per-day read, and the service returns it even when the datastore is down. - Câmara grids and session.
GET /api/v1/siloc/schedule/gridsreturns the schedule grids Núclea sent, from its change advices and from the answers to the institution’s schedule queries.GET /api/v1/siloc/schedule/camara-sessionreturns the latest opening, closing, interruption, and resumption notices. The activeCAMARA_CLOSEDorCAMARA_INTERRUPTEDalert tells you whether the câmara is closed or interrupted. - Contingency schedule changes.
POST /api/v1/siloc/schedule/changesrecords a contingency announcement the operator received out of band from Núclea. The body carriesreason(≤500 chars),origin(the announcing channel or upstream reference, ≤256 chars),effectiveAt, the announced RFC 3339 instant the change takes effect, and an optionalwindowSeqnaming the affected canonical window. WithwindowSeq,effectiveAtbecomes that window’s deposit close forWINDOW_CLOSING. The record is append-only: a later announcement never rewrites an earlier one. The newest announcement does become the single activeSCHEDULE_CHANGEalert. Recording one clears the prior alert and raises a new one whose deadline iseffectiveAtverbatim.GET /api/v1/siloc/schedule/changesreturns the recorded changes, newest first.

