operator_idstring required
payment_kind'appointments' | 'supervision_t0_extra' | 'supervision_mini_equipe' | 'supervisions'
Operator payment row kind.
operator_namestring nullable
Operator display name (first_name + last_name)
operator_ibanstring nullable
Operator IBAN from profile
operator_tax_regimestring nullable
Current operator tax regime from profile
payment_monthstring date required
First day of the payment month
total_visit_countinteger nullable
Total completed visits in the payment month (including non-billable/free visits)
billable_visit_countinteger nullable
Visits used for billing (computed on create from FATTO appointments; same rule as invoice modal)
invoice_received_atstring date-time nullable
invoice_amountstring nullable
invoice_status'pending' | 'invoice_declared' | 'correction_declared' | 'wrong_invoice_number' | 'verified' | 'amount_mismatch'
Operator payment invoice workflow status.
invoice_declared / correction_declared are what the expert claims when closing the
corresponding alert: the document number they say is on Zucchetti. Neither is evidence — the
sweep still has to find that number and check its total before the voce reaches verified.
wrong_invoice_number is the sweep's answer when that number is nowhere on the portal.
invoice_payment_urlstring nullable
Storage path of the legacy uploaded invoice; read-only, no longer written
invoice_numberstring nullable
SDI invoice number the expert issued, read from Zucchetti; used in the monthly payment XML
expected_invoice_numberstring nullable
Lookup invoice number declared for this voce.
invoice_verified_atstring date-time nullable
paid_atstring date-time nullable
paid_amountstring nullable
marked_as_sent_atstring date-time nullable
payout_amountstring nullable
Amount to actually transfer.
payout_deducted_supervision_countinteger
Supervisions already subtracted from payout_amount. Drives the compensation causale of the credit transfer.
payout_deducted_amountstring
Euro value of the supervisions subtracted from payout_amount (count x unit).
invoiceable_supervision_countinteger
Supervisions the sales invoice for this voce may cover, counted on the amount computed for the month rather than on the total read from Zucchetti. Gates the send.
supervision_meeting_countinteger
Completed supervision meetings in the payment month
free_supervision_countinteger
Completed free supervision meetings in the payment month
previous_remaining_deductible_supervision_countinteger
Derived deductible supervision meetings carried in from the latest previous paid appointments row
pending_deductible_supervision_countinteger
Deductible supervision meetings available on this row before payment absorption
applied_deductible_supervision_countinteger
Deductible supervision meetings recovered from this invoice
remaining_deductible_supervision_countinteger
Deductible supervision meetings still to recover after this row
verified_sourcestring nullable
How the invoice was verified: 'auto' (Zucchetti match) or 'manual' (admin override)
invoice_tax_regimestring nullable
Operator tax regime snapshot
zucchetti_received_totalstring nullable
Invoice total fetched from Zucchetti for this row (None = not yet fetched)
zucchetti_synced_atstring date-time nullable
Last time the Zucchetti total was fetched for this row
expected_invoice_totalstring nullable
Expected gross invoice total, before rounding tolerances; compared with zucchetti_received_total, not the net transfer amount.
zucchetti_matchstring
Zucchetti total vs the amount expected for the voce, within ZUCCHETTI_MATCH_TOLERANCE_EUR: gross document total (±10c roundings) for appointments, meeting count x unit for supervisions. match | mismatch | unknown.
zucchetti_calculated_netstring nullable
Expected net-to-pay from the fac-simile calculator (regime + billable visits, all regimes). None when not computable.
supervision_invoice_sentboolean
Whether the supervision sales invoice for this operator+month was sent to Zucchetti