Skip to content

Feeding events

Feeding events record what was actually offered and refused. Use them to keep animal or pen intake and feed cost grounded in performed work rather than the planned ration alone.

Open Operations → Feed → Feeding Events. The API requires feed-view permission to read the history, feed-recording permission to create, edit, record a refusal or void an event, and dashboard/analytics permission to export. Some farm-portal controls are not yet hidden reliably for every customer role, so a visible control can still be refused when submitted. Support read-only sessions cannot make these changes.

Feeding event list and actions

The page starts with a recent farm-local date window rather than the farm’s entire feeding history. Review or change From and To before treating an empty list as “nothing was fed.” A selected date range can cover at most 365 inclusive farm days. Use the event Type filter to show individual or group records, and Show voided to bring cancelled entries back into the history. Changing a filter returns to the first page; the list shows 20 records per page.

Column Meaning
Date Farm-local feeding date and time. A voided record also shows the void reason and operator where available.
Type Individual for one animal or Pen for a group event. A pen event also shows the pen name. The current list does not show the individual animal’s tag or name; use the animal’s own history when you need to confirm attribution.
Feed / Ration Direct feed product or saved ration selected when the event was recorded.
Qty Total as-fed kilograms offered.
Refusal Leftover kilograms recorded for this feeding. A dash means no refusal measurement was recorded; it is different from an explicit zero.
Intake Quantity minus refusal. A zero is displayed as a measured zero rather than a missing value.
Animals One for an individual event, or the entered animal count for a pen event.
Cost/kg Saved cost per as-fed kilogram. Manual means an operator overrode the stock-derived price; hover or inspect it for the reason.
Notes Optional event note, up to 1,000 characters.

Choose Details to load the event’s frozen ingredient lines. For a ration, these show planned and actual kilograms and variance. When a cost is available, the screen applies the event’s one average cost per kilogram to every displayed ingredient line; the line amount is an allocation of the event total, not that ingredient’s own historical unit price. The breakdown records what the ration contained when the event was saved; later editing of the ration recipe does not rewrite this historical event.

Export downloads up to 10,000 active events for the current date and type filters. It does not include voided events, even when Show voided is selected, and it does not include the on-screen void reason or operator. Narrow the filters if the matching active set exceeds the synchronous limit. On phones, use the floating action menu for Individual, Batch and Export.

Choose Individual to record feed for one animal. Complete the form as follows:

Control Valid entry and effect
Feeding date and time Required farm-local occurrence time. Record completed work at the time it occurred and do not use this control to schedule future feeding. The current command does not prevent a future value and would consume stock immediately. Do not substitute your device’s local time when working with a farm in another timezone.
Animal Required active animal receiving the feed. Search by its displayed identifiers.
Ration / Feed Item Choose exactly one. A ration distributes the entered quantity across its saved ingredient recipe; a direct feed item consumes that one stock product. Selecting one disables the other. Feed items are limited to active Feed inventory records. The ration picker currently includes inactive rations too; do not use an inactive ration for new work.
Portion of daily ration For ration feeding, choose Full day, 50%, 33.3%, 25% or enter a custom percentage greater than zero and no more than 100. This scales the plan comparison; stock still uses the actual quantity entered below.
Quantity (kg, as-fed) Required positive actual weight offered. Use the displayed suggestion only when it matches the work performed.
Refusal (kg) Optional measured leftover, from zero up to the fed quantity. Intake is calculated as quantity minus refusal.
Cost per kg Optional non-negative as-fed cost. Farmlync suggests the product’s average cost or a weighted ration cost when all required prices are available.
Notes Optional operational context, up to 1,000 characters.

Cost per kg may be calculated from stock. If you manually override it, provide a cost and an Override reason of at most 500 characters so later reports can distinguish entered pricing from stock-derived pricing. Optional Notes accept up to 1,000 characters. Review stock and cost impact, then record the event and verify it in the list.

Before saving, inspect Stock impact. A direct tracked product consumes the entered quantity. A ration consumes its ingredients according to the saved recipe and entered total. If the calculation would take any tracked stock below zero, Farmlync requires you to acknowledge that result and enter a reason. Use this exception only when the physical feed was used but the recorded balance is incomplete; reconcile inventory afterwards.

Choose Batch to record one feed-out for all animals in a physical pen. This is a pen feeding, not feeding a logical animal group.

  1. Enter the required farm-local Feeding date and time for completed work. A future value is not currently blocked and would deduct stock immediately, so do not use this as a scheduling control.
  2. Select the required Pen. The option shows its current animal count.
  3. Confirm Animal Count as a positive whole number. Farmlync initially uses the selected pen’s current count, but you must correct it to the number actually fed at that occurrence.
  4. Choose exactly one Ration or direct Feed Item. If an effective feed plan exists for the pen, its ration and effective dates are shown; you can open the plan in a separate tab.
  5. Enter the positive total Quantity (kg, as-fed) delivered to the pen. For a planned ration, Farmlync can suggest this feed’s total from animals × kilograms per cow per feed; Use copies the suggestion, but does not prove that amount was delivered.
  6. Enter optional Refusal, not greater than fed quantity, and optional Cost per kg. The screen shows the calculated total feed cost when a cost is available.
  7. Review direct-product or per-ingredient stock impact, acknowledge and explain any negative balance, add optional notes and save.

Per-animal cost reporting prorates pen feeding using the pen roster at the event date and the saved animal count. A wrong pen or count therefore affects later animal and pen economics even when the total feed quantity is correct.

Choose Record Refusal when leftover feed is measured after the original event, or Edit Refusal when correcting an existing measurement. Enter kilograms from 0 to the event’s fed quantity. Zero explicitly records that no feed was refused; leaving the event without a refusal is an unknown measurement.

Farmlync checks that the event has not changed since the list loaded. If another user edited it, use Reload latest event, recheck the fed amount and enter the refusal again. Refusal changes update actual intake and the dependent feed views; they do not create another feeding event.

Choose Edit when the feeding occurred but its date, target, source, quantity, cost or note is wrong. Individual events remain individual and the farm-portal form requires an animal. Pen events use their separate pen edit form. Refusal is corrected through its own action. Farmlync reverses the old stock consumption and applies the corrected consumption atomically; it also rejects an edit based on a stale event version. Review the resulting inventory, feed variance and event line details after saving. Until the correction API validates the replacement animal or pen as strictly as creation does, use only a currently valid target from the selected farm.

Choose Void only when the recorded feeding did not happen or was entered against the wrong job. A reason of 1–500 characters is required. Farmlync keeps the event as Voided for audit, restores the stock deducted by it in the same operation, and removes it from the default active list. Enable Show voided to verify the reason and operator. Voiding is different from deleting a ration or correcting a real occurrence.

The current screen still renders Edit, Refusal and Void controls on rows returned by Show voided. Those records are already closed and the API will not mutate them; treat their controls as unavailable and use the row only as audit history.

  • Confirm the event appears at the expected farm-local time and under the correct Individual or Pen type.
  • Open Details and verify the ingredient quantities when a ration was used.
  • Check Refusal and Intake separately; a dash is missing data, while 0 is a recorded zero.
  • If stock was allowed to go negative, reconcile the affected feed products rather than leaving the exception as the permanent balance.
  • Use Feed variance to compare performed feeding with plans and Feed Stock to confirm the physical inventory effect.