@cratis/scene.blueprint.invoicing 0.0.0-stage → 4.78.3

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 (134) hide show
  1. package/README.md +69 -2
  2. package/blueprint.ts +16 -0
  3. package/blueprintCatalog.json +132 -0
  4. package/dist/cjs/blueprint.js +19 -0
  5. package/dist/cjs/blueprint.js.map +1 -0
  6. package/dist/cjs/index.js +69 -0
  7. package/dist/cjs/index.js.map +1 -0
  8. package/dist/cjs/invoicingApplication.js +49 -0
  9. package/dist/cjs/invoicingApplication.js.map +1 -0
  10. package/dist/cjs/invoicingParts.js +151 -0
  11. package/dist/cjs/invoicingParts.js.map +1 -0
  12. package/dist/cjs/invoicingQueries.js +66 -0
  13. package/dist/cjs/invoicingQueries.js.map +1 -0
  14. package/dist/cjs/invoicingScreenSet.js +47 -0
  15. package/dist/cjs/invoicingScreenSet.js.map +1 -0
  16. package/dist/cjs/manifest.js +87 -0
  17. package/dist/cjs/manifest.js.map +1 -0
  18. package/dist/cjs/navigation.js +117 -0
  19. package/dist/cjs/navigation.js.map +1 -0
  20. package/dist/cjs/package.json +3 -0
  21. package/dist/cjs/packageName.js +8 -0
  22. package/dist/cjs/packageName.js.map +1 -0
  23. package/dist/cjs/screens/index.js +22 -0
  24. package/dist/cjs/screens/index.js.map +1 -0
  25. package/dist/cjs/templateProvenance.js +24 -0
  26. package/dist/cjs/templateProvenance.js.map +1 -0
  27. package/dist/cjs/templates/calendarTemplate.js +109 -0
  28. package/dist/cjs/templates/calendarTemplate.js.map +1 -0
  29. package/dist/cjs/templates/dashboardTemplates.js +153 -0
  30. package/dist/cjs/templates/dashboardTemplates.js.map +1 -0
  31. package/dist/cjs/templates/formTemplates.js +51 -0
  32. package/dist/cjs/templates/formTemplates.js.map +1 -0
  33. package/dist/cjs/templates/index.js +27 -0
  34. package/dist/cjs/templates/index.js.map +1 -0
  35. package/dist/cjs/templates/listTemplates.js +166 -0
  36. package/dist/cjs/templates/listTemplates.js.map +1 -0
  37. package/dist/cjs/templates/recordTemplates.js +144 -0
  38. package/dist/cjs/templates/recordTemplates.js.map +1 -0
  39. package/dist/esm/blueprint.d.ts +3 -0
  40. package/dist/esm/blueprint.d.ts.map +1 -0
  41. package/dist/esm/blueprint.js +17 -0
  42. package/dist/esm/blueprint.js.map +1 -0
  43. package/dist/esm/index.d.ts +12 -0
  44. package/dist/esm/index.d.ts.map +1 -0
  45. package/dist/esm/index.js +18 -0
  46. package/dist/esm/index.js.map +1 -0
  47. package/dist/esm/invoicingApplication.d.ts +10 -0
  48. package/dist/esm/invoicingApplication.d.ts.map +1 -0
  49. package/dist/esm/invoicingApplication.js +44 -0
  50. package/dist/esm/invoicingApplication.js.map +1 -0
  51. package/dist/esm/invoicingParts.d.ts +16 -0
  52. package/dist/esm/invoicingParts.d.ts.map +1 -0
  53. package/dist/esm/invoicingParts.js +133 -0
  54. package/dist/esm/invoicingParts.js.map +1 -0
  55. package/dist/esm/invoicingQueries.d.ts +39 -0
  56. package/dist/esm/invoicingQueries.d.ts.map +1 -0
  57. package/dist/esm/invoicingQueries.js +58 -0
  58. package/dist/esm/invoicingQueries.js.map +1 -0
  59. package/dist/esm/invoicingScreenSet.d.ts +7 -0
  60. package/dist/esm/invoicingScreenSet.d.ts.map +1 -0
  61. package/dist/esm/invoicingScreenSet.js +45 -0
  62. package/dist/esm/invoicingScreenSet.js.map +1 -0
  63. package/dist/esm/manifest.d.ts +3 -0
  64. package/dist/esm/manifest.d.ts.map +1 -0
  65. package/dist/esm/manifest.js +85 -0
  66. package/dist/esm/manifest.js.map +1 -0
  67. package/dist/esm/navigation.d.ts +5 -0
  68. package/dist/esm/navigation.d.ts.map +1 -0
  69. package/dist/esm/navigation.js +113 -0
  70. package/dist/esm/navigation.js.map +1 -0
  71. package/dist/esm/package.json +3 -0
  72. package/dist/esm/packageName.d.ts +2 -0
  73. package/dist/esm/packageName.d.ts.map +1 -0
  74. package/dist/esm/packageName.js +6 -0
  75. package/dist/esm/packageName.js.map +1 -0
  76. package/dist/esm/screens/index.d.ts +3 -0
  77. package/dist/esm/screens/index.d.ts.map +1 -0
  78. package/dist/esm/screens/index.js +20 -0
  79. package/dist/esm/screens/index.js.map +1 -0
  80. package/dist/esm/templateProvenance.d.ts +3 -0
  81. package/dist/esm/templateProvenance.d.ts.map +1 -0
  82. package/dist/esm/templateProvenance.js +22 -0
  83. package/dist/esm/templateProvenance.js.map +1 -0
  84. package/dist/esm/templates/calendarTemplate.d.ts +3 -0
  85. package/dist/esm/templates/calendarTemplate.d.ts.map +1 -0
  86. package/dist/esm/templates/calendarTemplate.js +107 -0
  87. package/dist/esm/templates/calendarTemplate.js.map +1 -0
  88. package/dist/esm/templates/dashboardTemplates.d.ts +3 -0
  89. package/dist/esm/templates/dashboardTemplates.d.ts.map +1 -0
  90. package/dist/esm/templates/dashboardTemplates.js +151 -0
  91. package/dist/esm/templates/dashboardTemplates.js.map +1 -0
  92. package/dist/esm/templates/formTemplates.d.ts +3 -0
  93. package/dist/esm/templates/formTemplates.d.ts.map +1 -0
  94. package/dist/esm/templates/formTemplates.js +49 -0
  95. package/dist/esm/templates/formTemplates.js.map +1 -0
  96. package/dist/esm/templates/index.d.ts +8 -0
  97. package/dist/esm/templates/index.d.ts.map +1 -0
  98. package/dist/esm/templates/index.js +18 -0
  99. package/dist/esm/templates/index.js.map +1 -0
  100. package/dist/esm/templates/listTemplates.d.ts +4 -0
  101. package/dist/esm/templates/listTemplates.d.ts.map +1 -0
  102. package/dist/esm/templates/listTemplates.js +163 -0
  103. package/dist/esm/templates/listTemplates.js.map +1 -0
  104. package/dist/esm/templates/recordTemplates.d.ts +3 -0
  105. package/dist/esm/templates/recordTemplates.d.ts.map +1 -0
  106. package/dist/esm/templates/recordTemplates.js +142 -0
  107. package/dist/esm/templates/recordTemplates.js.map +1 -0
  108. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  109. package/index.ts +14 -0
  110. package/invoicingApplication.ts +28 -0
  111. package/invoicingParts.ts +58 -0
  112. package/invoicingQueries.ts +58 -0
  113. package/invoicingScreenSet.ts +22 -0
  114. package/manifest.ts +41 -0
  115. package/navigation.ts +54 -0
  116. package/package.json +78 -4
  117. package/packageName.ts +5 -0
  118. package/sampleData/invoicing-en.json +988 -0
  119. package/screens/index.ts +20 -0
  120. package/templateProvenance.ts +15 -0
  121. package/templates/calendarTemplate.ts +57 -0
  122. package/templates/dashboardTemplates.ts +76 -0
  123. package/templates/formTemplates.ts +34 -0
  124. package/templates/index.ts +18 -0
  125. package/templates/listTemplates.ts +106 -0
  126. package/templates/recordTemplates.ts +79 -0
  127. package/thumbnails/InvoicePage.svg +17 -0
  128. package/thumbnails/InvoicesList.svg +29 -0
  129. package/thumbnails/InvoicingDueDates.svg +34 -0
  130. package/thumbnails/InvoicingOverview.svg +15 -0
  131. package/thumbnails/InvoicingQuickCreateInvoice.svg +12 -0
  132. package/thumbnails/InvoicingRecordPayment.svg +12 -0
  133. package/thumbnails/PaymentsList.svg +29 -0
  134. package/thumbnails/invoicing.svg +14 -0
@@ -0,0 +1,988 @@
1
+ {
2
+ "id": "invoicing-en",
3
+ "title": "Invoicing · English",
4
+ "locale": "en-GB",
5
+ "owner": "blueprint:invoicing",
6
+ "sets": [
7
+ {
8
+ "shape": "InvoicingSettings",
9
+ "rows": [
10
+ {
11
+ "locale": "en-GB",
12
+ "currency": "GBP",
13
+ "today": "2026-10-15",
14
+ "firstDay": 1
15
+ }
16
+ ]
17
+ },
18
+ {
19
+ "shape": "Invoices",
20
+ "rows": [
21
+ {
22
+ "id": "invoice-1",
23
+ "number": "INV-2041",
24
+ "customer": "Northwind Traders",
25
+ "issued": "2026-10-12",
26
+ "due": "2026-11-11",
27
+ "amount": 4820,
28
+ "status": "Sent"
29
+ },
30
+ {
31
+ "id": "invoice-2",
32
+ "number": "INV-2040",
33
+ "customer": "Contoso Ltd",
34
+ "issued": "2026-10-09",
35
+ "due": "2026-11-08",
36
+ "amount": 12650.5,
37
+ "status": "Sent"
38
+ },
39
+ {
40
+ "id": "invoice-3",
41
+ "number": "INV-2039",
42
+ "customer": "Fabrikam Inc",
43
+ "issued": "2026-10-05",
44
+ "due": "2026-10-19",
45
+ "amount": 2310,
46
+ "status": "Sent"
47
+ },
48
+ {
49
+ "id": "invoice-4",
50
+ "number": "INV-2038",
51
+ "customer": "Adventure Works",
52
+ "issued": "2026-09-28",
53
+ "due": "2026-10-12",
54
+ "amount": 7845.25,
55
+ "status": "Overdue"
56
+ },
57
+ {
58
+ "id": "invoice-5",
59
+ "number": "INV-2037",
60
+ "customer": "Tailspin Toys",
61
+ "issued": "2026-09-22",
62
+ "due": "2026-10-06",
63
+ "amount": 1960,
64
+ "status": "Overdue"
65
+ },
66
+ {
67
+ "id": "invoice-6",
68
+ "number": "INV-2036",
69
+ "customer": "Wingtip Supplies",
70
+ "issued": "2026-09-18",
71
+ "due": "2026-10-18",
72
+ "amount": 5430,
73
+ "status": "Paid"
74
+ },
75
+ {
76
+ "id": "invoice-7",
77
+ "number": "INV-2035",
78
+ "customer": "Northwind Traders",
79
+ "issued": "2026-09-10",
80
+ "due": "2026-10-10",
81
+ "amount": 3690.75,
82
+ "status": "Paid"
83
+ },
84
+ {
85
+ "id": "invoice-8",
86
+ "number": "INV-2034",
87
+ "customer": "Contoso Ltd",
88
+ "issued": "2026-09-03",
89
+ "due": "2026-10-03",
90
+ "amount": 9120,
91
+ "status": "Paid"
92
+ },
93
+ {
94
+ "id": "invoice-9",
95
+ "number": "INV-2033",
96
+ "customer": "Fabrikam Inc",
97
+ "issued": "2026-08-29",
98
+ "due": "2026-09-12",
99
+ "amount": 860,
100
+ "status": "Overdue"
101
+ },
102
+ {
103
+ "id": "invoice-10",
104
+ "number": "INV-2032",
105
+ "customer": "Adventure Works",
106
+ "issued": "2026-08-21",
107
+ "due": "2026-09-20",
108
+ "amount": 6275,
109
+ "status": "Paid"
110
+ },
111
+ {
112
+ "id": "invoice-11",
113
+ "number": "INV-2031",
114
+ "customer": "Tailspin Toys",
115
+ "issued": "2026-08-14",
116
+ "due": "2026-09-13",
117
+ "amount": 2480,
118
+ "status": "Void"
119
+ },
120
+ {
121
+ "id": "invoice-12",
122
+ "number": "INV-2042",
123
+ "customer": "Wingtip Supplies",
124
+ "issued": "2026-10-14",
125
+ "due": "2026-11-13",
126
+ "amount": 3150,
127
+ "status": "Draft"
128
+ }
129
+ ]
130
+ },
131
+ {
132
+ "shape": "InvoiceColumns",
133
+ "rows": [
134
+ {
135
+ "field": "number",
136
+ "header": "Invoice"
137
+ },
138
+ {
139
+ "field": "customer",
140
+ "header": "Customer"
141
+ },
142
+ {
143
+ "field": "issued",
144
+ "header": "Issued",
145
+ "kind": "date"
146
+ },
147
+ {
148
+ "field": "due",
149
+ "header": "Due",
150
+ "kind": "date"
151
+ },
152
+ {
153
+ "field": "amount",
154
+ "header": "Amount",
155
+ "kind": "currency"
156
+ },
157
+ {
158
+ "field": "status",
159
+ "header": "Status",
160
+ "kind": "status",
161
+ "tones": {
162
+ "Draft": "neutral",
163
+ "Sent": "info",
164
+ "Overdue": "danger",
165
+ "Paid": "success",
166
+ "Void": "warning"
167
+ }
168
+ }
169
+ ]
170
+ },
171
+ {
172
+ "shape": "InvoiceFilterFields",
173
+ "rows": [
174
+ {
175
+ "name": "customer",
176
+ "label": "Customer",
177
+ "type": "select",
178
+ "options": [
179
+ "Northwind Traders",
180
+ "Contoso Ltd",
181
+ "Fabrikam Inc",
182
+ "Adventure Works",
183
+ "Tailspin Toys",
184
+ "Wingtip Supplies"
185
+ ]
186
+ },
187
+ {
188
+ "name": "status",
189
+ "label": "Status",
190
+ "type": "select",
191
+ "options": [
192
+ "Draft",
193
+ "Sent",
194
+ "Overdue",
195
+ "Paid",
196
+ "Void"
197
+ ]
198
+ },
199
+ {
200
+ "name": "issued",
201
+ "label": "Issued",
202
+ "type": "date"
203
+ },
204
+ {
205
+ "name": "due",
206
+ "label": "Due",
207
+ "type": "date"
208
+ }
209
+ ]
210
+ },
211
+ {
212
+ "shape": "InvoiceViews",
213
+ "rows": [
214
+ {
215
+ "id": "all",
216
+ "label": "All invoices"
217
+ },
218
+ {
219
+ "id": "open",
220
+ "label": "Open invoices"
221
+ },
222
+ {
223
+ "id": "overdue",
224
+ "label": "Overdue invoices"
225
+ }
226
+ ]
227
+ },
228
+ {
229
+ "shape": "InvoiceColumnChoices",
230
+ "rows": [
231
+ {
232
+ "id": "number",
233
+ "label": "Invoice",
234
+ "locked": true
235
+ },
236
+ {
237
+ "id": "customer",
238
+ "label": "Customer"
239
+ },
240
+ {
241
+ "id": "issued",
242
+ "label": "Issued"
243
+ },
244
+ {
245
+ "id": "due",
246
+ "label": "Due"
247
+ },
248
+ {
249
+ "id": "amount",
250
+ "label": "Amount"
251
+ },
252
+ {
253
+ "id": "status",
254
+ "label": "Status"
255
+ }
256
+ ]
257
+ },
258
+ {
259
+ "shape": "InvoiceSelection",
260
+ "rows": []
261
+ },
262
+ {
263
+ "shape": "InvoiceQuickSections",
264
+ "rows": [
265
+ {
266
+ "id": "quick",
267
+ "title": "New invoice",
268
+ "columns": 1,
269
+ "fields": [
270
+ {
271
+ "name": "customer",
272
+ "label": "Customer",
273
+ "type": "select",
274
+ "options": [
275
+ "Northwind Traders",
276
+ "Contoso Ltd",
277
+ "Fabrikam Inc",
278
+ "Adventure Works",
279
+ "Tailspin Toys",
280
+ "Wingtip Supplies"
281
+ ],
282
+ "required": true
283
+ },
284
+ {
285
+ "name": "issued",
286
+ "label": "Issue date",
287
+ "type": "date",
288
+ "required": true
289
+ },
290
+ {
291
+ "name": "due",
292
+ "label": "Due date",
293
+ "type": "date",
294
+ "required": true
295
+ },
296
+ {
297
+ "name": "amount",
298
+ "label": "Amount",
299
+ "type": "currency",
300
+ "required": true
301
+ },
302
+ {
303
+ "name": "notes",
304
+ "label": "Notes",
305
+ "type": "textarea"
306
+ }
307
+ ]
308
+ }
309
+ ]
310
+ },
311
+ {
312
+ "shape": "InvoiceRecord",
313
+ "rows": [
314
+ {
315
+ "id": "invoice-1",
316
+ "number": "INV-2041",
317
+ "customer": "Northwind Traders",
318
+ "issued": "2026-10-12",
319
+ "due": "2026-11-11",
320
+ "amount": 4820,
321
+ "status": "Sent",
322
+ "summary": "Fittings and fixings for the Bergen depot",
323
+ "terms": "Net 30",
324
+ "poNumber": "PO-77120",
325
+ "contact": "Grace Hopper",
326
+ "billTo": "Northwind Traders, Strandgaten 12, 5013 Bergen",
327
+ "paid": 0,
328
+ "balance": 4820,
329
+ "daysToDue": 27
330
+ }
331
+ ]
332
+ },
333
+ {
334
+ "shape": "InvoiceSections",
335
+ "rows": [
336
+ {
337
+ "id": "invoice",
338
+ "title": "Invoice details",
339
+ "columns": 2,
340
+ "fields": [
341
+ {
342
+ "name": "number",
343
+ "label": "Invoice"
344
+ },
345
+ {
346
+ "name": "customer",
347
+ "label": "Customer"
348
+ },
349
+ {
350
+ "name": "issued",
351
+ "label": "Issued",
352
+ "type": "date"
353
+ },
354
+ {
355
+ "name": "due",
356
+ "label": "Due",
357
+ "type": "date"
358
+ },
359
+ {
360
+ "name": "terms",
361
+ "label": "Payment terms"
362
+ },
363
+ {
364
+ "name": "poNumber",
365
+ "label": "Customer order"
366
+ },
367
+ {
368
+ "name": "contact",
369
+ "label": "Contact"
370
+ },
371
+ {
372
+ "name": "billTo",
373
+ "label": "Bill to",
374
+ "span": 2
375
+ }
376
+ ]
377
+ }
378
+ ]
379
+ },
380
+ {
381
+ "shape": "InvoiceSummary",
382
+ "rows": [
383
+ {
384
+ "status": "Sent",
385
+ "tone": "info",
386
+ "total": 4820,
387
+ "paid": 0,
388
+ "balance": 4820,
389
+ "daysToDue": 27
390
+ }
391
+ ]
392
+ },
393
+ {
394
+ "shape": "InvoiceActivity",
395
+ "rows": [
396
+ {
397
+ "id": "a0",
398
+ "actor": "Katherine Johnson",
399
+ "action": "sent the invoice",
400
+ "kind": "status",
401
+ "at": "2026-10-12T10:05:00Z",
402
+ "body": "To accounts@northwind.example"
403
+ },
404
+ {
405
+ "id": "a1",
406
+ "actor": "Grace Hopper",
407
+ "action": "approved the invoice",
408
+ "kind": "comment",
409
+ "at": "2026-10-12T09:30:00Z",
410
+ "body": "Matches the delivery note"
411
+ },
412
+ {
413
+ "id": "a2",
414
+ "actor": "Alan Turing",
415
+ "action": "created the invoice from order SO-1042",
416
+ "kind": "created",
417
+ "at": "2026-10-12T08:50:00Z",
418
+ "body": "Four lines"
419
+ }
420
+ ]
421
+ },
422
+ {
423
+ "shape": "InvoiceTabs",
424
+ "rows": [
425
+ {
426
+ "id": "overview",
427
+ "label": "Overview"
428
+ },
429
+ {
430
+ "id": "lines",
431
+ "label": "Invoice lines"
432
+ },
433
+ {
434
+ "id": "payments",
435
+ "label": "Payments"
436
+ },
437
+ {
438
+ "id": "activity",
439
+ "label": "Activity"
440
+ }
441
+ ]
442
+ },
443
+ {
444
+ "shape": "InvoiceLines",
445
+ "rows": [
446
+ {
447
+ "id": "l1",
448
+ "description": "Compression fitting 22 mm",
449
+ "quantity": 200,
450
+ "price": 12.5,
451
+ "amount": 2500
452
+ },
453
+ {
454
+ "id": "l2",
455
+ "description": "Pipe cutter, 3-35 mm",
456
+ "quantity": 20,
457
+ "price": 34,
458
+ "amount": 680
459
+ },
460
+ {
461
+ "id": "l3",
462
+ "description": "Safety glasses, clear",
463
+ "quantity": 150,
464
+ "price": 4.2,
465
+ "amount": 630
466
+ },
467
+ {
468
+ "id": "l4",
469
+ "description": "Freight to Bergen",
470
+ "quantity": 1,
471
+ "price": 1010,
472
+ "amount": 1010
473
+ }
474
+ ]
475
+ },
476
+ {
477
+ "shape": "InvoiceLinesColumns",
478
+ "rows": [
479
+ {
480
+ "field": "description",
481
+ "header": "Description"
482
+ },
483
+ {
484
+ "field": "quantity",
485
+ "header": "Qty",
486
+ "kind": "number"
487
+ },
488
+ {
489
+ "field": "price",
490
+ "header": "Unit price",
491
+ "kind": "currency"
492
+ },
493
+ {
494
+ "field": "amount",
495
+ "header": "Amount",
496
+ "kind": "currency"
497
+ }
498
+ ]
499
+ },
500
+ {
501
+ "shape": "InvoicePayments",
502
+ "rows": [
503
+ {
504
+ "id": "pay-none",
505
+ "reference": "No payment yet",
506
+ "received": "2026-10-15",
507
+ "method": "Due 11 Nov",
508
+ "amount": 0
509
+ }
510
+ ]
511
+ },
512
+ {
513
+ "shape": "InvoicePaymentsColumns",
514
+ "rows": [
515
+ {
516
+ "field": "reference",
517
+ "header": "Payment"
518
+ },
519
+ {
520
+ "field": "received",
521
+ "header": "Received",
522
+ "kind": "date"
523
+ },
524
+ {
525
+ "field": "method",
526
+ "header": "Method"
527
+ },
528
+ {
529
+ "field": "amount",
530
+ "header": "Amount",
531
+ "kind": "currency"
532
+ }
533
+ ]
534
+ },
535
+ {
536
+ "shape": "Payments",
537
+ "rows": [
538
+ {
539
+ "id": "payment-1",
540
+ "reference": "PAY-3318",
541
+ "invoice": "INV-2036",
542
+ "received": "2026-10-14",
543
+ "method": "Bank transfer",
544
+ "amount": 5430
545
+ },
546
+ {
547
+ "id": "payment-2",
548
+ "reference": "PAY-3317",
549
+ "invoice": "INV-2035",
550
+ "received": "2026-10-09",
551
+ "method": "Card",
552
+ "amount": 3690.75
553
+ },
554
+ {
555
+ "id": "payment-3",
556
+ "reference": "PAY-3316",
557
+ "invoice": "INV-2034",
558
+ "received": "2026-10-02",
559
+ "method": "Bank transfer",
560
+ "amount": 9120
561
+ },
562
+ {
563
+ "id": "payment-4",
564
+ "reference": "PAY-3315",
565
+ "invoice": "INV-2032",
566
+ "received": "2026-09-19",
567
+ "method": "Bank transfer",
568
+ "amount": 6275
569
+ },
570
+ {
571
+ "id": "payment-5",
572
+ "reference": "PAY-3314",
573
+ "invoice": "INV-2030",
574
+ "received": "2026-09-15",
575
+ "method": "Card",
576
+ "amount": 1740
577
+ },
578
+ {
579
+ "id": "payment-6",
580
+ "reference": "PAY-3313",
581
+ "invoice": "INV-2029",
582
+ "received": "2026-09-08",
583
+ "method": "Direct debit",
584
+ "amount": 2985.5
585
+ },
586
+ {
587
+ "id": "payment-7",
588
+ "reference": "PAY-3312",
589
+ "invoice": "INV-2028",
590
+ "received": "2026-09-02",
591
+ "method": "Bank transfer",
592
+ "amount": 4410
593
+ },
594
+ {
595
+ "id": "payment-8",
596
+ "reference": "PAY-3311",
597
+ "invoice": "INV-2027",
598
+ "received": "2026-08-26",
599
+ "method": "Card",
600
+ "amount": 920
601
+ }
602
+ ]
603
+ },
604
+ {
605
+ "shape": "PaymentColumns",
606
+ "rows": [
607
+ {
608
+ "field": "reference",
609
+ "header": "Payment"
610
+ },
611
+ {
612
+ "field": "invoice",
613
+ "header": "Invoice"
614
+ },
615
+ {
616
+ "field": "received",
617
+ "header": "Received",
618
+ "kind": "date"
619
+ },
620
+ {
621
+ "field": "method",
622
+ "header": "Method"
623
+ },
624
+ {
625
+ "field": "amount",
626
+ "header": "Amount",
627
+ "kind": "currency"
628
+ }
629
+ ]
630
+ },
631
+ {
632
+ "shape": "PaymentFilterFields",
633
+ "rows": [
634
+ {
635
+ "name": "method",
636
+ "label": "Method",
637
+ "type": "select",
638
+ "options": [
639
+ "Bank transfer",
640
+ "Card",
641
+ "Direct debit"
642
+ ]
643
+ },
644
+ {
645
+ "name": "received",
646
+ "label": "Received",
647
+ "type": "date"
648
+ }
649
+ ]
650
+ },
651
+ {
652
+ "shape": "PaymentViews",
653
+ "rows": [
654
+ {
655
+ "id": "all",
656
+ "label": "All payments"
657
+ },
658
+ {
659
+ "id": "month",
660
+ "label": "This month"
661
+ }
662
+ ]
663
+ },
664
+ {
665
+ "shape": "PaymentColumnChoices",
666
+ "rows": [
667
+ {
668
+ "id": "reference",
669
+ "label": "Payment",
670
+ "locked": true
671
+ },
672
+ {
673
+ "id": "invoice",
674
+ "label": "Invoice"
675
+ },
676
+ {
677
+ "id": "received",
678
+ "label": "Received"
679
+ },
680
+ {
681
+ "id": "method",
682
+ "label": "Method"
683
+ },
684
+ {
685
+ "id": "amount",
686
+ "label": "Amount"
687
+ }
688
+ ]
689
+ },
690
+ {
691
+ "shape": "PaymentSelection",
692
+ "rows": []
693
+ },
694
+ {
695
+ "shape": "InvoicingKpis",
696
+ "rows": [
697
+ {
698
+ "value": 39495.25,
699
+ "change": 4.1
700
+ },
701
+ {
702
+ "value": 10665.25,
703
+ "change": 18.6
704
+ },
705
+ {
706
+ "value": 24620.75,
707
+ "change": -3.2
708
+ }
709
+ ]
710
+ },
711
+ {
712
+ "shape": "InvoicingAging",
713
+ "rows": [
714
+ {
715
+ "categories": [
716
+ "Not due",
717
+ "Up to 7 days",
718
+ "8 to 30 days",
719
+ "Over 30 days"
720
+ ],
721
+ "series": [
722
+ {
723
+ "name": "Outstanding",
724
+ "values": [
725
+ 22780.5,
726
+ 1960,
727
+ 7845.25,
728
+ 860
729
+ ]
730
+ }
731
+ ]
732
+ }
733
+ ]
734
+ },
735
+ {
736
+ "shape": "InvoicingInvoicedAndCollected",
737
+ "rows": [
738
+ {
739
+ "categories": [
740
+ "May",
741
+ "Jun",
742
+ "Jul",
743
+ "Aug",
744
+ "Sep",
745
+ "Oct"
746
+ ],
747
+ "series": [
748
+ {
749
+ "name": "Invoiced",
750
+ "values": [
751
+ 31200,
752
+ 28900,
753
+ 35400,
754
+ 29800,
755
+ 33600,
756
+ 30340
757
+ ]
758
+ },
759
+ {
760
+ "name": "Collected",
761
+ "values": [
762
+ 29800,
763
+ 30100,
764
+ 31200,
765
+ 33500,
766
+ 30900,
767
+ 24620
768
+ ]
769
+ }
770
+ ]
771
+ }
772
+ ]
773
+ },
774
+ {
775
+ "shape": "InvoicingActivity",
776
+ "rows": [
777
+ {
778
+ "id": "i0",
779
+ "actor": "Katherine Johnson",
780
+ "action": "sent INV-2041 to Northwind Traders",
781
+ "kind": "status",
782
+ "at": "2026-10-12T10:05:00Z",
783
+ "body": "GBP 4,820.00"
784
+ },
785
+ {
786
+ "id": "i1",
787
+ "actor": "Grace Hopper",
788
+ "action": "chased INV-2038 for payment",
789
+ "kind": "comment",
790
+ "at": "2026-10-14T13:40:00Z",
791
+ "body": "Promised for Friday"
792
+ },
793
+ {
794
+ "id": "i2",
795
+ "actor": "Alan Turing",
796
+ "action": "recorded a payment for INV-2036",
797
+ "kind": "created",
798
+ "at": "2026-10-14T09:15:00Z",
799
+ "body": "GBP 5,430.00 by bank transfer"
800
+ }
801
+ ]
802
+ },
803
+ {
804
+ "shape": "InvoicingDueDates",
805
+ "rows": [
806
+ {
807
+ "id": "due-1",
808
+ "title": "INV-2041 · Northwind Traders",
809
+ "start": "2026-11-11",
810
+ "end": "2026-11-11",
811
+ "category": "Sent",
812
+ "tone": "info",
813
+ "person": "Northwind Traders",
814
+ "amount": 4820
815
+ },
816
+ {
817
+ "id": "due-2",
818
+ "title": "INV-2040 · Contoso Ltd",
819
+ "start": "2026-11-08",
820
+ "end": "2026-11-08",
821
+ "category": "Sent",
822
+ "tone": "info",
823
+ "person": "Contoso Ltd",
824
+ "amount": 12650.5
825
+ },
826
+ {
827
+ "id": "due-3",
828
+ "title": "INV-2039 · Fabrikam Inc",
829
+ "start": "2026-10-19",
830
+ "end": "2026-10-19",
831
+ "category": "Sent",
832
+ "tone": "info",
833
+ "person": "Fabrikam Inc",
834
+ "amount": 2310
835
+ },
836
+ {
837
+ "id": "due-4",
838
+ "title": "INV-2038 · Adventure Works",
839
+ "start": "2026-10-12",
840
+ "end": "2026-10-12",
841
+ "category": "Overdue",
842
+ "tone": "danger",
843
+ "person": "Adventure Works",
844
+ "amount": 7845.25
845
+ },
846
+ {
847
+ "id": "due-5",
848
+ "title": "INV-2037 · Tailspin Toys",
849
+ "start": "2026-10-06",
850
+ "end": "2026-10-06",
851
+ "category": "Overdue",
852
+ "tone": "danger",
853
+ "person": "Tailspin Toys",
854
+ "amount": 1960
855
+ },
856
+ {
857
+ "id": "due-6",
858
+ "title": "INV-2036 · Wingtip Supplies",
859
+ "start": "2026-10-18",
860
+ "end": "2026-10-18",
861
+ "category": "Paid",
862
+ "tone": "success",
863
+ "person": "Wingtip Supplies",
864
+ "amount": 5430
865
+ },
866
+ {
867
+ "id": "due-7",
868
+ "title": "INV-2035 · Northwind Traders",
869
+ "start": "2026-10-10",
870
+ "end": "2026-10-10",
871
+ "category": "Paid",
872
+ "tone": "success",
873
+ "person": "Northwind Traders",
874
+ "amount": 3690.75
875
+ },
876
+ {
877
+ "id": "due-8",
878
+ "title": "INV-2034 · Contoso Ltd",
879
+ "start": "2026-10-03",
880
+ "end": "2026-10-03",
881
+ "category": "Paid",
882
+ "tone": "success",
883
+ "person": "Contoso Ltd",
884
+ "amount": 9120
885
+ },
886
+ {
887
+ "id": "due-9",
888
+ "title": "INV-2033 · Fabrikam Inc",
889
+ "start": "2026-09-12",
890
+ "end": "2026-09-12",
891
+ "category": "Overdue",
892
+ "tone": "danger",
893
+ "person": "Fabrikam Inc",
894
+ "amount": 860
895
+ },
896
+ {
897
+ "id": "due-10",
898
+ "title": "INV-2032 · Adventure Works",
899
+ "start": "2026-09-20",
900
+ "end": "2026-09-20",
901
+ "category": "Paid",
902
+ "tone": "success",
903
+ "person": "Adventure Works",
904
+ "amount": 6275
905
+ },
906
+ {
907
+ "id": "due-11",
908
+ "title": "INV-2042 · Wingtip Supplies",
909
+ "start": "2026-11-13",
910
+ "end": "2026-11-13",
911
+ "category": "Draft",
912
+ "tone": "neutral",
913
+ "person": "Wingtip Supplies",
914
+ "amount": 3150
915
+ }
916
+ ]
917
+ },
918
+ {
919
+ "shape": "InvoicingDueColumns",
920
+ "rows": [
921
+ {
922
+ "field": "title",
923
+ "header": "Invoice"
924
+ },
925
+ {
926
+ "field": "start",
927
+ "header": "Due",
928
+ "kind": "date"
929
+ },
930
+ {
931
+ "field": "category",
932
+ "header": "Status"
933
+ },
934
+ {
935
+ "field": "amount",
936
+ "header": "Amount",
937
+ "kind": "currency"
938
+ }
939
+ ]
940
+ },
941
+ {
942
+ "shape": "InvoicingRecordPaymentSections",
943
+ "rows": [
944
+ {
945
+ "id": "form",
946
+ "title": "Record a payment",
947
+ "columns": 1,
948
+ "fields": [
949
+ {
950
+ "name": "received",
951
+ "label": "Received",
952
+ "type": "date",
953
+ "required": true
954
+ },
955
+ {
956
+ "name": "amount",
957
+ "label": "Amount",
958
+ "type": "currency",
959
+ "required": true
960
+ },
961
+ {
962
+ "name": "method",
963
+ "label": "Method",
964
+ "type": "select",
965
+ "options": [
966
+ "Bank transfer",
967
+ "Card",
968
+ "Direct debit"
969
+ ],
970
+ "required": true
971
+ },
972
+ {
973
+ "name": "reference",
974
+ "label": "Reference",
975
+ "type": "text"
976
+ }
977
+ ]
978
+ }
979
+ ]
980
+ },
981
+ {
982
+ "shape": "InvoicingFormErrors",
983
+ "rows": [
984
+ {}
985
+ ]
986
+ }
987
+ ]
988
+ }