Bernt Christian Egeland
|
3a17e102a2
Harden for the Intuit security review: validated redirects, sealed realm id, security headers, same-origin guard (#331)
|
3 недель назад |
Bernt Christian Egeland
|
b628271d03
Keep QuickBooks tax equal to the invoice, push every issued invoice, and pick from searchable lists (#330)
|
3 недель назад |
Bernt Christian Egeland
|
d0f882d33e
Offer TAX and NON to US QuickBooks companies, make the start date a date picker, and say what Sync now does (#329)
|
3 недель назад |
Bernt Christian Egeland
|
80328f8d39
Give the runtime image install its lockfile so registry changes cannot break the build (#328)
|
3 недель назад |
Bernt Christian Egeland
|
a9f20fe6d1
Bump dependencies, pin better-auth to 1.6.29 and clear the remaining audit alerts (#327)
|
3 недель назад |
Bernt Christian Egeland
|
4506f1fb6a
Pass the QuickBooks app keys through the prod and staging deploys (#326)
|
3 недель назад |
Bernt Christian Egeland
|
87dca73a1b
Add an NHTSA connector with a vehicle safety panel (#325)
|
3 недель назад |
Bernt Christian Egeland
|
60dcf39c09
Add a QuickBooks Online connector: invoices, customers and payments both ways (#324)
|
3 недель назад |
Bernt Christian Egeland
|
2069a252d1
Scroll lists inside themselves instead of scrolling the page (#323)
|
3 недель назад |
Bernt Christian Egeland
|
28ab4acfde
Count unread messages in the sidebar and mark a thread read when it is opened (#322)
|
3 недель назад |
Bernt Christian Egeland
|
5cd439f42e
Give the sidebar a workspace header, live work counts and a calmer nav (#321)
|
3 недель назад |
Bernt Christian Egeland
|
009281ec0b
Show admin monthly revenue as a month, not a year (#320)
|
3 недель назад |
Bernt Christian Egeland
|
55342d81ab
Move online payments into the integrations catalog (#319)
|
3 недель назад |
Bernt Christian Egeland
|
f64675675a
Move AI into the integrations catalog (#317)
|
3 недель назад |
Bernt Christian Egeland
|
b36fb5dfca
Let the update banner show itself out after six hours (#316)
|
3 недель назад |
Bernt Christian Egeland
|
cfaaf0a156
Let the schedule card take a technician off a job (#315)
|
3 недель назад |
Bernt Christian Egeland
|
bf205f790c
Let every edit form clear an optional field (#314)
|
3 недель назад |
Bernt Christian Egeland
|
2d421634f8
Scheduling tests: pin the workshop zone to UTC so they pass in any timezone (#313)
|
4 недель назад |
Bernt Christian Egeland
|
d4f0656701
Plate lookup from the header (#312)
|
4 недель назад |
Bernt Christian Egeland
|
9b2ea5d490
RDW Open Data and RegCheck plate lookups (#311)
|
4 недель назад |
Bernt Christian Egeland
|
c4b8a62210
Openapi Automotive plate lookup for France, Italy, Spain, Portugal and the UK (#309)
|
4 недель назад |
Bernt Christian Egeland
|
437301ef57
Let a workshop remove an integration that never finished setting up (#308)
|
4 недель назад |
Bernt Christian Egeland
|
723efb6212
Invoice designs as rows, issued invoices frozen, and a design for parts-only sales (#307)
|
4 недель назад |
Bernt Christian Egeland
|
144515b9dc
Invoice designer: payment terms switches and an editable document title (#306)
|
4 недель назад |
Bernt Christian Egeland
|
2338a31a80
Vegvesen plate lookup, inspection due dates and inspection reminder campaigns (#305)
|
4 недель назад |
Bernt Christian Egeland
|
e8b5608d9b
Move messaging channels into Integrations with zero-touch adoption (#304)
|
4 недель назад |
Bernt Christian Egeland
|
7c46847eca
Universal spreadsheet importer with dry run, undo and templates (#299)
|
4 недель назад |
Bernt Christian Egeland
|
c7881004c9
Integrations platform with Google Calendar, Microsoft 365 and Zoom (#300)
|
4 недель назад |
Bernt Christian Egeland
|
98d7ca504d
Custom fields: live list, default values, and real invoice placement (#297)
|
1 месяц назад |
Bernt Christian Egeland
|
6b601a916a
Let a workshop align the footer logo left, center or right (#296)
|
1 месяц назад |