<!-- x-generated: Generated by the Hyperscale artifact pipeline; do not edit by hand -->

# Parametric Travel Insurance

> The frozen Parametric Travel Insurance Product Build, version 1.

- Composition id: `parametric_travel_insurance`
- Version: 1
- Digest: `cd65c9bf0597b36e4b664dae356041b0787541b060de71f6c79d4f3e1ea7cd10`
- Currencies: `SAR`
- Webhook events: 26

## Instruments

| Instrument | Title | States | Actions |
| --- | --- | --- | --- |
| [`claim`](../instruments/claim.md) | Claim | 5 | approve, assess, create, pay |
| [`policy`](../instruments/policy.md) | Policy | 6 | bind, create |

## Journeys

### Withdraw a policy quote

- Journey id: `withdraw_policy_quote`
- Steps: 7

1. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
2. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- customer.customerAccessId
3. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- customer.customerId
4. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- customer.customerId
5. `subject_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/subjects`, scopes product:write, idempotency required, receipt yes
   - Body: attributes, declaredValue, kind, kindVersion, productId
   - Path: none
   - Query: none
   - Expect: subjectId, tenantId, productId, kind, kindVersion, attributes, declaredValue, createdAt, metadata
   - Bindings: none
6. `policy_create`
   - Actor: product
   - Action: `policy.create`
   - Route: `POST /v1/policies`, scopes policy:write, idempotency required, receipt yes
   - Body: coverageLimit, currency, expiresAt, insurerAccountId, perilSchedule, policyholderAccountId, premiumAmount, productId, startsAt, subject, termsSummary
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: insurerAccountId <- insurer_account.accountId, policyholderAccountId <- holder_account.accountId, subject <- subject.subjectId
7. `policy_withdraw`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/policies/{policyId}/withdraw`, scopes policy:write, idempotency required, receipt yes
   - Body: none
   - Path: policyId
   - Query: none
   - Expect: none
   - Bindings: policyId <- policy.policyId

### Assess and deny a claim

- Journey id: `claim_denied`
- Steps: 14

1. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
2. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- holder_customer.customerAccessId
3. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- holder_customer.customerId
4. `sandbox_account_fund`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/account-funding`, scopes transfer:write, idempotency required, receipt yes
   - Body: amount, currency, destinationAccountId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: destinationAccountId <- holder.accountId
5. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
6. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- insurer_customer.customerAccessId
7. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- insurer_customer.customerId
8. `subject_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/subjects`, scopes product:write, idempotency required, receipt yes
   - Body: attributes, declaredValue, kind, kindVersion, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
9. `policy_create`
   - Actor: product
   - Action: `policy.create`
   - Route: `POST /v1/policies`, scopes policy:write, idempotency required, receipt yes
   - Body: coverageLimit, currency, expiresAt, insurerAccountId, perilSchedule, policyholderAccountId, premiumAmount, productId, startsAt, subject, termsSummary
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: insurerAccountId <- insurer.accountId, policyholderAccountId <- holder.accountId, subject <- subject.subjectId
10. `policy_bind`
   - Actor: product
   - Action: `policy.bind`
   - Route: `POST /v1/policies/{policyId}/bind`, scopes policy:write, transfer:write, idempotency required, receipt yes
   - Body: none
   - Path: policyId
   - Query: none
   - Expect: none
   - Bindings: policyId <- policy.policyId
11. `sandbox_platform_fire`
   - Actor: platform
   - Sandbox trigger: The platform fires `policy.activate` in normal lifecycle processing; sandbox fires it now.
   - Action: platform lifecycle trigger
   - Route: `POST /v1/sandbox/platform/fire`, scopes no scopes required, idempotency required, receipt yes
   - Body: input, operation
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: input.policyId <- policy.policyId
12. `claim_create`
   - Actor: product
   - Action: `claim.create`
   - Route: `POST /v1/claims`, scopes claim:write, idempotency required, receipt yes
   - Body: claimAmount, claimantAccountId, currency, evidenceSummary, insurerAccountId, occurredAt, peril, policyId, productId, subject
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: claimantAccountId <- holder.accountId, insurerAccountId <- insurer.accountId, policyId <- policy.policyId, subject <- subject.subjectId
13. `claim_assess`
   - Actor: product
   - Action: `claim.assess`
   - Route: `POST /v1/claims/{claimId}/assess`, scopes claim:write, idempotency required, receipt yes
   - Body: none
   - Path: claimId
   - Query: none
   - Expect: none
   - Bindings: claimId <- claim.claimId
14. `claim_deny`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/claims/{claimId}/deny`, scopes claim:write, idempotency required, receipt yes
   - Body: none
   - Path: claimId
   - Query: none
   - Expect: none
   - Bindings: claimId <- claim.claimId

### Trigger a parametric claim

- Journey id: `parametric_policy_claim`
- Steps: 16

1. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
2. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- holder.customerAccessId
3. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- holder.customerId
4. `sandbox_account_fund`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/account-funding`, scopes transfer:write, idempotency required, receipt yes
   - Body: amount, currency, destinationAccountId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: destinationAccountId <- holder_account.accountId
5. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
6. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- counterparty.customerAccessId
7. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- counterparty.customerId
8. `subject_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/subjects`, scopes product:write, idempotency required, receipt yes
   - Body: attributes, declaredValue, kind, kindVersion, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
9. `sandbox_account_fund`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/account-funding`, scopes transfer:write, idempotency required, receipt yes
   - Body: amount, currency, destinationAccountId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: destinationAccountId <- counterparty_account.accountId
10. `policy_create`
   - Actor: product
   - Action: `policy.create`
   - Route: `POST /v1/policies`, scopes policy:write, idempotency required, receipt yes
   - Body: coverageLimit, currency, expiresAt, insurerAccountId, perilSchedule, policyholderAccountId, premiumAmount, productId, startsAt, subject, termsSummary
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: policyholderAccountId <- holder_account.accountId, insurerAccountId <- counterparty_account.accountId, subject <- subject.subjectId
11. `policy_bind`
   - Actor: product
   - Action: `policy.bind`
   - Route: `POST /v1/policies/{policyId}/bind`, scopes policy:write, transfer:write, idempotency required, receipt yes
   - Body: none
   - Path: policyId
   - Query: none
   - Expect: none
   - Bindings: policyId <- policy.policyId
12. `sandbox_platform_fire`
   - Actor: platform
   - Sandbox trigger: The platform fires `policy.activate` in normal lifecycle processing; sandbox fires it now.
   - Action: platform lifecycle trigger
   - Route: `POST /v1/sandbox/platform/fire`, scopes no scopes required, idempotency required, receipt yes
   - Body: input, operation
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: input.policyId <- policy.policyId
13. `claim_create`
   - Actor: product
   - Action: `claim.create`
   - Route: `POST /v1/claims`, scopes claim:write, idempotency required, receipt yes
   - Body: claimAmount, claimantAccountId, currency, evidenceSummary, insurerAccountId, occurredAt, peril, policyId, productId, subject
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: policyId <- policy.policyId, claimantAccountId <- holder_account.accountId, insurerAccountId <- counterparty_account.accountId, subject <- subject.subjectId
14. `claim_assess`
   - Actor: product
   - Action: `claim.assess`
   - Route: `POST /v1/claims/{claimId}/assess`, scopes claim:write, idempotency required, receipt yes
   - Body: none
   - Path: claimId
   - Query: none
   - Expect: none
   - Bindings: claimId <- claim.claimId
15. `claim_approve`
   - Actor: product
   - Action: `claim.approve`
   - Route: `POST /v1/claims/{claimId}/approve`, scopes claim:write, transfer:write, idempotency required, receipt yes
   - Body: none
   - Path: claimId
   - Query: none
   - Expect: none
   - Bindings: claimId <- claim.claimId
16. `claim_pay`
   - Actor: product
   - Action: `claim.pay`
   - Route: `POST /v1/claims/{claimId}/pay`, scopes claim:write, transfer:write, idempotency required, receipt yes
   - Body: none
   - Path: claimId
   - Query: none
   - Expect: none
   - Bindings: claimId <- claim.claimId

### Register a covered trip

- Journey id: `parametric_covered_trip`
- Steps: 1

1. `subject_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/subjects`, scopes product:write, idempotency required, receipt yes
   - Body: attributes, declaredValue, kind, kindVersion, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none

### Onboard a policyholder

- Journey id: `parametric_policyholder_onboarding`
- Steps: 2

1. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
2. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- policyholder.customerAccessId

### Move payout funds

- Journey id: `parametric_payout_movement`
- Steps: 9

1. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
2. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- payer.customerAccessId
3. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- payer.customerId
4. `sandbox_account_fund`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/account-funding`, scopes transfer:write, idempotency required, receipt yes
   - Body: amount, currency, destinationAccountId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: destinationAccountId <- source.accountId
5. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
6. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- payee.customerAccessId
7. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- payee.customerId
8. `internal_transfer_reserve`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/internal-transfers/reserve`, scopes transfer:write, idempotency required, receipt yes
   - Body: amount, currency, destinationAccountId, memo, sourceAccountId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: sourceAccountId <- source.accountId, destinationAccountId <- destination.accountId
9. `internal_transfer_post`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/internal-transfers/{transferId}/post`, scopes transfer:write, idempotency required, receipt yes
   - Body: none
   - Path: transferId
   - Query: none
   - Expect: none
   - Bindings: transferId <- transfer.transferId

### Void a payout hold

- Journey id: `parametric_payout_hold_cancel`
- Steps: 9

1. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
2. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- payer.customerAccessId
3. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- payer.customerId
4. `sandbox_account_fund`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/account-funding`, scopes transfer:write, idempotency required, receipt yes
   - Body: amount, currency, destinationAccountId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: destinationAccountId <- source.accountId
5. `sandbox_customer_onboard`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-onboarding`, scopes customer:write, idempotency required, receipt yes
   - Body: displayName, productId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: none
6. `sandbox_customer_access_activate`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/sandbox/customer-access/{customerAccessId}/activate`, scopes customer:write, idempotency required, receipt yes
   - Body: none
   - Path: customerAccessId
   - Query: none
   - Expect: none
   - Bindings: customerAccessId <- payee.customerAccessId
7. `account_create`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/accounts`, scopes account:write, idempotency required, receipt yes
   - Body: currency, owner, role
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: owner.id <- payee.customerId
8. `internal_transfer_reserve`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/internal-transfers/reserve`, scopes transfer:write, idempotency required, receipt yes
   - Body: amount, currency, destinationAccountId, memo, sourceAccountId
   - Path: none
   - Query: none
   - Expect: none
   - Bindings: sourceAccountId <- source.accountId, destinationAccountId <- destination.accountId
9. `internal_transfer_void`
   - Actor: product
   - Action: platform write
   - Route: `POST /v1/internal-transfers/{transferId}/void`, scopes transfer:write, idempotency required, receipt yes
   - Body: reason
   - Path: transferId
   - Query: none
   - Expect: none
   - Bindings: transferId <- transfer.transferId

## Cost

Cost table version 2026-09-02.1. Flat amounts are multiplied by the action count; basis points price the meter's moved amount, which an action count does not determine.

| Instrument | Action | Effect | Meter | Flat per action | Rate on meter | 1,000 per month | 100,000 per month | 10,000,000 per month |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| `claim` | `approve` | `decides.insurance_claims_adjuster` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `claim` | `approve` | `holds.reserve` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `claim` | `approve` | `moves.transfer.internal` | `transfer.internal.volume_sar` | 0.75 SAR | 11 bps | 750.00 SAR | 75,000.00 SAR | 7,500,000.00 SAR |
| `claim` | `attest` | `decides.tenant_port` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `claim` | `attest` | `holds.reserve` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `claim` | `attest` | `moves.transfer.internal` | `transfer.internal.volume_sar` | 0.75 SAR | 11 bps | 750.00 SAR | 75,000.00 SAR | 7,500,000.00 SAR |
| `claim` | `create` | `reads.requires_refs` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `claim` | `pay` | `moves.transfer.internal` | `transfer.internal.volume_sar` | 0.75 SAR | 11 bps | 750.00 SAR | 75,000.00 SAR | 7,500,000.00 SAR |
| `claim` | `reverse` | `moves.transfer.internal` | `transfer.internal.volume_sar` | 0.75 SAR | 11 bps | 750.00 SAR | 75,000.00 SAR | 7,500,000.00 SAR |
| `policy` | `activate` | `moves.transfer.internal` | `transfer.internal.volume_sar` | 0.75 SAR | 11 bps | 750.00 SAR | 75,000.00 SAR | 7,500,000.00 SAR |
| `policy` | `activate` | `schedules.due` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `policy` | `bind` | `decides.insurance_carrier` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `policy` | `bind` | `moves.transfer.internal` | `transfer.internal.volume_sar` | 0.75 SAR | 11 bps | 750.00 SAR | 75,000.00 SAR | 7,500,000.00 SAR |
| `policy` | `cancel` | `moves.transfer.internal` | `transfer.internal.volume_sar` | 0.75 SAR | 11 bps | 750.00 SAR | 75,000.00 SAR | 7,500,000.00 SAR |
| `policy` | `create` | `reads.requires_refs` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `policy` | `endorse` | `decides.insurance_carrier` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `policy` | `expire` | `schedules.due` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `policy` | `preview` | `holds.quote` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| `policy` | `preview` | `schedules.expiry` | `instrument.event.count` | 0.00 SAR | 0 bps | 0.00 SAR | 0.00 SAR | 0.00 SAR |
| **Total flat** | | | | | | **5,250.00 SAR** | **525,000.00 SAR** | **52,500,000.00 SAR** |
