Skip to main content

Microtec

Proforma Invoice Generator

A proforma invoice for an advance payment or letter of credit, then a commercial invoice for shipping with HS codes, origin and Incoterms.

Not an e-invoice and not a tax invoice. A VAT-registered business issues its invoice for every sale, exports included, from an e-invoicing solution that meets the Zakat, Tax and Customs Authority rules. This page is for quotations, letters of credit and shipping documents, for unregistered sellers, and for learning. Try Microtec ERP free.

Goods

Look up the HS code for your goods with the customs tariff inquiry service of the Zakat, Tax and Customs Authority.

days

How was this calculated?

A proforma invoice is a document the seller sends before shipping, listing the goods, prices, Incoterms and payment terms so the buyer can pay an advance, open a letter of credit or apply for an import licence. Enter the seller, buyer and goods above and the proforma takes shape beside you, and VAT follows the Saudi rules: 15% on a domestic sale, zero on a qualifying export. When the goods are ready to ship, one button turns it into a commercial invoice where you add destination, packages and weights. Download it as a PDF for the buyer, in Word to add your logo, or in Excel with formulas.

Short answerA proforma invoice is a binding price offer before the sale and is not booked in the accounts. A commercial invoice travels with the shipment to customs. A tax invoice records the sale and the VAT, and a registered business issues it from its compliant system.

What is a proforma invoice?

"Pro forma" means "as a matter of form": the document looks like an invoice but records no sale. It fixes what the seller will deliver and on what terms, and it carries a validity period after which the price lapses. Importers' banks open documentary credits against it, and many customs authorities ask for it with an import licence application. It is often misspelled "performa invoice"; the Latin is pro forma.

Proforma invoice vs commercial invoice vs tax invoice

Proforma invoiceCommercial invoiceTax invoice
IssuedBefore the sale and shipmentAt shipmentOn supply, as the regulations set
ForThe buyer and its bankDestination customs, the buyer, the carrierThe buyer; kept by the seller
PurposeFix the price, request payment, open an L/CCustoms clearance and duty assessmentRecord the sale and VAT
Booked in the accountsNoDoes not replace the tax invoiceYes
Fields of its ownValidity, payment termsHS code, origin, packages, weightsVAT number, QR code, e-invoicing data

A proforma never carries the words "tax invoice" or a QR code, and the generator prints on it that it is not a tax invoice. If you export while registered for VAT, issue the tax invoice for the sale from your e-invoicing system and use the commercial invoice as the shipping and customs document.

How the generator works out the invoice total

Each line is quantity × unit price, and the lines add up to the value of the goods. Under full details you can add freight and insurance when the Incoterm puts them on the seller, such as CFR or CIF. VAT then depends on the sale: 15% within Saudi Arabia, zero for an export that meets the zero-rating conditions, and none for an unregistered seller.

Total = Σ (Qty × Price) + Freight + Insurance + VAT

Example 1, a dates shipment for export (illustrative): 400 cartons of Sukkari at SAR 85 = 34,000.00, and 200 cartons of Khalas at SAR 48 = 9,600.00. Goods total SAR 43,600.00 FOB, zero-rated as an export, so the total is SAR 43,600.00. Load it with the "Example: dates export shipment" button.
Example 2, the same shipment on CIF terms: the seller adds freight of SAR 2,400.00 and insurance of SAR 150.00, and the total becomes SAR 46,150.00.
Example 3, a proforma for a customer inside the Kingdom: the same goods at SAR 43,600.00 with 15% VAT of SAR 6,540.00, for a total of SAR 50,140.00.

What a commercial invoice for export contains

Customs at destination assesses duty on the commercial invoice, so importers and customs brokers expect its details to match the bill of lading and the packing list exactly. The usual fields are:

  • Exporter, importer and consignee: full names and addresses, plus the exporter's CR and VAT numbers.
  • Description and HS code: a description precise enough to classify the goods, and the Harmonized System code. The first six digits are international; each country adds its own digits in its tariff.
  • Country of origin: where the goods were made or produced, which drives duty rates and trade-agreement preferences.
  • Value, currency and Incoterm: unit price, total, currency, and the Incoterm with its named port or place, such as FOB Jeddah Islamic Port.
  • Packages and weights: number and type of packages, gross weight with packing and net weight of the goods alone.
  • Declaration and signature: a statement that the details and origin are true, signed and stamped by the exporter.

Requirements differ by destination: some countries want chamber of commerce attestation, a separate certificate of origin or a specific language. Ask the importer or its customs broker what they need before you ship.

Incoterms on the invoice

The Incoterm decides who pays for transport and insurance and when the risk passes from seller to buyer. The generator prints it next to the total, and freight and insurance are added or left out to match it.

TermThe seller pays up toWhen it fits
EXWHaving the goods ready at its own warehouseThe buyer arranges all the transport
FOBLoading on board the vessel at the port of shipmentSea freight where the buyer picks the carrier
CFRSea freight to the port of destinationThe seller books freight and the buyer insures
CIFSea freight and insurance to the port of destinationAsked for in many letters of credit
DAPDelivery to the buyer's place, without import dutiesRoad and courier shipments
DDPDelivery including import duties and taxes at destinationWhen the seller carries everything

Proforma invoices and letters of credit

Under a documentary credit the buyer's bank opens the credit on the terms of your proforma and pays when you present matching documents: commercial invoice, bill of lading, packing list and certificate of origin. Write the description, quantities, Incoterm and ports on the proforma exactly as you want them in the credit, and ask the buyer for a copy of the credit before shipping so you can check it against your commercial invoice. A mismatch in the description, weight or port name between the documents and the credit can be enough for the bank to refuse them and hold the payment.

Zero-rated VAT on exports

Exports of goods from Saudi Arabia to outside the GCC are subject to VAT at zero percent, provided the exporter keeps evidence that the goods left the Kingdom, such as the customs declaration and transport documents, for the period set by the implementing regulations of the VAT law. Check the current text with ZATCA for the accepted documents and how long to keep them. A zero-rated supply is still reported in the VAT return, and the exporter can recover the VAT on its purchases.

Common mistakes

  • Calling a proforma a "tax invoice", or booking it as revenue before the sale.
  • A description or weight on the commercial invoice that does not match the bill of lading and packing list.
  • An Incoterm without the named port or place, or without its edition (Incoterms 2020).
  • A four-digit HS code, or one copied from similar goods that do not match yours.
  • Adding 15% to an export invoice that meets the zero-rating conditions, or the reverse.
  • Leaving out gross and net weight, which holds up clearance at destination.

What to do after issuing the invoice

Send the proforma to the buyer as a PDF and wait for the advance or the letter of credit. At shipment, press "Turn into a commercial invoice" so the same lines carry over, add the destination, packages, weights and ports, and check it against the bill of lading before sending. "Share as link" opens the generator with your data for a sales colleague or the customs broker to review.

When exports become a regular part of your sales

One or two invoices a month fit in a generator. When you export regularly and sell locally at the same time, the tax invoice and the commercial invoice need to come from the same data, and you need to know what has shipped and what each buyer has paid. At Microtec we offer accounting software (ERP) covering sales, purchasing, inventory, finance and HR, and our solutions are approved by the Zakat, Tax and Customs Authority. Run your next export order through it.

Frequently asked questions

What is a proforma invoice?

A preliminary invoice the seller sends before the sale, listing the goods, prices, delivery and payment terms so the buyer can pay in advance or open a letter of credit. It is not booked in the accounts and is not a tax invoice.

Is a proforma invoice legally binding?

It commits the seller to the stated price and terms for its validity period once the buyer accepts. The buyer is not obliged to pay until it accepts or pays against it, which is why the validity period should be written clearly.

What is the difference between a proforma and a commercial invoice?

The proforma comes before the sale and is used for payment and letters of credit. The commercial invoice is issued at shipment and goes with the goods to customs at destination, with HS codes, origin, packages and weights.

Is VAT charged on an export invoice from Saudi Arabia?

Exports of goods outside the GCC are zero-rated when the exporter keeps evidence that the goods left the Kingdom. VAT shows as zero and the supply is still reported in the VAT return.

Where do I find the HS code for my goods?

Use the customs tariff search on the Zakat, Tax and Customs Authority website, by product description or chapter. The first six digits are international, and an importer sometimes asks for its own country's longer code.

Do I still need a tax invoice if I issue a commercial invoice?

A VAT-registered business issues a tax invoice for every sale, exports included, from a compliant e-invoicing solution. The commercial invoice is a shipping and customs document and does not replace it.

↑