@justifi/webcomponents 6.7.1 → 6.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/dist/cjs/{check-pkg-version-cLAIX_H6.js → check-pkg-version-BG-Rfkh5.js} +1 -1
  2. package/dist/cjs/hidden-input_2.cjs.entry.js +1 -1
  3. package/dist/cjs/internal-tokenize-payment-method_7.cjs.entry.js +9 -7
  4. package/dist/cjs/justifi-apple-pay_8.cjs.entry.js +5 -4
  5. package/dist/cjs/justifi-business-details.cjs.entry.js +2 -2
  6. package/dist/cjs/justifi-business-form.cjs.entry.js +2 -2
  7. package/dist/cjs/justifi-checkout.cjs.entry.js +2 -2
  8. package/dist/cjs/justifi-checkouts-list.cjs.entry.js +2 -2
  9. package/dist/cjs/justifi-dispute-management.cjs.entry.js +2 -2
  10. package/dist/cjs/justifi-dispute-notification_3.cjs.entry.js +2 -2
  11. package/dist/cjs/justifi-gross-payment-chart.cjs.entry.js +2 -2
  12. package/dist/cjs/justifi-order-terminals.cjs.entry.js +2 -2
  13. package/dist/cjs/justifi-payment-details.cjs.entry.js +2 -2
  14. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +2 -2
  15. package/dist/cjs/justifi-payment-transactions-list.cjs.entry.js +2 -2
  16. package/dist/cjs/justifi-payments-list.cjs.entry.js +2 -2
  17. package/dist/cjs/justifi-payout-details.cjs.entry.js +2 -2
  18. package/dist/cjs/justifi-payout-transactions-list.cjs.entry.js +2 -2
  19. package/dist/cjs/justifi-payouts-list.cjs.entry.js +2 -2
  20. package/dist/cjs/justifi-refund-payment.cjs.entry.js +98 -6
  21. package/dist/cjs/justifi-season-interruption-insurance.cjs.entry.js +2 -2
  22. package/dist/cjs/justifi-terminal-orders-list.cjs.entry.js +2 -2
  23. package/dist/cjs/justifi-terminals-list.cjs.entry.js +2 -2
  24. package/dist/cjs/loader.cjs.js +1 -1
  25. package/dist/cjs/{package-C9E_BIbT.js → package-Df5lTFe6.js} +1 -1
  26. package/dist/cjs/webcomponents.cjs.js +1 -1
  27. package/dist/collection/actions/void/void-actions.js +31 -0
  28. package/dist/collection/api/services/void.service.js +9 -0
  29. package/dist/collection/components/modular-checkout/modular-checkout.js +3 -2
  30. package/dist/collection/components/modular-checkout/sub-components/bank-account.js +6 -3
  31. package/dist/collection/components/modular-checkout/sub-components/card-form.js +6 -3
  32. package/dist/collection/components/refund-payment/refund-payment.js +66 -10
  33. package/dist/docs.json +15 -10
  34. package/dist/esm/{check-pkg-version-o2X_8wJ4.js → check-pkg-version-c_8fDHCB.js} +1 -1
  35. package/dist/esm/hidden-input_2.entry.js +1 -1
  36. package/dist/esm/internal-tokenize-payment-method_7.entry.js +9 -7
  37. package/dist/esm/justifi-apple-pay_8.entry.js +5 -4
  38. package/dist/esm/justifi-business-details.entry.js +2 -2
  39. package/dist/esm/justifi-business-form.entry.js +2 -2
  40. package/dist/esm/justifi-checkout.entry.js +2 -2
  41. package/dist/esm/justifi-checkouts-list.entry.js +2 -2
  42. package/dist/esm/justifi-dispute-management.entry.js +2 -2
  43. package/dist/esm/justifi-dispute-notification_3.entry.js +2 -2
  44. package/dist/esm/justifi-gross-payment-chart.entry.js +2 -2
  45. package/dist/esm/justifi-order-terminals.entry.js +2 -2
  46. package/dist/esm/justifi-payment-details.entry.js +2 -2
  47. package/dist/esm/justifi-payment-provisioning.entry.js +2 -2
  48. package/dist/esm/justifi-payment-transactions-list.entry.js +2 -2
  49. package/dist/esm/justifi-payments-list.entry.js +2 -2
  50. package/dist/esm/justifi-payout-details.entry.js +2 -2
  51. package/dist/esm/justifi-payout-transactions-list.entry.js +2 -2
  52. package/dist/esm/justifi-payouts-list.entry.js +2 -2
  53. package/dist/esm/justifi-refund-payment.entry.js +98 -6
  54. package/dist/esm/justifi-season-interruption-insurance.entry.js +2 -2
  55. package/dist/esm/justifi-terminal-orders-list.entry.js +2 -2
  56. package/dist/esm/justifi-terminals-list.entry.js +2 -2
  57. package/dist/esm/loader.js +1 -1
  58. package/dist/esm/{package-Dr8Z8wfP.js → package-BzT9OxlN.js} +1 -1
  59. package/dist/esm/webcomponents.js +1 -1
  60. package/dist/module/bank-account-form.js +1 -1
  61. package/dist/module/bank-account.js +5 -2
  62. package/dist/module/card-form.js +1 -1
  63. package/dist/module/card-form2.js +5 -2
  64. package/dist/module/justifi-checkouts-list-filters.js +1 -1
  65. package/dist/module/justifi-payment-transactions-list.js +1 -1
  66. package/dist/module/justifi-payments-list-filters.js +1 -1
  67. package/dist/module/justifi-payout-transactions-list.js +1 -1
  68. package/dist/module/justifi-payouts-list-filters.js +1 -1
  69. package/dist/module/justifi-refund-payment.js +97 -4
  70. package/dist/module/justifi-terminal-orders-list-filters.js +1 -1
  71. package/dist/module/modular-checkout.js +3 -2
  72. package/dist/module/package.js +1 -1
  73. package/dist/module/payments-list-core2.js +1 -1
  74. package/dist/module/payout-details-core2.js +1 -1
  75. package/dist/module/payouts-list-core2.js +1 -1
  76. package/dist/module/terminal-orders-list-core2.js +1 -1
  77. package/dist/module/utils2.js +1 -1
  78. package/dist/types/actions/void/void-actions.d.ts +10 -0
  79. package/dist/types/api/services/void.service.d.ts +7 -0
  80. package/dist/types/components/modular-checkout/sub-components/bank-account.d.ts +1 -0
  81. package/dist/types/components/modular-checkout/sub-components/card-form.d.ts +1 -0
  82. package/dist/types/components/refund-payment/refund-payment.d.ts +6 -2
  83. package/dist/types/components.d.ts +3 -3
  84. package/dist/webcomponents/{p-4dc358aa.entry.js → p-035a4adc.entry.js} +1 -1
  85. package/dist/webcomponents/{p-e2d33311.entry.js → p-0935600b.entry.js} +1 -1
  86. package/dist/webcomponents/{p-c8a5a2a9.entry.js → p-0ab9a3ae.entry.js} +1 -1
  87. package/dist/webcomponents/{p-BEu9YFnf.js → p-11wdbrqX.js} +1 -1
  88. package/dist/webcomponents/{p-cbd52897.entry.js → p-138ada4a.entry.js} +1 -1
  89. package/dist/webcomponents/{p-d5765545.entry.js → p-148d3327.entry.js} +1 -1
  90. package/dist/webcomponents/p-2cb9edad.entry.js +1 -0
  91. package/dist/webcomponents/{p-ad3a73af.entry.js → p-2d4a2d26.entry.js} +1 -1
  92. package/dist/webcomponents/p-3f14d0c4.entry.js +1 -0
  93. package/dist/webcomponents/{p-cc2a1c7c.entry.js → p-5c6727ae.entry.js} +1 -1
  94. package/dist/webcomponents/{p-3fbe8ac3.entry.js → p-622af881.entry.js} +1 -1
  95. package/dist/webcomponents/{p-062fcfd5.entry.js → p-64ebff16.entry.js} +1 -1
  96. package/dist/webcomponents/p-71577fa1.entry.js +1 -0
  97. package/dist/webcomponents/{p-3fb1cf2b.entry.js → p-7ec4838f.entry.js} +1 -1
  98. package/dist/webcomponents/p-BzT9OxlN.js +1 -0
  99. package/dist/webcomponents/{p-5a7207c0.entry.js → p-af7c219d.entry.js} +1 -1
  100. package/dist/webcomponents/{p-5e6f2128.entry.js → p-b752c5bc.entry.js} +1 -1
  101. package/dist/webcomponents/{p-8884e000.entry.js → p-bbff6196.entry.js} +1 -1
  102. package/dist/webcomponents/p-c0c36187.entry.js +1 -0
  103. package/dist/webcomponents/{p-262e4b23.entry.js → p-d077569e.entry.js} +1 -1
  104. package/dist/webcomponents/{p-abcb4945.entry.js → p-d7b1b7b5.entry.js} +1 -1
  105. package/dist/webcomponents/{p-7bb7aaca.entry.js → p-dc6c9c79.entry.js} +1 -1
  106. package/dist/webcomponents/p-ecbc83bf.entry.js +1 -0
  107. package/dist/webcomponents/{p-cf644e46.entry.js → p-f56d7b4c.entry.js} +1 -1
  108. package/dist/webcomponents/webcomponents.esm.js +1 -1
  109. package/docs/.eslintrc.cjs +17 -0
  110. package/docs/changelog/index.mdx +17 -0
  111. package/docs/entities/businessdetails/index.mdx +143 -0
  112. package/docs/entities/businessform/index.mdx +241 -0
  113. package/docs/entities/index.mdx +19 -0
  114. package/docs/entities/payment-provisioning/index.mdx +128 -0
  115. package/docs/frameworks/angular/index.mdx +112 -0
  116. package/docs/frameworks/index.mdx +18 -0
  117. package/docs/frameworks/react/index.mdx +125 -0
  118. package/docs/frameworks/vue/index.mdx +102 -0
  119. package/docs/helpers/PartsTable.js +50 -0
  120. package/docs/helpers/PropsTable.js +56 -0
  121. package/docs/helpers/index.ts +3 -0
  122. package/docs/helpers/version.js +32 -0
  123. package/docs/introduction/index.mdx +125 -0
  124. package/docs/merchant-tools/checkouts-list/index.mdx +97 -0
  125. package/docs/merchant-tools/gross-payments-chart/index.mdx +83 -0
  126. package/docs/merchant-tools/index.mdx +25 -0
  127. package/docs/merchant-tools/order-terminals/index.mdx +84 -0
  128. package/docs/merchant-tools/payment-details/index.mdx +132 -0
  129. package/docs/merchant-tools/payment-transactions-list/index.mdx +85 -0
  130. package/docs/merchant-tools/payments-list/index.mdx +109 -0
  131. package/docs/merchant-tools/payout-details/index.mdx +84 -0
  132. package/docs/merchant-tools/payout-transactions-list/index.mdx +84 -0
  133. package/docs/merchant-tools/payouts-list/index.mdx +92 -0
  134. package/docs/merchant-tools/terminal-orders-list/index.mdx +85 -0
  135. package/docs/merchant-tools/terminals-list/index.mdx +93 -0
  136. package/docs/modular-checkout/complete-examples/index.mdx +20 -0
  137. package/docs/modular-checkout/index.mdx +20 -0
  138. package/docs/modular-checkout/introduction/index.mdx +102 -0
  139. package/docs/modular-checkout/sub-components/apple-pay.mdx +106 -0
  140. package/docs/modular-checkout/sub-components/bank-account-form.mdx +167 -0
  141. package/docs/modular-checkout/sub-components/card-form.mdx +178 -0
  142. package/docs/modular-checkout/sub-components/index.mdx +23 -0
  143. package/docs/modular-checkout/sub-components/payment-method-options.mdx +87 -0
  144. package/docs/modular-checkout/sub-components/plaid-payment-method.mdx +158 -0
  145. package/docs/modular-checkout/sub-components/saved-payment-methods.mdx +183 -0
  146. package/docs/modular-checkout/sub-components/season-interruption-insurance.mdx +221 -0
  147. package/docs/modular-checkout/sub-components/sezzle-payment-method.mdx +183 -0
  148. package/docs/modular-checkout/sub-components/summary.mdx +111 -0
  149. package/docs/payment-facilitation/dispute-management/index.mdx +99 -0
  150. package/docs/payment-facilitation/index.mdx +21 -0
  151. package/docs/payment-facilitation/refund-payment/index.mdx +241 -0
  152. package/docs/payment-facilitation/tokenize-payment-method/index.mdx +350 -0
  153. package/docs/payment-facilitation/unified-fintech-checkout/342/204/242/index.mdx +150 -0
  154. package/package.json +21 -6
  155. package/dist/webcomponents/p-1df660a9.entry.js +0 -1
  156. package/dist/webcomponents/p-296bd0b6.entry.js +0 -1
  157. package/dist/webcomponents/p-Dr8Z8wfP.js +0 -1
  158. package/dist/webcomponents/p-ca0d1c6c.entry.js +0 -1
  159. package/dist/webcomponents/p-cc0c722c.entry.js +0 -1
  160. package/dist/webcomponents/p-def84700.entry.js +0 -1
@@ -0,0 +1,125 @@
1
+ ---
2
+ id: introduction/index
3
+ title: Introduction
4
+ description: Introduction to the JustiFi Web Component Library.
5
+ sidebar_position: 1
6
+ ---
7
+
8
+ import { getWebcomponentsVersion } from '@justifi/webcomponents/docs/helpers';
9
+
10
+ # Introduction to JustiFi Web Component Library
11
+
12
+ Welcome to the JustiFi Web Component Library. These components can be used as HTML Web Components or as React components.
13
+
14
+ ## Usage
15
+
16
+ ### HTML Web Components
17
+
18
+ The simplest way to use the Web Components is to include the following script within your HTML. This loads all the components into the browser's custom component registry.
19
+
20
+ <pre><code className="language-html">{`<head>
21
+ <script
22
+ type="module"
23
+ src="https://cdn.jsdelivr.net/npm/@justifi/webcomponents@${getWebcomponentsVersion()}/dist/webcomponents/webcomponents.esm.js"
24
+ ></script>
25
+
26
+ </head>`}</code></pre>
27
+
28
+ Then, you can use the custom elements as normal `HTML` tags.
29
+
30
+ ```html
31
+ <justifi-checkout auth-token="token" checkout-id="chk_123"></justifi-checkout>
32
+ ```
33
+
34
+ It can also be installed as a package with `npm` or `pnpm`:
35
+
36
+ ```bash
37
+ npm install --save @justifi/webcomponents
38
+ # or
39
+ pnpm add @justifi/webcomponents
40
+ ```
41
+
42
+ and import the component module using ES modules.
43
+
44
+ ```javascript
45
+ import '@justifi/webcomponents/dist/module/justifi-checkout.js';
46
+ ```
47
+
48
+ ## Styling
49
+
50
+ ### How Parts Stack for Efficient Global Styling
51
+
52
+ Parts are designed hierarchically to let you apply global styles like `color` or `font-family` universally, while components inherit these settings without repetitive targeting.
53
+
54
+ ### Core Parts and Inheritance
55
+
56
+ 1. **Base Parts**: `color`, `font-family`, and `background-color` define foundational styles.
57
+
58
+ - These propagate into higher-level parts like `text`, `button`, and `input`.
59
+
60
+ 2. **Higher-Level Parts**:
61
+ - **`text`**: Combines `color` and `font-family` for typography.
62
+ - **`input`, `button`, `label`**: Inherit `text`, ensuring consistent styles across components.
63
+
64
+ ### Global Styling in Action
65
+
66
+ #### Universal Font
67
+
68
+ Set the font for all components using `font-family`:
69
+
70
+ ```css
71
+ ::part(font-family) {
72
+ font-family: 'Inter', system-ui, sans-serif;
73
+ }
74
+ ```
75
+
76
+ #### Universal Text Color
77
+
78
+ Set the text color once via `color`:
79
+
80
+ ```css
81
+ ::part(color) {
82
+ color: #1d1b2f;
83
+ }
84
+ ```
85
+
86
+ These apply to all components that rely on `text`, including buttons, inputs, and headings.
87
+
88
+ ### Component-Specific Overrides
89
+
90
+ After defining global styles, customize specific components using their higher-level parts:
91
+
92
+ #### Buttons
93
+
94
+ ```css
95
+ ::part(button-primary) {
96
+ background-color: #0d3b66;
97
+ color: #fff; /* Overrides `color` */
98
+ }
99
+ ```
100
+
101
+ #### Input States
102
+
103
+ ```css
104
+ ::part(input-focused) {
105
+ border-color: #0d3b66;
106
+ background-color: #f0f8ff;
107
+ }
108
+ ```
109
+
110
+ To view the full list of available parts for styling, consult the source file [here](https://github.com/justifi-tech/web-component-library/blob/main/packages/webcomponents/src/styles/parts.ts).
111
+
112
+ ### Best Practices
113
+
114
+ 1. **Style Base Parts First**: Focus on `color` and `font-family` for global consistency.
115
+ 2. **Override as Needed**: Use component-specific parts (e.g., `button-primary`) sparingly for deviations.
116
+ 3. **Inspect and Leverage Stacking**: Ensure you understand how parts like `text` layer to avoid redundant styles.
117
+
118
+ This hierarchy ensures maintainable, reusable styles across all components with minimal effort.
119
+
120
+ ## Report Issues
121
+
122
+ For bugs and issues, please:
123
+
124
+ 1. Go to our [GitHub Issues](https://github.com/justifi-tech/web-component-library/issues).
125
+ 2. Click "New Issue" and describe the problem.
@@ -0,0 +1,97 @@
1
+ ---
2
+ id: merchant-tools/checkouts-list/index
3
+ title: Checkouts List
4
+ description: Paginated reporting table for monitoring active and past checkouts.
5
+ sidebar_position: 26
6
+ ---
7
+
8
+ import { PropsTable, PartsTable } from '@justifi/webcomponents/docs/helpers';
9
+
10
+ ## Overview
11
+
12
+ Component to render a formated list of checkouts for the requested account.
13
+
14
+ ## Usage
15
+
16
+ ### Basic list with filters
17
+
18
+ <pre>
19
+ <code className="language-html">{`<justifi-checkouts-list-filters></justifi-checkouts-list-filters>
20
+ <justifi-checkouts-list
21
+ account-id="acc_123"
22
+ auth-token="wct_reportingToken"
23
+ />`}</code>
24
+ </pre>
25
+
26
+ ### Custom columns
27
+
28
+ Pass a comma-separated list to the `columns` prop (`created_at,payment_amount,status`) to match the data points your operators expect.
29
+
30
+ ## Props, Events & Methods
31
+
32
+ <div
33
+ dangerouslySetInnerHTML={{
34
+ __html: PropsTable([
35
+ {
36
+ name: 'account-id',
37
+ type: 'string',
38
+ required: true,
39
+ description: 'Platform or sub-account whose checkouts should appear.',
40
+ },
41
+ {
42
+ name: 'auth-token',
43
+ type: 'string',
44
+ required: true,
45
+ description: 'Token with `read:checkouts` scope.',
46
+ },
47
+ {
48
+ name: 'columns',
49
+ type: 'string',
50
+ defaultValue:
51
+ 'created_at,payment_amount,payment_description,payment_mode,status',
52
+ description: 'Controls which table columns render and their order.',
53
+ },
54
+ ]),
55
+ }}
56
+ />
57
+
58
+ ### Events
59
+
60
+ - `click-event`: Emitted when a row or control is clicked. `event.detail.name` indicates the source.
61
+ - `error-event`: Fires when the list cannot load data due to network/auth issues.
62
+
63
+ ### Methods
64
+
65
+ 1. `refresh()` – Re-fetches data. Combine with filter changes for dynamic searches.
66
+ 2. `exportCSV()` – (Coming soon) Provide your own download button and call this method for exports.
67
+
68
+ ## Theming & Layout
69
+
70
+ <div
71
+ dangerouslySetInnerHTML={{
72
+ __html: PartsTable([
73
+ {
74
+ name: 'font-family',
75
+ description: 'Controls the font family for the component.',
76
+ },
77
+ {
78
+ name: 'color',
79
+ description: 'Controls the text color.',
80
+ },
81
+ {
82
+ name: 'background-color',
83
+ description: 'Controls the background color.',
84
+ },
85
+ {
86
+ name: 'button',
87
+ description: 'Button styles.',
88
+ },
89
+ {
90
+ name: 'button-disabled',
91
+ description: 'Disabled button styles.',
92
+ },
93
+ ]),
94
+ }}
95
+ />
96
+
97
+ - Filters component emits custom events; ensure both components share the same container so spacing stays consistent.
@@ -0,0 +1,83 @@
1
+ ---
2
+ id: merchant-tools/gross-payments-chart/index
3
+ title: Gross Payments Chart
4
+ description: Visualizes gross payment volume over time with tooltips and range selection.
5
+ sidebar_position: 43
6
+ ---
7
+
8
+ import { PropsTable, PartsTable } from '@justifi/webcomponents/docs/helpers';
9
+
10
+ ## Overview
11
+
12
+ Component to render chart displaying last 30 days of gross payment data.
13
+
14
+ ## Usage
15
+
16
+ ### Chart monthly volume
17
+
18
+ <pre>
19
+ <code className="language-html">{`<justifi-gross-payment-chart
20
+ account-id="acc_123"
21
+ auth-token="wct_reporting"
22
+ interval="month"
23
+ range="12m"
24
+ />`}</code>
25
+ </pre>
26
+
27
+ ## Props, Events & Methods
28
+
29
+ <div
30
+ dangerouslySetInnerHTML={{
31
+ __html: PropsTable([
32
+ {
33
+ name: 'account-id',
34
+ type: 'string',
35
+ required: true,
36
+ description: 'Determines which payments to graph.',
37
+ },
38
+ {
39
+ name: 'auth-token',
40
+ type: 'string',
41
+ required: true,
42
+ description: 'Token with `read:payments` scope.',
43
+ },
44
+ {
45
+ name: 'interval',
46
+ type: '"day" | "week" | "month"',
47
+ defaultValue: 'day',
48
+ description: 'Bucket size for data points.',
49
+ },
50
+ {
51
+ name: 'range',
52
+ type: 'string',
53
+ defaultValue: '30d',
54
+ description: 'Total timeframe (e.g., `7d`, `3m`, `12m`).',
55
+ },
56
+ ]),
57
+ }}
58
+ />
59
+
60
+ ### Events
61
+
62
+ - `point-hover`: Emits when a user hovers/focuses a data point; includes amount and date.
63
+
64
+ ### Public methods
65
+
66
+ 1. `refresh()` – Re-fetch chart data (useful when filters change).
67
+
68
+ ## Theming & Layout
69
+
70
+ <div
71
+ dangerouslySetInnerHTML={{
72
+ __html: PartsTable([
73
+ {
74
+ name: 'chart',
75
+ description: 'SVG/Canvas container for the line chart.',
76
+ },
77
+ {
78
+ name: 'tooltip',
79
+ description: 'Floating tooltip bubble when hovering/focusing a point.',
80
+ },
81
+ ]),
82
+ }}
83
+ />
@@ -0,0 +1,25 @@
1
+ ---
2
+ id: merchant-tools/index
3
+ title: Merchant Tools
4
+ description: Operational dashboards for tracking payouts, payments, and terminals.
5
+ ---
6
+
7
+ Merchant Tools components expose the same operational insights that platforms
8
+ use internally. Mix and match them to build tailored portals:
9
+
10
+ 1. [Checkouts List](./checkouts-list/index) – monitor in-flight checkout
11
+ sessions and states.
12
+ 2. [Payments List](./payments-list/index) / [Payment Details](./payment-details/index)
13
+ – audit every transaction from authorization through settlement.
14
+ 3. [Payment Transactions List](./payment-transactions-list/index) – deep dive
15
+ into ledger-level events.
16
+ 4. [Payouts List](./payouts-list/index), [Payout Details](./payout-details/index),
17
+ and [Payout Transactions List](./payout-transactions-list/index) – reconcile
18
+ disbursements end to end.
19
+ 5. [Gross Payments Chart](./gross-payments-chart/index) – visualize trends.
20
+ 6. [Order Terminals](./order-terminals/index), [Terminal Orders List](./terminal-orders-list/index),
21
+ and [Terminals List](./terminals-list/index) – manage hardware fulfillment.
22
+
23
+ > Most teams embed just a handful of these components per view. Keep pages
24
+ > focused so operators can answer one question without sifting through noise.
25
+
@@ -0,0 +1,84 @@
1
+ ---
2
+ id: merchant-tools/order-terminals/index
3
+ title: Order Terminals
4
+ description: Guided purchasing flow for ordering in-person terminals and accessories.
5
+ sidebar_position: 50
6
+ ---
7
+
8
+ import { PropsTable, PartsTable } from '@justifi/webcomponents/docs/helpers';
9
+
10
+ ## Overview
11
+
12
+ Component to render a form for terminal order requests.
13
+
14
+ ## Usage
15
+
16
+ <pre>
17
+ <code className="language-html">{`<justifi-order-terminals
18
+ account-id="acc_123"
19
+ auth-token="wct_terminals"
20
+ shipping-contact="contact_456"
21
+ />`}</code>
22
+ </pre>
23
+
24
+ ## Props, Events & Methods
25
+
26
+ <div
27
+ dangerouslySetInnerHTML={{
28
+ __html: PropsTable([
29
+ {
30
+ name: 'account-id',
31
+ type: 'string',
32
+ required: true,
33
+ description: 'Merchant placing the order.',
34
+ },
35
+ {
36
+ name: 'auth-token',
37
+ type: 'string',
38
+ required: true,
39
+ description: 'Token with `write:terminals` scope.',
40
+ },
41
+ {
42
+ name: 'shipping-contact',
43
+ type: 'string',
44
+ description:
45
+ 'Optional saved contact ID; when omitted the component collects address info inline.',
46
+ },
47
+ {
48
+ name: 'allowed-products',
49
+ type: 'string',
50
+ description: 'Comma-separated SKU list to limit which devices appear.',
51
+ },
52
+ ]),
53
+ }}
54
+ />
55
+
56
+ ### Events
57
+
58
+ - `submitted`: Fires when an order is placed; includes order ID and device list.
59
+ - `error-event`: Emits network or validation errors.
60
+
61
+ ### Public methods
62
+
63
+ 1. `submit()` – Trigger the order (useful if you host CTAs externally).
64
+
65
+ ## Theming & Layout
66
+
67
+ <div
68
+ dangerouslySetInnerHTML={{
69
+ __html: PartsTable([
70
+ {
71
+ name: 'font-family',
72
+ description: 'Controls the font family for the component.',
73
+ },
74
+ {
75
+ name: 'color',
76
+ description: 'Controls the text color.',
77
+ },
78
+ {
79
+ name: 'background-color',
80
+ description: 'Controls the background color.',
81
+ },
82
+ ]),
83
+ }}
84
+ />
@@ -0,0 +1,132 @@
1
+ ---
2
+ id: merchant-tools/payment-details/index
3
+ title: Payment Details
4
+ description: Detailed view for a single payment, including customer data, timeline events, and dispute shortcuts.
5
+ sidebar_position: 30
6
+ ---
7
+
8
+ import {
9
+ PropsTable,
10
+ PartsTable,
11
+ getWebcomponentsVersion,
12
+ } from '@justifi/webcomponents/docs/helpers';
13
+
14
+ ## Overview
15
+
16
+ Component to display detailed information about a specific payment.
17
+
18
+ ## Usage
19
+
20
+ <pre><code className="language-html">{`<!DOCTYPE html>
21
+ <html dir="ltr" lang="en">
22
+
23
+ <head>
24
+ <meta charset="utf-8" />
25
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=5.0" />
26
+ <title>justifi-payment-details</title>
27
+
28
+ <script
29
+ type="module"
30
+ src="https://cdn.jsdelivr.net/npm/@justifi/webcomponents@${getWebcomponentsVersion()}/dist/webcomponents/webcomponents.esm.js"
31
+ ></script>
32
+
33
+ <script
34
+ nomodule
35
+ src="https://cdn.jsdelivr.net/npm/@justifi/webcomponents@${getWebcomponentsVersion()}/dist/webcomponents/webcomponents.js"
36
+ ></script>
37
+
38
+ <style>
39
+ ::part(font-family) {
40
+ font-family: georgia;
41
+ }
42
+
43
+ ::part(color) {
44
+ color: darkslategray;
45
+ }
46
+
47
+ ::part(background-color) {
48
+ background-color: transparent;
49
+ }
50
+ </style>
51
+
52
+ </head>
53
+
54
+ <body>
55
+ <justifi-payment-details payment-id="py_123" auth-token="authToken" />
56
+ </body>
57
+
58
+ <script>
59
+ (function () {
60
+ const paymentDetails = document.querySelector('justifi-payment-details');
61
+
62
+ paymentDetails.addEventListener('error-event', (event) => {
63
+ // here is where you would handle the error
64
+ console.error('error-event', event.detail);
65
+ });
66
+ })();
67
+ </script>
68
+
69
+ </html>`}</code></pre>
70
+
71
+ ## Props, Events & Methods
72
+
73
+ <div
74
+ dangerouslySetInnerHTML={{
75
+ __html: PropsTable([
76
+ {
77
+ name: 'account-id',
78
+ type: 'string',
79
+ required: true,
80
+ description: 'Owning platform account for authorization.',
81
+ },
82
+ {
83
+ name: 'auth-token',
84
+ type: 'string',
85
+ required: true,
86
+ description: 'Token with `read:payments` scope.',
87
+ },
88
+ {
89
+ name: 'payment-id',
90
+ type: 'string',
91
+ required: true,
92
+ description: 'Payment to display.',
93
+ },
94
+ {
95
+ name: 'show-actions',
96
+ type: 'boolean',
97
+ defaultValue: 'true',
98
+ description: 'Hide when you only need a read-only audit surface.',
99
+ },
100
+ ]),
101
+ }}
102
+ />
103
+
104
+ ### Events
105
+
106
+ - `refund-requested`: emitted when an operator clicks the refund CTA.
107
+ - `dispute-opened`: indicates that the “Open dispute” action was invoked.
108
+
109
+ ### Public methods
110
+
111
+ 1. `refresh()` – Re-fetch the payment to reflect new statuses after an action.
112
+
113
+ ## Theming & Layout
114
+
115
+ <div
116
+ dangerouslySetInnerHTML={{
117
+ __html: PartsTable([
118
+ {
119
+ name: 'font-family',
120
+ description: 'Controls the font family for the component.',
121
+ },
122
+ {
123
+ name: 'color',
124
+ description: 'Controls the text color.',
125
+ },
126
+ {
127
+ name: 'background-color',
128
+ description: 'Controls the background color.',
129
+ },
130
+ ]),
131
+ }}
132
+ />
@@ -0,0 +1,85 @@
1
+ ---
2
+ id: merchant-tools/payment-transactions-list/index
3
+ title: Payment Transactions List
4
+ description: Transaction-level ledger for payments, grouped by status and funding state.
5
+ sidebar_position: 32
6
+ ---
7
+
8
+ import { PropsTable, PartsTable } from '@justifi/webcomponents/docs/helpers';
9
+
10
+ ## Overview
11
+
12
+ Component to display a list of payment transactions for a specific payment.
13
+
14
+ ## Usage
15
+
16
+ <pre>
17
+ <code className="language-html">{`<justifi-payment-transactions-list
18
+ account-id="acc_123"
19
+ auth-token="wct_reporting"
20
+ filters='{"payment_id":"pay_456"}'
21
+ />`}</code>
22
+ </pre>
23
+
24
+ ## Props, Events & Methods
25
+
26
+ <div
27
+ dangerouslySetInnerHTML={{
28
+ __html: PropsTable([
29
+ {
30
+ name: 'account-id',
31
+ type: 'string',
32
+ required: true,
33
+ description: 'Determines which transactions a user can view.',
34
+ },
35
+ {
36
+ name: 'auth-token',
37
+ type: 'string',
38
+ required: true,
39
+ description: 'Token with `read:payments` scope.',
40
+ },
41
+ {
42
+ name: 'filters',
43
+ type: 'string | Record<string, unknown>',
44
+ description:
45
+ 'JSON string or object specifying filter criteria (payment_id, status, date range).',
46
+ },
47
+ {
48
+ name: 'enable-export',
49
+ type: 'boolean',
50
+ defaultValue: 'false',
51
+ description: 'Adds export controls when true.',
52
+ },
53
+ ]),
54
+ }}
55
+ />
56
+
57
+ ### Events
58
+
59
+ - `filter-changed`: emits whenever the internal filter UI updates.
60
+ - `error-event`: surfaces API or token failures.
61
+
62
+ ### Public methods
63
+
64
+ 1. `refresh()` – Re-run the ledger query.
65
+
66
+ ## Theming & Layout
67
+
68
+ <div
69
+ dangerouslySetInnerHTML={{
70
+ __html: PartsTable([
71
+ {
72
+ name: 'font-family',
73
+ description: 'Controls the font family for the component.',
74
+ },
75
+ {
76
+ name: 'color',
77
+ description: 'Controls the text color.',
78
+ },
79
+ {
80
+ name: 'background-color',
81
+ description: 'Controls the background color.',
82
+ },
83
+ ]),
84
+ }}
85
+ />