Skip to main content

Escrow, Tax & Invoice Flow

Status: draft for product, finance, and legal review.

Last updated: 2026-07-16.

Product Decision

MCV provides marketplace software, wallet escrow tooling, document templates, invoice collection tools, and workflow tracking. MCV does not act as the buyer's payment agent, tax withholding agent, or tax representative for seller income.

Key decisions:

TopicDecision
Default portal languageVietnamese for ads.mcv.network
Default marketplace currencyVND for new Vietnam-facing accounts and listings
Seller listed priceGross amount before the seller's own taxes
Buyer top-upDeposit into wallet escrow, not a taxable purchase from MCV
MCV roleSoftware platform and escrow workflow operator
Seller tax and invoice roleBuyer and seller complete obligations directly using MCV-supported tools
MCV revenueMCV only invoices its own platform/service fee when earned

:::warning Legal review required This document is a product workflow specification, not legal or tax advice. Finance/legal must validate withholding, e-invoice, personal data, and e-signature rules before production rollout. :::

High-Level Flow

Escrow and document flow for agency service ordersBuyer top-upDeposit onlyEscrow reserveNo invoice yetSeller deliveryBuyer reviewsBuyer acceptsAuthorize paymentCompliance branchIndividual: contract toolkitBusiness: invoice claim toolkitPayoutRelease

Workflow By Step

1. Seller Compliance Profile

Before publishing payable services, the seller must complete a legal profile.

Seller typeRequired fields
IndividualFull name, identity number, tax code if available, address, bank account, payout email, optional signed tax declaration
BusinessLegal name, tax code, billing address, invoice email, representative, bank account

The seller type controls the post-acceptance documentation branch.

2. Listing And Pricing

Sellers list services in VND by default. The listed price is the gross amount before the seller's own taxes.

Checkout must show:

Line itemOwner
Seller gross priceBuyer pays seller
MCV platform fee, if anyBuyer pays MCV
Total wallet reserveBuyer wallet

MCV should not display seller tax as an MCV-collected tax unless finance/legal later approves that role.

3. Wallet Top-Up

Buyer top-up creates a deposit into the buyer wallet.

No invoice is issued on top-up because no service has been sold yet. The system generates only:

  • top-up receipt,
  • bank transfer reference,
  • payment provider reference,
  • wallet ledger entry,
  • reconciliation status.

4. Order Reserve

When the buyer orders a service, MCV reserves the total amount from the buyer wallet.

Recommended ledger entries:

Ledger typeDirectionNotes
wallet_topupcreditDeposit confirmed by payment provider
escrow_reservedebit/reserveBuyer funds reserved for order
platform_fee_reservedebit/reserveOptional MCV fee reserve

The seller is not paid at this stage.

5. Delivery And Buyer Acceptance

The seller submits delivery evidence. The buyer reviews and explicitly accepts the work.

Buyer acceptance means:

  1. the buyer confirms commercial acceptance,
  2. the buyer authorizes release of escrow subject to the documentation branch,
  3. MCV starts the compliance workflow for the seller type.

Compliance Branch

Seller is individual

Contract toolkit

MCV generates templates for a collaborator/service contract between buyer and seller, acceptance record, payment receipt, and tax-support documents.

Seller is business

Invoice claim toolkit

MCV creates an invoice request, QR/link for the buyer to claim the invoice from the seller, and an upload/verification flow for e-invoice files.

Individual Seller Branch

MCV should generate software-supported templates, not MCV-issued tax certificates.

Required artifacts:

ArtifactIssuer/signersPurpose
Service/collaborator contractBuyer and sellerDefines scope, gross fee, delivery, tax responsibility
Acceptance recordBuyer and sellerConfirms completed work
Payment authorizationBuyerAuthorizes escrow release
Payment receiptSeller confirms receiptSupports accounting evidence
Tax-support worksheetGenerated by MCV softwareHelps parties calculate/report obligations
Withholding certificate upload, if applicableBuyer, not MCVOnly if buyer has a legal withholding obligation

Important rule: MCV must not issue a withholding certificate in MCV's name unless MCV legally becomes the paying/withholding party.

Business Seller Branch

The seller business must issue an invoice to the buyer for the transaction.

MCV supports:

  1. invoice request generation,
  2. buyer billing profile capture,
  3. QR/link for invoice claiming,
  4. seller invoice upload,
  5. XML/PDF metadata capture,
  6. buyer invoice acknowledgement,
  7. admin exception review.

Recommended invoice gate:

buyer accepted delivery
-> invoice requested
-> seller uploads invoice XML/PDF or invoice lookup link
-> buyer acknowledges invoice
-> payout release is allowed

Swimlane

Buyer
MCV platform
Seller
Top up wallet and place order
Create deposit receipt and reserve escrow
Receive order brief
Review delivery
Track delivery state
Submit delivery evidence
Accept work and authorize payment
Open compliance branch
Complete contract or invoice step
Receive receipt/invoice evidence
Release escrow and record MCV fee
Receive payout

Order Status Model

StatusMeaningNext action
escrow_reservedBuyer funds are reservedSeller delivers
deliveredSeller submitted deliveryBuyer reviews
buyer_acceptedBuyer accepted deliveryCompliance branch starts
contract_pendingIndividual seller contract is waiting for signatureBuyer/seller sign
invoice_pendingBusiness seller invoice is requestedSeller issues invoice
documents_readyRequired artifacts are availablePayout can be released
payout_releasedSeller payout has been releasedComplete order
completedOrder is closedNone
disputedBuyer/seller disagreementAdmin review

Data Model Proposal

ObjectPurpose
seller_compliance_profilesStores individual/business seller identity and invoice profile
order_compliance_casesTracks compliance branch and required artifacts per order
e_contractsStores contract template version, signer state, and signed PDF
contract_signaturesBuyer/seller signature events
tax_support_documentsGenerated tax worksheets, receipts, and uploaded buyer-issued certificates
invoice_claimsSeller business invoice request, claim URL/QR, upload status
payout_authorizationsBuyer approval and payout release authorization
platform_fee_invoicesMCV invoice records for MCV's own fee

Money fields should move toward:

FieldRecommendation
amount_minorInteger amount in the smallest practical currency unit
currencyVND, USD, etc.
exchange_rate_snapshotStored when conversion is involved
gross_seller_amount_minorListed seller price before seller tax
platform_fee_amount_minorMCV fee, invoiced by MCV
seller_payout_amount_minorAmount released to seller

For VND, amount_minor equals the whole VND amount.

Implementation Phases

Phase 1: Defaults And UI

  • Set ads portal default locale to Vietnamese.
  • Set new Vietnam-facing accounts to VND by default.
  • Rename wallet copy from "top-up purchase" to "wallet deposit".
  • Update checkout language to show escrow and gross price.

Phase 2: Compliance Profile

  • Add seller legal profile.
  • Require seller type before publishing paid services.
  • Capture buyer invoice profile for business buyers.

Phase 3: Documentation Toolkit

  • Generate individual seller contract templates.
  • Generate acceptance record and payment receipt templates.
  • Add invoice claim link/QR flow for business sellers.
  • Allow upload of seller invoice XML/PDF.

Phase 4: Payout Gate

  • Release payout only after buyer acceptance plus required artifacts.
  • Keep manual admin override with audit reason.
  • Generate MCV platform fee invoice separately.

The workflow is informed by these Vietnam legal/tax areas:

AreaReferenceRelevance
E-invoices and recordsDecree 123/2020/ND-CPInvoice and record framework
E-invoice guidanceCircular 78/2021/TT-BTCE-invoice implementation guidance
Individual/business household taxCircular 40/2021/TT-BTCSeller tax classification support
Personal income withholding, historical/current-review itemCircular 111/2013/TT-BTCPast PIT withholding framework; validate current applicability

Review Questions

  1. Should payout to a business seller be blocked until invoice evidence is uploaded, or only flagged?
  2. Which e-sign provider should MCV use for buyer-seller contracts?
  3. Should MCV require seller tax code before listing, or only before payout?
  4. Should buyer acceptance create an immutable payout authorization PDF?
  5. Should gross seller price include VAT if seller is a VAT-registered business?
  6. Which cases require admin compliance review before payout?