Payment operations Published June 29, 2026 8 min read

Smart QR payouts and period reconciliation: keeping amounts and statuses aligned

Smart QR payments quickly become an operations problem: periods must close, amounts must reconcile and manual payouts need traceability.

Smart QR payouts and period reconciliation: keeping amounts and statuses aligned

Key topics

Smart QR payouts and period reconciliation: keeping amounts and statuses alignedPayment operationspayment reconciliationpending payments3-D Secure ArmeniavPOS test launchpayment refunds

Related public pages

If you need the product, API or operations page rather than only the article, start with these VPOS.am sections.

Payout request should be tied to a period

A payout without period, recipient and currency becomes a manual note that cannot be reconciled later.

Period -> payout request
Verified QR payments are grouped by recipient, branch, period and currency before payout review.

Smart QR payments can arrive every day, while payouts are usually closed by shift, week or month. Payout request should explicitly store periodStart, periodEnd, recipient, branch, currency, gross amount, fee amount and net amount.

If an operator creates payout without these fields, it becomes impossible to know which verified payments were included. This is especially painful for restaurants, hotels, salons, charity projects and teams with multiple recipients.

  • lock periodStart and periodEnd;
  • separate employee, team, company and donation scopes;
  • calculate gross, fee and net separately;
  • prevent second active payout for same scope and period.

Payout status should have limited transitions

Requested, processing, completed and cancelled should be a state machine, not free text.

Payout state machine
Requested can become processing, completed or cancelled, with audit trail for every transition.

A payout request needs a limited set of statuses and clear transitions. For example, completed should not become requested again without a separate correction, and cancelled should not silently hide verified payments from reports.

Every status transition should have actor, timestamp, method, reference and comment when the operation is manual. This prevents a payout from looking closed while accounting has no bank reference.

  • do not allow arbitrary payout statuses;
  • require method/reference when completed;
  • log actor and request id;
  • send idempotent webhook for status transition.

Which exceptions should operators see

Operators should see only cases that need decisions, not the entire stream of successful QR payments.

Payout exception list
No verified payments, duplicate scope, amount mismatch, refund drift and missing reference become review tasks.

The platform should close simple matches automatically and show operators a short exception list. Examples: no verified payments for period, active payout already exists for this scope, amount changed after refund, payout reference missing or webhook delivery failed.

This scales better than spreadsheets. The team can see which periods are closed, which payouts are processing and which records need manual review before accounting close.

  • no verified payments for payout period;
  • duplicate active payout scope;
  • refund changed net amount after request;
  • completed payout without reference;
  • webhook delivery failed after retries.

FAQ

Can payout be completed without bank reference?

Technically yes, but manual completed should require method and reference. Otherwise reconciliation with bank statement and accounting becomes weak.

What if refund appears after payout request?

Create an exception or recalculate payout before completed. Refund should not silently change a closed period without audit trail.

Are webhooks needed for payout statuses?

Yes, if an external system needs requested, processing, completed or cancelled. Repeated webhook delivery should not create duplicates.