Actions and results

What each Sales button and automatic behaviour does, with worked numbers and what the system refuses.

On this page (24)

Quotations

ActionWhenWhat you doWhat happens
List shows drafts onlySome drafts and confirmed ordersOpen Quotations, then Sales ordersQuotations lists only Draft documents; Sales orders lists Confirmed, Delivered and Cancelled; counts match
Pivot viewSeveral quotationsSwitch View to Pivot; group rows by customer, columns by statusTotals equal the list totals for the same filters
Bulk deleteTwo drafts and one confirmed order selectedSelect them, Delete, confirmDrafts removed; the confirmed one is kept and named as refused ('not drafts, or not yours to change')
Open by number in the address barA quotation SO-xxxxPaste .../sales/quotations/SO-xxxx into the browserThe record opens directly; after Confirm the same record is titled Sales order

Quotations / Sales orders

ActionWhenWhat you doWhat happens
Delivery and Invoice status columnsOrders in different statesSort and filter on Delivery status and Invoice statusLabels: Nothing to deliver / To deliver / Partially delivered / Fully delivered and Nothing to invoice / To invoice / Partially / Fully / Over-invoiced; filter returns matching orders

Quotation record

ActionWhenWhat you doWhat happens
Create a quotationSigned in as company admin; active customer and products with VAT 5%New quotation; pick customer; add 2 lines (qty, price, 5% discount on one); Save draftSaved as Draft with number SO-...; totals = subtotal - discount + 5% VAT; message 'Saved. The record is read-only - choose Edit to continue.'; History shows 'sale.saved'
VAT and totals arithmeticLine 3 x 100.00, 10% discount, VAT 5%Net 270.00, VAT 13.50, Total 283.50 on screen, on the list and on the printed quotation
Keyboard line entryDraft in editF3 product, F4 quantity, Enter; F5 price, F6 discount; Ctrl+Enter new line; Enter on the last cell of the last rowEach key jumps to its field; a new line is added only when the current line has a product; Ctrl+S saves
Reorder linesDraft with 3 linesDrag a line by its number, or focus the grip and press Alt+DownOrder changes and is kept after Save and on print
Import lines from CSVCSV: product_code,quantity,price,discountImport; choose the file'n lines imported.'; unknown codes skipped; all unknown -> 'No matching products were found...'
Quick create customerIn Customer type a new name, choose 'Create new customer'; fill code, name, TRN, terms; CreateCustomer created as Customer (B2B), selected on the quotation; appears in Customers
Edit a draft / discardA saved draftEdit; change a quantity; Discard; then Edit, change, SaveDiscard keeps the saved values; Save stores the change and History shows old/new values
Edit conflictSame draft open in two tabsSave in tab 1, then save in tab 2Tab 2 refused: 'This record changed. Reload it before saving.'
Validity date set automaticallySettings validity 30 daysCreate and save a quotation without Valid untilCommercial tab shows Valid until = today + 30; back-dated quotation still counts from today
Price list pricingCustomer has a price list with a lower price for product PAdd P to a new quotation; save; open Prices & marginExpected: line takes the price-list price (source = price list). Note what the screen fills in
DuplicateA confirmed orderActions > DuplicateNew draft with a new number, today's date, same customer, header and lines; no deliveries, invoices or payments
Archive / restoreA cancelled orderActions > Archive, then find it and Restore'Archived. It keeps its number and its history; it is out of the list.'; Restore puts it back
Delete a draftA draftActions > Delete > DeleteDialog warns about numbering gaps; draft removed; on a confirmed order Delete is disabled (API: 'Only a draft can be deleted. Cancel it, or archive it.')
PrintA draft and a confirmed orderPrint menu on eachDraft offers the quotation; confirmed offers the sales order; PDF shows customer TRN, lines, VAT 5% and totals in AED; Arabic labels when printed in Arabic
Smart buttonsAn order with a delivery and an invoiceClick Invoices, Deliveries, Journal entry, CustomerEach opens its record (several = a picker); a count with nothing behind it shows a dash
Sidebar figuresCustomer with credit limit 10,000 and an open invoiceOpen a quotation for the customerCredit limit, Outstanding and Available shown; recent sales listed; margin % shown red when negative
Confirm orderValid draft, customer within creditConfirm orderState Confirmed, title Sales order, moves to Sales orders list; a draft delivery order raised from the default warehouse; credit reserved; History 'sale.confirm'
Confirm with no lines / zero totalDraft with no linesConfirm orderRefused: 'Add at least one line before confirming.'
Confirm an expired quotationValid until = yesterdayConfirm orderRefused: 'This quotation expired on <date>. Extend its validity to confirm it.'
Blocked / held customerCustomer on hold 'Sales orders' or blacklistedConfirm orderRefused: 'Customer transaction hold: Sales orders. <reason>' or '<name> is blacklisted: <reason>.'
Free line needs a reasonLine with 100% discount (net 0)Confirm orderRefused: '<description> is given away free: say why on the line.' (there is no field for the reason on screen
Confirm retried with the same key (API)POST transition confirm twice with the same 'key'; then with the same key and different bodySecond identical call returns the same order; different body -> 'That request key was already used for a different confirmation.'

Quotation tab

ActionWhenWhat you doWhat happens
Send quotationDraft with lines, not expiredQuotation tab > Send quotation'Quotation sent: a new version is frozen.'; version 1 listed as Sent with a reference hash; customer's acceptance link shown
Send again without changeVersion 1 sentSend quotation again with no editsRefused: 'Version 1 already says exactly this. Send that one again from the mail screen.'
Edit after sending supersedesVersion 1 sentEdit a price, save; send againVersion 1 becomes Replaced; version 2 Sent; old link says the version has been replaced
Record acceptance by staffVersion sentAccepted by + Evidence; Record acceptance'Acceptance recorded.'; version Accepted with name · recorded
Edit an accepted quotationVersion acceptedEdit a line and saveRefused: 'The customer accepted version n of this quotation. Revise it to change it.'; Revise -> 'Quotation open for changes again.'
Apply a templateAn active template with 2 lines, 1 optional product, 15 days, termsChoose template; Apply template'Template applied.'; lines added, optional product listed, Valid until = today + 15, notes = terms (if empty)
Optional productsAdd an optional product; Save optional products; then Add to quotationListed outside the total; after Add it becomes a line, totals change and the option shows Added

Public acceptance page

ActionWhenWhat you doWhat happens
Customer accepts by linkFresh link from FN-022Open the link in a private window; enter name; Accept quotationPage shows lines, untaxed, tax, total; after accepting: 'Accepted by <name> on <date>. Thank you.'; the quotation shows Accepted · by link
Expired or replaced linkA superseded version link; an expired oneOpen each linkReplaced: 'This version has been replaced by a newer offer. Please use the latest link.'; expired: 'This offer expired on <date>. Please ask for a renewed quotation.'; no Accept form

Prices & margin tab

ActionWhenWhat you doWhat happens
Line price reviewLines with list price, override and costOpen Prices & marginPer line: list price, unit price, 'Typed over the list' when overridden, discount, cost and margin % (margin hidden without margin rights)
Discount over the limit holdsSettings: largest discount without approval = 10%Line discount 15%; Confirm orderRefused: 'This quotation needs price approval before it is confirmed: A 15% discount is over the 10% allowed without approval.'
Request approvalFN-032 quotationWhy this price? + Request approval'Approval requested.'; status 'Waiting for price approval'; appears in Price approvals; Confirm says 'Waiting for price approval: ...'
Change after approvalPrices approvedEdit the price or quantity, save, ConfirmApproval no longer matches: confirm needs a new approval (approve of a changed quote -> 'The quotation has changed since this was asked for; ask again.')
Update pricesPrice list changed after the quotation was pricedConfirm (refused), then Update prices, ConfirmConfirm refused 'Prices on the list have changed since this quotation was priced...'; Update prices -> 'Prices updated from the price list.'; then confirms
Margin control Warn vs HoldSettings minimum margin 20%; a line at 10% marginMargin control = Warn, check; then Hold, ConfirmWarn: shown in Price warnings, confirm allowed; Hold: confirm refused until approved
Hard price rulesProduct minimum sale price 50; list row lockedPrice 40; or change a locked price; ConfirmAlways held: '40.00 is under the product's minimum sale price of 50.00.' / 'The price list locks this price at ...'

Credit holds

ActionWhenWhat you doWhat happens
Credit check at confirmCustomer policy Hard block, limit 1,000; quotation 5,000Confirm orderRefused with 'Credit check: This takes exposure to ..., ... over the limit of 1,000.00. Ask for a credit override (Finance > Credit control)...'; quotation listed in Credit holds with Why

Sales order record

ActionWhenWhat you doWhat happens
Delivery order raisedConfirmed order with stocked linesClick Deliveries smart buttonOpens the draft delivery (Inventory) from the order's warehouse; validating it in Inventory sets Delivery status
Raise a missing deliveryCompany with 2 warehouses, order without Ship from, no deliveryDeliveries button > choose warehouse > Raise the delivery orderDelivery order created and opened; a second attempt -> 'This order already has a delivery order.'
Deliver (no delivery order)Confirmed order of a company without warehousesDeliverState Delivered; a delivery journal (COGS / inventory) posted; with stock short -> 'Insufficient stock for <CODE>: available n.'
Reset to draftConfirmed order, delivery not validatedReset to draftWith a draft delivery waiting -> 'Cancel delivery <WH/OUT/..> before returning this document to draft.'; after cancelling it -> back to Draft, credit released
Cancel orderDraft or confirmed orderCancelState Cancelled; credit reservation released; drop-ship POs cancelled with it; posted documents -> 'Posted documents require a reversal.'
Create invoice - fullConfirmed order, invoicing policy OrderedCreate invoice; keep quantities; Raise the invoiceDraft customer invoice INV-... opens with the order's lines; order Invoice status = Fully invoiced after posting; Invoices button counts 1
Create invoice - partialOrder of 10 unitsCreate invoice; Invoice now = 4; raise; then Create invoice againFirst invoice for 4; second dialog shows Already invoiced 4, Left 6; Invoice status Partially invoiced
Invoice on delivered quantitiesPolicy Delivered, 10 ordered, 6 deliveredCreate invoice; try 8Refused: '<line>: only 6 can be invoiced now - 6 of 10 delivered, 0 already invoiced.'; with nothing delivered the dialog says nothing more can be invoiced
Over-invoicing refusedFully invoiced orderCreate invoiceDialog: 'Everything on this order has already been invoiced.'
Delivery & invoicing tabPartly delivered and invoiced orderOpen the tabPer line: Ordered, Delivered, Returned, Invoiced, Credited, To deliver, To invoice and the invoicing policy

Availability tab

ActionWhenWhat you doWhat happens
Promise delivery datesDraft or confirmed order with stocked linesOpen Availability; Promise these datesAvailable now / to promise / earliest per line; 'Delivery dates promised.'; the delivery's scheduled date follows the promise

Changes tab

ActionWhenWhat you doWhat happens
Change order - reductionConfirmed order 10 units, nothing deliveredRequest change: quantity 8Applied at once (no approval): 'Change applied.'; order total updated; change listed as Applied
Change order - increase needs approvalConfirmed orderRequest change: price up or quantity up'Change order recorded.' Waiting for approval; appears under Price approvals > Change orders waiting; another user with confirm rights approves -> Applied
Cancel open balanceOrder 10, 6 deliveredCancel what is still to come: Reason 'Cannot supply'; Cancel open balance'Open balance cancelled.'; 4 cancelled; Delivery status Fully delivered; with 'Other' and no note -> 'This reason needs a note.'

Returns tab

ActionWhenWhat you doWhat happens
Create returnDelivered orderComing back 1; reason Defective; Create return'Return drafted. Authorise and receive it in Inventory > Returns.'; return listed with status
Credit note from a received returnReturn received in InventoryCreate credit noteDraft credit note opens tied to the invoice lines; after posting, Credited column on the order updates

Down payments & milestones

ActionWhenWhat you doWhat happens
Down payment invoiceConfirmed order untaxed 10,000Percentage 20; Create down payment invoice'Down payment invoice raised.' Draft invoice 2,000 + VAT; listed under Down payments; the final invoice deducts it ('Deducted on')
Milestone billingOrder with Invoicing policy = MilestonesAdd steps 30/70; Save steps; Mark reached with proof; Invoice this step'Billing steps saved.', 'Step reached.', 'Step invoiced.'; invoice for 30%; unreached step -> 'Only a reached step is invoiced.'

Customer invoice

ActionWhenWhat you doWhat happens
Post invoiceDraft invoice from FN-050Post invoiceState Posted; journal: Dr receivable total, Cr revenue net, Cr output VAT 5%; payment badge Not paid; e-invoice handed over where e-invoicing is on
New invoice without an orderCustomer invoices > New invoice; customer and a service line; Save; Post invoicePosts like any invoice; Orders smart button shows a dash
Record receipt (partial)Posted invoice 1,050.00Record receipt 500 to a bank accountPayment badge Partially paid; Outstanding 550.00; Payments tab lists the receipt with Open / Reverse payment
Reverse invoicePosted invoice with a receiptReverse; then reverse the payment first; then ReverseFirst refused 'Reverse document payments first.'; after reversing the receipt the invoice is Reversed and its journal reversed
Credit this invoicePosted invoiceCredit this invoiceDraft credit note opens with all the invoice lines, Against invoice set, note 'Credit of INV-...'

Customer invoices list

ActionWhenWhat you doWhat happens
Register receipt for several invoicesTwo posted invoices of the same customerSelect both; Register receiptOne payment settles both; mixing customers -> 'One payment settles one partner's charges...'

Credit note

ActionWhenWhat you doWhat happens
Credit note limitsInvoice for 5 units, earlier note of 2Credit note against it for 4Refused: 'INV-... has only 3 of <CODE> left to credit.'
Approve and post noteDraft credit noteApprove note, then Post noteApproved, then Posted; journal reverses receivable, revenue and VAT; goods return via the return receipt, not the note

Sales settings

ActionWhenWhat you doWhat happens
Change and audit settingssales.configureChange validity to 15, margin control Warn; Save'Sales settings saved.'; Audit shows 'sales.settings' with before/after values; second tab save -> conflict
Customer PO requiredCustomer PO number = Required to confirmConfirm a quotation without PORefused: 'This company needs the customer's PO number before an order is confirmed.'
Repeated customer PORepeated customer PO = BlockTwo quotations for the same customer with PO-TEST-001; confirm the secondRefused: 'Customer PO PO-TEST-001 is already on SO-...'; with Warn only a warning in the Quotation tab
Delivery tolerancesOver-delivery 10%, under-delivery 5%In Inventory validate a delivery of 11.5 of 10; then 9.6 of 1011.5 refused 'Only 11 may ship against 10 ordered - the over-delivery tolerance is 10%.'; 9.6 closes the line without a backorder
Ship completeShipping policy = When all products are readyValidate a part delivery with backorderRefused: 'This company ships orders complete. Deliver everything, or cancel what will not ship.'
Credit re-check at dispatch / invoicingTicks on; customer now over a Hard block limitValidate the delivery; post the invoiceRefused with 'Credit check: the customer is <n> over the limit of <limit>. Ask for a credit override before this goes further.'; order placed on credit hold
Drop-ship evidenceTick 'A drop shipment needs the supplier's shipment reference'Validate a drop shipment with no referenceRefused: 'Enter the supplier's shipment reference (waybill or tracking number) to confirm the drop shipment.'

Quotation templates

ActionWhenWhat you doWhat happens
Create and archive a templatesales.configureNew template code, name, 2 lines; Save; set ArchivedSaved and offered in the Quotation tab; once Archived it is no longer offered

Return and cancellation reasons

ActionWhenWhat you doWhat happens
Standard reasons and new reasonNew companyOpen the screen; add a cancellation reason 'late_install' needing a noteStandard set present (7 return, 4 cancel); new reason offered in Cancel open balance and requires a note

Commission plans / Commissions

ActionWhenWhat you doWhat happens
Commission statementPlan 2.5% for everyone; posted invoices from orders with a salespersonCommissions for this monthCommission = 2.5% of untaxed per salesperson; a credit note shows as clawback (negative)

Blanket agreements

ActionWhenWhat you doWhat happens
Create and activate an agreementUser A drafts, user B activatesA: New agreement, customer, period, 2 products; Save. B: Activate'Agreement saved.', then 'Agreement active.' with Activated by B; Released / Left per product
Close an agreementActive agreementClose'Agreement closed.'; orders released against it afterwards are refused: 'Agreement SA-... is closed, so nothing can be released against it.'

Reports

ActionWhenWhat you doWhat happens
Sales analysis and open ordersPosted invoices and open ordersOpen R017 for this month; open R019R017 lines match posted invoices less credit notes (untaxed, AED); R019 shows To deliver / To invoice matching each order's tab
Gross margin needs margin rightsUser without sales.margin.reveal / product.cost.viewOpen Reporting > Gross margin (direct link)Menu hidden; direct call refused: 'Gross margin needs the right to see sales margins.'
Delivery performance and conversionOrders with promised dates; sent quotationsOpen R020 and Quotation conversionOn time / In full / OTIF per order; conversion shows each sent quotation and its outcome

Applications > Sales > Fields

ActionWhenWhat you doWhat happens
Branch field RequiredBranch mode = RequiredConfirm a quotation without a branchBranch shows *; Confirm refused 'Choose a branch: this company requires one on every sales order.'; impact preview lists drafts without a branch
Branch field HiddenBranch mode = Hidden, derivation 'No branch'Open a new quotation; send a branch via APIField not shown; existing documents keep their branch read-only; API value refused 'Branch is turned off for sales documents in this company.'
Hidden blocked by impactA branch with its own numberingTry to set Branch to Hidden with 'No branch'Refused with the impact reason '<n> active branch(es) number their own documents, so a sales document needs a branch to take a number.'
Customer PO / Delivery date / Sales team / Incoterm place modesAdmin rights on ApplicationsSet each to Hidden, then RequiredHidden: field gone on new orders; Required: confirm refused '<label> is required by this company before this step.'

Applications > Sales > Features

ActionWhenWhat you doWhat happens
Branch on sales documents switchTurn the feature off and onOff hides the Branch field everywhere on sales documents; listed capabilities show their status (Commission accrual = planned)

Sales dashboard

ActionWhenWhat you doWhat happens
Dashboard figuresSome real ordersOpen Sales > DashboardExpected: figures from the company's orders. Check the footer note - the page currently shows sample figures