# Interface: PlandalfConfig

Defined in: [packages/sdk/src/core/types.ts:55](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L55)

## Properties

### apiBase?

> `optional` **apiBase?**: `string`

Defined in: [packages/sdk/src/core/types.ts:56](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L56)

***

### autoScan?

> `optional` **autoScan?**: `boolean`

Defined in: [packages/sdk/src/core/types.ts:66](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L66)

***

### cdnBase?

> `optional` **cdnBase?**: `string`

Defined in: [packages/sdk/src/core/types.ts:57](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L57)

***

### continuity?

> `optional` **continuity?**: [`ContinuityScope`](https://plandalf.com/docs/packages/sdk/referenced-types/ContinuityScope)

Defined in: [packages/sdk/src/core/types.ts:71](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L71)

Session continuity default. Off by default — every present() mints a new session.
Per-call overrides live on FlowOpenOptions.

***

### countdownBase?

> `optional` **countdownBase?**: `string`

Defined in: [packages/sdk/src/core/types.ts:58](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L58)

***

### debug?

> `optional` **debug?**: `boolean`

Defined in: [packages/sdk/src/core/types.ts:65](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L65)

***

### metadata?

> `optional` **metadata?**: `Record`\<`string`, [`MetadataValue`](https://plandalf.com/docs/packages/sdk/referenced-types/MetadataValue)\>

Defined in: [packages/sdk/src/core/types.ts:99](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L99)

Stripe-bound pass-through. Forwarded to the Stripe Customer's metadata
field at customer-creation time so external affiliate trackers (Tolt,
Rewardful, FirstPromoter, …) can attribute via `Customer.metadata.<key>`
when email matching is unreliable. Function values are resolved lazily
at session-create time so `() => window.tolt_referral` reads the
up-to-date value even if the tracker's async script populated it after
page load. Per-call values on FlowOpenOptions override matching keys here.
See specs/sdk-checkout-config.md.

***

### properties?

> `optional` **properties?**: `Record`\<`string`, `unknown`\>

Defined in: [packages/sdk/src/core/types.ts:87](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L87)

Form-field prefill defaults. Merchant-supplied; rendered into checkout
inputs (e.g. `first_name`, `email`, custom collected fields). Per-call
values on FlowOpenOptions override matching keys here.
See specs/sdk-checkout-config.md.

***

### ref?

> `optional` **ref?**: `string` \| `string`[]

Defined in: [packages/sdk/src/core/types.ts:79](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L79)

Merchant alias(es) for the visitor-identifier URL param. When the host
page emits the visitor's identity under a non-canonical name (Divi forms
locked to `email`, etc.), list those names here. Tried after `pf_ref`
and `ref`. Set via `data-config-ref="…"` on the SDK <script> tag, or via
`plandalf('configure', { ref: … })`. See specs/sdk-url-config.md.

***

### user?

> `optional` **user?**: `string`

Defined in: [packages/sdk/src/core/types.ts:64](https://github.com/plandalf/numi/blob/fc6f42b5ade3d63b71623934838a6509f17203e2/packages/sdk/src/core/types.ts#L64)

Customer JWT (HS256, signed with one of the org's API keys, `kid` header set to the
ApiKey id). Set globally at init OR via `plandalf.setUser(jwt)`. Per-call override
lives on `FlowOpenOptions.user`. The value is the raw JWT string, not a user object.

Source: https://plandalf.com/docs/packages/sdk/interfaces/PlandalfConfig
