When to use this endpoint

Load receipt descriptions and delivered quantities for CRM1 viewing or returns.

Authentication and permissions

Authenticate with signed API-key fields or a logged-in CRM session. Session CSRF, account-active and IP restrictions still apply. These handlers add no receipt-specific page, finance, department or record-owner permission check.

Records are scoped to the authenticated tenant. CRM1 displays Goods Received with employer feature bit 262144; CRM2 checks features2.goodsReceivedNotes. Those screen gates are not enforced by these handlers. Mobile receipt routes run separately through the mobile intermediary and have different permission and ownership checks.

Parameters

ParameterTypeRequiredDescription
idIntegerYesGoods Received header ID, intval must be positive. Not a line ID; parent existence is not checked.

Example request

FM_api('GoodsReceivedEntries_get', ['id'=>'531']);

Example response

[["1","318","Filter","2","701"],["2","0","Packing charge","1","702"]]

Each tuple is [stock type, stock ID, description, delivered quantity, receipt-line ID]. Numeric database values remain strings; missing catalog-name lookups can be false.

Errors and unusual responses

ResponseCondition
{"error":"not logged in"}No authenticated tenant context is available. Invalid signed credentials can be rejected by the dispatcher before the handler runs.
{"error":"missing or invalid parameter: id"}ID omitted or below 1 after intval.

Legacy application errors may be returned with HTTP 200. Check the decoded response for error, not only the HTTP status.

Behaviour and edge cases

  • Reads every purchases_in_entries row with grn_id=id, without order/pagination/deleted or parent checks. Orphan lines can remain visible after header-only deletion.
  • Type 1 description is the current catalog name fetched per row, including retained deleted/archived catalog records. Type 2 uses the saved stock_text. Other types return an empty description.
  • No purchase-order cost, received serial/batch metadata, outstanding quantity or stock movement is calculated. No match returns []; failed reads are not distinctly reported.

See it in Fieldmotion

CRM1

Open a Goods Received Note to print/view it, or choose a receipt while creating Goods Returned. Inspect GoodsReceivedEntries_get; the caller uses positional tuple slots.

CRM2

The mapped Goods Received widget uses GoodsReceivedEntry_getRequestedDetails via header expansion, not these tuples. CRM2 return flows use mapped detail readers.

Related endpoints