BillingIntentResult billing.intent-result@1
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
- Version
- 1.0.0
- Owner
- billing
- Visibility
- first-party
- Status
- active
- Compatibility
- backward
- Schema
https://openvibe.network/contracts/billing/intent-result.v1.json
billing.intent-result@1: answers of billing.intent.create on OpenVibe.Billing. POST /api/v1/intents → { intent, checkout_url } (null when the provider has no hosted checkout); GET /api/v1/intents/:id → { intent }; POST /api/v1/intents/:id/capture → { result, intent } (the settlement the provider's capture produced).
Fields
| Field | Type | Required | Description | Constraints |
|---|---|---|---|---|
intent | billing.intent | yes | ||
checkout_url | string | null | |||
result | any | Capture: what applying the provider's plan did. |
Examples
From the contract's own test fixtures: valid ones validate, rejected ones must fail.
Valid: created
{
"intent": {
"id": "pi_01JAB2C3D4E5F6G7H8J9K0MNPX",
"provider": "stripe",
"provider_ref": "cs_test_a1",
"kind": "purchase",
"subject": {
"type": "user",
"id": "usr_01JAB2C3D4E5F6G7H8J9K0MNPQ"
},
"streamer": null,
"amount_cents": 999,
"fee_cents": 0,
"bits": 1000,
"route": null,
"auto_renew": 0,
"status": "created",
"settled_txn": null,
"created_at": "2026-09-25T18:00:00.000Z"
},
"checkout_url": "https://checkout.stripe.com/c/pay/cs_test_a1"
}Rejected: no-intent
{
"checkout_url": null
}Validate
const contracts = require('openvibe-contracts');
contracts.validate('billing.intent-result@1', value); // { valid, errors: [{ path, message }] }