API REFERENCE
Credits, billing & renewals
Predictable rental terms with explicit payment state.
Prepaid credits
The service credits the account only after validating a matching confirmed provider payment. A successful Checkout creation or return-page visit is not payment evidence. Pending and uncertain states must be reconciled before credit is issued.
Top-up request
POST /api/v1/topups accepts amount_minor and requires a signed-in session with billing:write, plus an Idempotency-Key. Ordinary API keys cannot top up an account. Provider and currency checks run on settlement.
Renewals
30-day terms renew from prepaid balance at the saved rental price; annual terms advance by a calendar year. The worker preserves the paid boundary and prevents duplicate debits. Insufficient credit or a stopped renewal queues suspension rather than claiming physical access has already ended.
Refunds and webhooks
Refund creation is restricted to an MFA-authenticated administrator. Stripe webhooks require a verified signature and matching configured provider identity. Duplicate webhook deliveries must not add duplicate credit or repeat a refund.
Current release boundary
Live payments are disabled. Previous sandbox checks verified Checkout creation and an unpaid state without granting credit. Full paid sandbox settlement, replay, refund and physical access lifecycle checks remain necessary before enabling a real charge.