Workflow

How to Handle a Partial Payment on a Receipt

Verified end to end. Demo run receipt-r-partial-payment-validation-20260519T232700Z selected FT 9999/1704, added a NUM 1.00 payment against a 1.97 value to pay, clicked the payment modal save action, and confirmed no saveDocumentRecibo request was submitted.

Evidence Summary

Route
/vendas/r/create
Customer
[910] 100 Ouvidos Lda
Source invoice
999901704 / FT 9999/1704, total 1.97
Payment state
[NUM] Numerario payment line with value 1.00; shortage 0.97
Evidence file
raw/playwright/workflows/latest-receipt-r-partial-payment-validation.json

Verified receipt partial-payment validation flow

What It Means

Receipt [R] settlement requires payment equal to or greater than the selected document value before the receipt can be saved. A payment row can exist and still be invalid if its value is below the selected invoice balance. In the verified run, OfficeGest returned valid:false with troco:-0.97, meaning the payment was short by 0.97.

How to Fix It

  1. Stay in the Payment modal after OfficeGest shows the payment warning.
  2. Find the existing payment row, such as NUM.
  3. Increase the row value until the payment total covers the selected invoice balance. For the verified run, the payment had to move from 1.00 to at least 1.97.
  4. Alternatively, add another payment method row so the combined payment reaches the selected total.
  5. Click the modal Save action again.
  6. Confirm the final save dialog if OfficeGest asks. The receipt should save only after the payment validates.

For a verified multi-method correction path, see How to Create a Receipt with Split Payment. For deleting the wrong row first, see How to Delete a Payment Row from a Receipt.

Verified Behavior

CheckObserved result
Source documentFT 9999/1704 was moved into the receipt Documents grid with value to pay 1.97.
Payment rowpayment&option=add created a NUM row with value 1.
Payment validationpayment&option=validate returned valid:false, troco:-0.97, and message text The payment is equal to or greater than the total document.
Payment modalThe payment modal remained populated with the NUM 1.00 row and payment total 1.00.
Final save requestNo saveDocumentRecibo request and no OKDOC response were captured.
Source invoice boundaryFT 9999/1704 stayed ABR / Open with ValorPago=0 and pending value 1.97.

Raw evidence: raw/playwright/workflows/receipt-r-partial-payment-validation-20260519T232700Z.json. Screenshots: assets/screenshots/receipt-r-partial-payment-validation-20260519T232700Z-01-create-page.png through assets/screenshots/receipt-r-partial-payment-validation-20260519T232700Z-05-partial-payment-blocked.png.