InstantDrive
Browse all pages

What does the Vendor Hub and Accounts Payable desk do?

Short answer

It keeps vendors, purchase orders, goods received notes and vendor invoices in one database, matches each invoice to its purchase order, posts journals on approval and reports ageing and VAT 201 working figures. Recording a payment writes a journal entry and moves no money. There is no bank connection.

Last updated:

What is the Vendor Hub and Accounts Payable desk?

Vendor Hub and Accounts Payable is a section of the logged-in InstantDrive app. It stores vendors, purchase orders, goods received notes (GRNs) and vendor invoices in the company database, and it links them to the documents in the vault. Its job is to answer a short list of practical questions. Who do we owe, how much, since when, and does the invoice agree with what we ordered.

It is a record-keeping and checking tool for a small finance team. It is not a bank portal and it is not a replacement for an accounting package. The sections below describe each screen and what the matching endpoint does, then state the limits plainly.

What happens at each step from vendor to payment?

The flow runs in a fixed order. Each step writes a record, and the later steps read the earlier ones.

StepWhat you enterWhat the system does
VendorName, 15-digit TRN, payment terms, optional bank detailsRejects a TRN that is not exactly 15 digits. Creates a code such as VEND-001. Default terms are 30 days and default currency AED
Purchase orderVendor, lines with quantity, unit price and VAT rateCalculates net, VAT (5 percent unless you set another rate) and total. Status starts as ISSUED
Goods received noteThe PO, quantities received, PASSED or REJECTED per lineSaves the note and sets the PO to FULFILLED
Vendor invoiceInvoice number, vendor, dates, lines, currency and exchange rateConverts to AED, sets the due date from the vendor terms if you leave it blank, then runs the 3-way match at once
Approve or rejectA click on the invoiceApproval posts a journal. Rejection stores a reason and an audit row
Record paymentAmount, method, bank referencePosts a payment journal and updates the paid amount and status

How does the 3-way match decide?

The match compares a vendor invoice with its purchase order and its goods received note. If the invoice names no PO, the system looks for the latest PO of the same vendor that is issued, partly fulfilled or fulfilled, and links it. It does the same for the GRN of that PO.

The rules are narrow and worth knowing exactly. The money test compares the invoice total in AED with the PO total. If the difference is AED 1.00 or less, the invoice becomes MATCHED. If it is more, the invoice goes to EXCEPTION_HOLD and the reason states both totals, the difference and the percentage. If no PO can be found, the invoice goes to EXCEPTION_HOLD. If any line of the linked GRN is marked REJECTED, the invoice goes to EXCEPTION_HOLD.

The match does not compare quantities line by line, and a missing GRN does not cause a hold. It checks totals and the rejected flag. Treat it as a fast screen for obvious differences, not as a full audit of the three documents.

How do approve, reject and hold work?

Hold is a status the match sets automatically. A manager can release it with an override that requires a written reason. The override moves the invoice to MATCHED, keeps the old discrepancy text inside the new note and writes an audit row. Approval is blocked while the invoice sits on hold.

Approval posts a balanced journal. It debits the expense account of each line, or a default operating expense account where the line names none, debits account 10500 for the input VAT, and credits account 20100 Accounts Payable for the gross total. Approving an invoice also marks its vendor active. Rejection sets the status to REJECTED, stores your reason and writes an audit row. The reject request carries a notification option, but the code does not send the vendor any message, so tell the vendor yourself.

The finance endpoints require a signed-in user of the same company. The code applies no separate approver role or approval limit, so control who has access to the app.

What does recording a payment actually do?

Recording a payment creates a journal entry and nothing else. It debits 20100 Accounts Payable and credits the bank ledger account, by default 10200. It adds the amount to the invoice paid total and sets the status to PARTIALLY_PAID or PAID. It accepts an amount up to the balance plus AED 0.05 and treats a balance within AED 0.01 as paid.

No money moves. InstantDrive has no bank API, no payment gateway and no WPS file for vendor payments. You pay the vendor in your bank, then record the payment with the bank reference so the books agree. The payment method field (bank transfer, cheque, corporate card or cash) is a label for your records.

How are ageing, journals and vendor statements produced?

The AP ageing report lists open invoices, meaning those with a balance in the statuses approved, partly paid, matched, pending match or on hold. It groups the balance by days past the due date into four columns, 0 to 30, 31 to 60, 61 to 90 and over 90. Invoices that are not yet due fall in the first column with the invoices up to 30 days late, so the first column mixes not-yet-due and slightly late items. Totals are given per vendor and overall.

The journals screen lists every posted entry with its balanced lines, and you can filter by source such as vendor invoice or payment. The vendor statement shows the vendor invoices, purchase orders, totals invoiced, VAT, paid and balance outstanding. It exports as CSV or JSON, with the vendor TRN, payment terms and bank details in the header.

What does the VAT 201 computation include?

The VAT 201 screen computes working figures for a date range using the box layout of the Federal Tax Authority return. The purchase side reads vendor invoices dated in the range whose status is approved, partly paid or paid, and sorts them by the tax treatment you chose: standard rated 5 percent, reverse charge, zero rated, exempt, out of scope, or customs bill. Standard rated purchases fill Box 9. Box 12 is output VAT less recoverable input VAT.

Three limits apply. The sales side is not read from sales invoices. It is read from posted journal lines on revenue accounts, with 5 percent VAT calculated on the credit, and an emirate guessed from the line memo with Dubai as the default. If you do not post revenue journals, the output boxes stay at zero. The recoverable flag on invoice lines is stored but Box 9 counts all VAT on standard rated purchases. And a quarterly filing record is an internal snapshot with a SHA-256 value, marked FILED. It is not submitted to the Federal Tax Authority, and running it again for the same quarter overwrites that snapshot.

Use the screen to prepare and cross-check, then file through the Federal Tax Authority e-Services as usual.

What are the FAF export and the bank statement matching?

The FAF export produces a CSV of purchase lines for a period or filing, with a header holding the company name, TRN and period, then one row per invoice line with vendor, vendor TRN, tax treatment, emirate, net, VAT, gross and a recoverable flag, and a totals row. It covers purchases only and follows InstantDrive layout, so confirm the format your auditor or the Federal Tax Authority expects before you send it. If the company record has no TRN, the file writes a placeholder number. Check the header first.

Bank statement matching takes a list of statement rows that you submit, each with an amount and optionally a reference and description. It looks for an unmatched posted journal line with the same amount, and when a reference is given it also requires the reference to appear in the journal reference, description or memo. A row without a reference matches on amount alone, which can pair the wrong entry. The result lists matched and unmatched rows, a match rate and a fixed confidence value of 0.98 with a reference or 0.85 without. Matches are returned for review and are not saved.

Worked example: one purchase from order to ageing

Gulf Harbour Trading LLC is a fictional company. It buys pipe fittings from Desert Pipe Supplies LLC, also fictional, on 30-day terms. The table follows one order.

A bank statement row of 5,000 with the reference TRF5521 matches the payment journal. The company still made the transfer in its own bank. InstantDrive recorded it afterwards.

StepFigures in AEDResult
PO-2026-001100 units at 120 = 12,000 net, VAT 600, total 12,600Status ISSUED
GRN100 units received, all PASSEDPO set to FULFILLED
Invoice INV-7741Net 12,000, VAT 600, total 12,600Difference 0.00, status MATCHED
Alternative invoice of 12,660Difference 60.00 (0.48 percent)EXCEPTION_HOLD with the reason text, until a manager overrides
ApprovalDebit 60100 expense 12,000, debit 10500 VAT 600, credit 20100 AP 12,600Status APPROVED
Payment of 5,000, reference TRF5521Debit 20100 5,000, credit 10200 5,000PARTIALLY_PAID, balance 7,600
Ageing 45 days after invoice dateDue at day 30, so 15 days past due7,600 in the 0 to 30 column
VAT 201 for the quarterStandard rated purchases 12,000, input VAT 600Box 9 shows 12,000 and 600

What does the desk not do, and what are the next steps?

It does not move money, connect to any bank, send vendor remittances, read bank feeds or exchange data with QuickBooks, Zoho, Tally or any other accounting software. It does not file with the Federal Tax Authority, check a vendor TRN against the authority registry, or enforce approval limits. It has no sales invoicing module, and the journals it produces are not a complete set of books.

Next steps. Create your vendors with correct TRNs, raise purchase orders before the work starts, record goods received on delivery, and enter or upload invoices so the match runs. Review every hold, record payments with real bank references, and use ageing and the VAT figures as working papers that your accountant confirms before filing.

Keep these documents in one drive

InstantDrive stores your licences, Emirates IDs, tenancy contracts and invoices, reads the numbers and dates, and names every file in one pattern.

Open the appPricing