Sales GIN Stock Out (Internal)
The sales-side goods issue that actually takes stock out: on FINAL the issued quantities leave the branch and location on the document and the lines are journalled like a sale, which is what sets it apart from the similarly named Sales GIN, which moves and posts nothing. It is not installable from the applet store and is reached through the API. Do not finalise one and a Sales Invoice for the same goods without a knock-off link between them: both take stock out, so the stock comes out twice.
INTERNAL_SALES_GIN_STOCK_OUT, which is registered in the backend and reachable through the generic-document API. If you are looking for the goods issue note you can open from a menu, that is Sales GIN (Internal) — a different document with different effects, described below.Overview
Sales GIN Stock Out (Internal) is the sales-side goods issue that actually takes stock out. Its server document type is INTERNAL_SALES_GIN_STOCK_OUT, whose quantity signum is −1 and amount signum is +1 — the same pair the Sales Invoice carries. Setting it to FINAL removes the issued quantities from the branch and location on the document, and produces journal lines under the SALES posting group.
That is the whole reason it is documented separately. The applet with the similar name, Sales GIN (Internal), writes INTERNAL_SALES_GOODS_ISSUED_NOTE, whose quantity and amount signums are both 0 — it records that goods were issued and changes nothing in the stock or general ledger.
| Sales GIN (Internal) | Sales GIN Stock Out (Internal) | |
|---|---|---|
| Server document type | INTERNAL_SALES_GOODS_ISSUED_NOTE | INTERNAL_SALES_GIN_STOCK_OUT |
| Quantity signum | 0 | −1 |
| Amount signum | 0 | +1 |
| Moves stock on FINAL | No | Yes |
| Posts a journal on FINAL | No | Yes, under the SALES group |
| In the applet registry | Yes (internalSalesGINApplet) | No |
Where it fits
| Upstream | This document | Downstream |
|---|---|---|
| A Sales Order (Internal) or other sales demand | The goods are picked, the GIN Stock Out is created and set to FINAL, and stock leaves the branch and location named on Main Details | Sales Invoice (Internal) bills the customer; Stock Balance reflects the reduction |
| Customer, branch, location and sales-agent master data | Read on the Main Details and Account tabs | — |
| — | Contra and Settlement tabs | Settlement lines are written under the receipt / payment voucher document types, not under this one |
Screens and menus
Two menu entries, plus settings and personalization.
| Menu | Route | What it shows |
|---|---|---|
| Internal Sales GIN Stock Out | internal-sales-gin-stock-out | The document listing, and the create / edit screens behind it. The landing screen |
| Line Items | line-items | A flat listing of the line items across documents, with its own edit screen |
| Settings | settings/… | Application Settings, Default Selection, Printable Format Settings — see Configuration |
| Personalization | personalization/… | Default Selection, Sidebar |
Listing columns: Sales GIN Stock Out No (server_doc_1), Posting Status, Branch, Customer Name, Sales Agent, Updated Date, Created Date, Transaction Date, Created by. Branch, Customer Name, Sales Agent and Created by carry floating filters. The listing has one action, FINAL, which finalises the selected rows.
Create screen tabs: Main Details · Account · Lines · Settlement · Department Hdr.
Edit screen tabs: Main Details · Account · Lines · Settlement · Department Hdr · Contra · Doc Link · Attachments · Export. The tab order is configurable (see below), and Settlement and Department Hdr can be hidden. The edit screen’s buttons are RESET, FINAL and SAVE, with a two-click DELETE at the foot of the screen.
Seven settings routes exist with no menu entry and are reachable only by URL: webhook, feature-visibility, permission-set-listing, client-side-permission-listing, user-permission-listing, team-permission-listing and role-permission-listing. The personalization menu lists only Default Selection; its Field Settings entry is commented out.
Configuration
Before you can use it
| Prerequisite | Where | Why |
|---|---|---|
| The company must have a default GL mapping for the sales posting group | Chart of Accounts and the company’s default GL codes | The document posts under the SALES group. With no mapping the journal cannot be built |
| Branch and location records, and stock on hand at that location | Organisation Applet (Company, Branch, Location), Stock Balance | Main Details requires a company, branch and location, and FINAL takes stock out of exactly that pair |
| Customer records, and a sales agent | Customer Maintenance | Main Details marks Sales Agent, Member Card and Customer as required form controls; the edit screen’s SAVE is disabled while the Main Details form is invalid |
| A way to reach the applet | — | See the warning at the top of this page. There is no registry row, so the applet is not installable from the store |
Applet settings
Application Settings is the shared settings screen; Default Selection and Printable Format Settings are this applet’s own. Settings are tenant-wide.
These are the settings this applet actually reads:
| Setting | Where set | What it controls | Default | Effect when changed |
|---|---|---|---|---|
HIDE_SETTLEMENT_TAB | Application Settings | Removes the Settlement tab from the edit screen | unset (tab shown) | The tab disappears; settlement lines already on the document are untouched |
HIDE_DEPARTMENT_HDR_TAB | Application Settings | Removes the Department Hdr tab from the edit screen | unset (tab shown) | As above |
SALES_GIN_STOCK_OUT_DETAILS_TAB_ORDER | Default Selection — drag the tab list into the order you want, then SAVE | The left-to-right order of the edit screen’s tabs | The order listed under Screens | Tabs added to the applet after the order was saved are appended at the end rather than lost |
ENABLE_BRANCH_FILTER | Application Settings | Filters the customer picker on the Account tab to the document’s branch | unset (no filter) | With it on, only customers linked to the branch appear |
salesManLabels | Application Settings | The label set offered by the sales-agent picker on Main Details | unset | — |
SHOW_DOCUMENT_DELETE_BUTTON | Applet-wide settings only | Shows the DELETE button on the edit screen | unset (button hidden) | The button is shown only on a document that is not FINAL; a FINAL document can never be deleted from this screen |
DEFAULT_BRANCH, DEFAULT_LOCATION and DEFAULT_COMPANY are rendered on Default Selection and saved (choosing a branch also fills the location from that branch’s main location), but no screen in this applet reads them back — Main Details takes its company, branch and location from the document being edited. Setting them here changes nothing in this applet.
Printable Format Settings is an applet-local screen for binding printable formats to the document.
Document behaviour settings
FINAL is one-way from this screen: once a document is FINAL the Main Details form is disabled with the single exception of Remarks, which stays editable. There is no VOID action on either screen.
Feature visibility / permissions
Server-side, the four generic-document permissions for this type are TNT_API_DOC_INTERNAL_SALES_GIN_STOCK_OUT_CREATE_TGT_GUID, …_UPDATE_…, …_READ_… and …_DELETE_…, each carrying its own target GUID. They are what the generic-document API checks for this type.
The applet ships the shared Feature Visibility screen and the five permission listings, including a client-side permission listing, but none of them appears in the settings menu, so they are reachable only by URL.
Fields
Main Details — the form controls, with their validators as declared:
| Field | Meaning | Required | Notes |
|---|---|---|---|
| Company | The company the issue belongs to | Yes | Patched from the document |
| Branch | The branch stock leaves | Yes | Patched from the document’s guid_branch |
| Location | The location stock leaves | Yes | Patched from guid_store |
| Sales Agent | The agent credited with the issue | Yes | Offers only employees carrying an Employee Category label, narrowed to the salesManLabels set when one is configured — an employee with no category cannot be picked. The listing’s Sales Agent column looks the name up afresh each time. |
| Member Card | Membership card number | Yes | CREATE and SAVE stay grey until a card is picked, even for a customer who is not a member. The picker lists every membership card in the tenant and does not check that the card belongs to the customer on the Account tab. |
| Customer | The customer receiving the goods | Yes | Read-only here: the name (and contact) copied when the customer was picked on the Account tab. The listing’s Customer Name is looked up fresh, so a customer renamed since shows the new name in the listing and the old one on the document. |
| Transaction Date | Document date | No | Defaults to today when the document has none |
| Credit Terms | The customer’s terms | No | Disabled until the Account tab’s customer carries credit terms; then a picker of those terms, and picking one fills Due Date. |
| Due Date | When the customer should pay | No | Filled when you pick a Credit Term, from the term’s own set year, month and day plus its add-on. The Sales Invoice falls back to the Transaction Date when a term has no set date; this form does not, so an ordinary “30 days” term leaves Due Date without a usable date (read, not run). Check it after picking a term, and pick the date by hand. |
| Currency | Document currency | No | A new document starts in MYR, and picking a branch switches it to the branch’s currency; you can change it after. Nothing on this form asks for an exchange rate, and changing the currency does not reprice the lines. |
| Document type; Doc No (Tenant), Doc No (Company), Doc No (Branch) | The server document type and the three document numbers | No | Shown only on a saved document. The boxes accept typing, but nothing typed there is saved — the numbers are the server’s. |
Reference, Remarks, Permit No and Tracking ID are free text; Remarks is the one field that stays editable after FINAL.
Account tab carries the entity, bill-to and ship-to details and addresses. Lines is the item workspace. Settlement, Department Hdr, Contra, Doc Link, Attachments and Export are the standard generic-document tabs.
Lifecycle and effects
What it posts. Every item line takes stock out of the document’s branch and location, and every item line is also journalled — the document carries the same signs as a sales invoice. There is no VOID action on either screen.
Status flow: a new document is created in the applet’s draft state, saved, and finalised with FINAL from either the listing or the edit screen. FINAL is not reversible from these screens, and a FINAL document cannot be deleted. Before FINAL, and only when SHOW_DOCUMENT_DELETE_BUTTON is set, the edit screen offers a two-click DELETE.
Related applets
- Sales GIN (Internal) — the registered goods issue note. Same word, different document: it moves nothing and posts nothing. Read that page first if you are choosing between them.
- Purchase GIN (Internal) — the purchase-side counterpart family.
- Sales Order (Internal) — the usual upstream demand.
- Sales Invoice (Internal) — carries the same signs; see the warning under Where it fits.
- Goods Delivery Note (Internal) — the delivery document, which also moves no stock.
- Stock Balance — where the reduction shows up.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| You cannot find this applet in the applet store, or add it to a menu | There is no active registry entry for it | Correct. Use Sales GIN (Internal) for a menu-installable goods issue note, or raise the document through the generic-document API |
| Stock came out twice for one shipment | A GIN Stock Out and a Sales Invoice were both finalised for the same items without a knock-off link | Both types take stock out. Link them, or issue only one of the two |
| SAVE is greyed out on the edit screen | The Main Details form is invalid, there are no lines, or the Account entity form is invalid. Sales Agent, Member Card and Customer are all declared required | Fill all three on Main Details, and add at least one line |
| Every field except Remarks is read-only | The document is FINAL. The form is disabled on FINAL and only Remarks is re-enabled | Remarks is the only field you can still change. There is no VOID |
| The DELETE button is not there | SHOW_DOCUMENT_DELETE_BUTTON is not set applet-wide, or the document is FINAL | A FINAL document can never be deleted from this screen, whatever the setting |
| An ETL import of this document type fails | The ETL endpoints do not recognise this document type | Use the ordinary generic-document create endpoints |
Related documentation
- Sales Workflow applets — the rest of the sales document family
- Inventory Workflow applets — stock documents and stock balance