History is limited to the signed-in customer. Update and delete only apply while the request is still pending.
Co-authored-by: Cursor <cursoragent@cursor.com>
Wire outbound Invoice/Document sync after confirmed ops, store sync status with timeout lock, and keep SQL credentials out of frontend responses.
Co-authored-by: Cursor <cursoragent@cursor.com>
Clear tahesab_id on locally successful rows so they re-enter the send queue without touching panel customer codes.
Co-authored-by: Cursor <cursoragent@cursor.com>
After pending docs finish, the same pump writes customers without a code into Tahesab. Inbound import is server-side; the admin only polls status.
Co-authored-by: Cursor <cursoragent@cursor.com>
Send leftover orders and charges one-by-one with a gap so Tahesab is not rate-limited, skip already-synced rows, and expose start/stop plus progress on existing status APIs.
Co-authored-by: Cursor <cursoragent@cursor.com>
Keep cover orders pending until colleague sts 2/4/6 via callback or 35s poll. Nightly prices:prune also drops old log tables.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add inbound mande sync on customer import plus per-customer and bulk wallet-sync endpoints so previously linked accounts can catch up.
Co-authored-by: Cursor <cursoragent@cursor.com>
Port tables, APIs, and overdue cron from goldali, default the flag off, and keep customer routes behind auth.
Co-authored-by: Cursor <cursoragent@cursor.com>
Enable immediate automation test runs without waiting for the scheduled hour, expose send history for debugging, and return all SuperAdmin overlay keys on refresh instead of only enable_automation.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use trading_hours_by_day for close_price gates, prefer public SuperAdmin fetch, and add refresh endpoint/command so stale last-good cache no longer keeps switches like enable_automation off.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add /super/settings endpoints and API middleware that returns generic 503 while keeping unlock routes whitelisted.
Co-authored-by: Cursor <cursoragent@cursor.com>