Feature Request Expand client webhook payloads (clients.registered, clients.updated, clients.address.updated) to include: tax_id, tax_id_type (e.g., vat/cif/nif/ein), tax_country (ISO), tax_exempt, tax_exempt_code, tax_exempt_number, legal_name/company_name, billing_currency (ISO 4217), billing_email, default_payment_terms, normalized address, phone (optional), language (ISO 639-1), metadata/custom_fields, created_at, updated_at. New accounting events: clients.tax.updated; invoices.created (draft), invoices.finalized/issued, invoices.cancelled/voided; credit_notes.created; payments.captured, payments.refunded; subscriptions.created|updated|cancelled. Minimum fields for invoices/payments: identifiers (tenant_id, invoice_id, invoice_number), dates, status, currency/exchange rate, totals (subtotal/tax/total/paid/balance), client block (client_id, client_tax_id, client_legal_name, client_country), items (sku, description, quantity, unit_price, discount, tax_rate, tax_code), pdf_url (if applicable), applied payments[]/credit_notes[]. Delivery & DX: HMAC-SHA256 signature + timestamp, idempotency event ID, retries with backoff, payload versioning, field selection per webhook, and test fire from the admin.
How Would You Use This in Upmind? Client sync: On clients.registered/updated (or clients.tax.updated), our automation upserts the contact in our accounting system using client_id as the stable key while mapping tax_id and fiscal fields—no extra API fetch needed. Invoice sync: On invoices.finalized/issued, we create the invoice in the accounting tool with line items, taxes, discounts, and link back to the PDF. Payment sync: On payments.captured/refunded, we reconcile payments and refunds automatically. This enables an end-to-end flow (client → invoice → payment) using webhooks only, or via n8n/ETL with minimal API lookups.
What problem does this solve for you? Missing tax_id in client webhooks forces an extra API request after every event, increasing latency, rate-limit pressure, and risk of race conditions or mismatched data. Incomplete invoicing coverage hampers real-time accounting, requiring manual reconciliation and creating compliance risks in strict tax jurisdictions. The result is slower billing, higher operational load, and more chances for human error.
Impact of not having this feature Operational: Extra engineering to orchestrate API lookups; brittle workflows; slower posting of invoices and payments. Compliance: Higher risk of incorrect tax data syncing and audit trail gaps. Business: Delays in revenue recognition, cash allocation, and financial reporting; reduced scalability as sales volume grows.
Log in to comment and vote
No comments yet
Be the first to share your thoughts.