Define the record before choosing extraction
Start with the fields your accounting import actually accepts. A supplier invoice is not an instruction to pay: preparing an import and authorising payment are different tasks. Keep the original document reference beside the extracted fields so a colleague can verify an uncertain value.
| Field | Example | Acceptance rule |
|---|---|---|
| Supplier ID | SUP-014 | Matches a known supplier record |
| Invoice ID | INV-2048 | Not already imported for this supplier |
| Currency | HKD | Present and supported by the target import |
| Amount | 3,850.00 | Verified against the original document |
Separate validation from the write
- Receive document
- Extract agreed fields
- Validate record
- Prepare import
Missing or uncertain values go to review; verified corrections resume the same record.
Use a stable supplier-and-invoice identity across retries. If an import response is lost, check whether that identity already exists before trying the write again. Record the run, its result and the correction; do not create a second invoice merely because a request timed out.
Give exceptions an owner and a next action
| Situation | Action | Evidence before resuming |
|---|---|---|
| Unreadable amount | Hold the record for document review | Confirmed original value |
| Duplicate invoice | Compare with the earlier record | Whether this is a duplicate or an authorised correction |
| Unknown supplier | Ask the responsible colleague to identify it | Approved supplier identity |
Test these cases with synthetic records before connecting the real import. Measure how long review takes as well as how much typing disappears. A workflow that saves extraction time but creates a large unresolved queue may not improve the team’s work.