REFERENCE

FBR digital invoicing error codes, explained code by code

The complete published list, with FBR's own message text beside what each code actually means. Search the page for the number you were given.

Last verified: 27 August 2026 · AXIOM SQUARE team
A vertical reference list of coded blocks, some marked with warning triangles and the rest with check marks

Every FBR digital invoicing rejection carries a four digit error code, and the codes are published: sections 7 and 8 of PRAL's DI API Technical Specification version 1.12 list 86 sales error codes and 22 purchase error codes. This page reproduces all of them, with the message text as the specification words it, so you can look up the number on your screen rather than guess from the wording.

Two practical notes before the tables. First, look up the code, not the sentence. The string that reaches your screen is not always identical to the one in the specification, and a small difference in wording sends people down the wrong path. Second, several messages contain placeholders written as {0} and {1}. Those are filled in at run time, so the version you see will have a document type or a number where the specification shows a bracket.

How to read the response before you look up the code

FBR's response to a submitted invoice is a JSON object with a validation block inside it. The fields that matter are these:

  • statusCode, where 00 means Valid and 01 means Invalid.
  • status, the same thing in words.
  • errorCode and error, the code and the message.
  • invoiceStatuses, an array with one entry per line item, each carrying its own itemSNo, statusCode, status, invoiceNo, errorCode and error.

That structure tells you where the problem is. If the invoice was rejected as a whole, the specification's own example shows the error at the top level with invoiceStatuses returned as null. If a single line failed, the top level can still report the invoice while the item entry carries statusCode 01 and its own code. Fixing the wrong layer is the most common wasted hour on an integration.

At the transport layer the specification documents only three HTTP responses: 200 for OK, 401 for Unauthorized, and 500 for an internal server error with an instruction to contact the administrator. Anything that never reaches validation, a blocked source address for example, will show up there rather than as one of the numbered codes below. We cover that case in which IP address you whitelist for FBR digital invoicing.

Error 0052 and the HS code against sale type family

This is the single most searched rejection in Pakistani digital invoicing, and it is worth setting out precisely because the wording varies.

In the sales error code table, 0052 is published with the message "Please provide valid HS Code against invoice no:" and the explanation "HS Code that does not match with provided sale type, Please provide valid HS Code against sale type". The phrase people quote to us, HS Code does not match with provided sale type, comes from that explanation column rather than from the message the API returns. To make it more confusing, the specification's own worked example of a rejected invoice shows errorCode 0052 arriving with the text "Provide proper HS Code with invoice no. null". Three different strings, one code.

What it means in practice is that the HS code and the saleType on the same line are checked against each other, not just individually. A code that is perfectly valid on its own will still be rejected against the wrong sale type. Because the HS code normally lives on the product record rather than on the invoice, a single bad product will produce this rejection on every invoice that includes it until the catalogue is corrected. The valid combinations come from the reference APIs published in section 5 of the same specification, which is what a well built integration should be reading rather than a spreadsheet somebody typed. We explain the codes themselves in HS codes on an FBR invoice.

Four neighbours belong to the same family and are frequently confused with it:

  • 0019 and 0044, both of which mean the HS code is simply missing rather than mismatched.
  • 0099, where the unit of measurement is not one that is allowed for the HS code you sent.
  • 0096, where the HS code permits only KWH as the unit, and 0097, where it must be KG.

The codes that come up most often in practice

0002 and 0108, registration number format

0002 covers the buyer and 0108 covers the seller. The explanation for 0002 is specific about what the system will accept: a buyer registration number in 13 digits, or an NTN in 7 or 9 digits. A number that is correct but padded, spaced or hyphenated fails here.

0113 and 0005, the date format

Both point at the same fix. The explanation for each states that the date must be provided in "YYYY-MM-DD" format, and gives 2025-05-25 as the example. Note that the message text for 0113 mentions dd-MMM-yy and the message for 0005 mentions 01-DEC-2021, which are examples of the wrong thing rather than instructions.

0046 and 0020, the rate

0020 is an empty rate field. 0046 is the one that catches people, because its explanation adds a condition: the rate must be valid as per the selected sales type. As with 0052, the value is being validated against another field rather than on its own.

0026, 0027 and 0028, correction documents

These three are about debit and credit notes. 0026 is a missing invoice reference number, 0027 is a missing reason, and 0028 is triggered specifically when the reason is set to "Others" and no remarks were supplied. The relationship between these documents and what your accounting software calls them is set out in what FBR means by a debit note.

0034 and 0035, the 180 day window

0034 is published with placeholders, as "{0} only allowed within {1} days of invoice date of the original invoice", and its explanation fills them in: a debit or credit note can only be added within 180 days of the original invoice date. 0035 is the mirror image, the note dated before the invoice it adjusts.

0102 to 0105, calculated tax mismatches

This group fails when the tax you sent does not equal the tax FBR computes from the values you sent. 0102 is the Third Schedule formula, 0103 is potassium chlorate, 0104 is a plain percentage mismatch against the rate, and 0105 is a quantity based calculation. These are rounding and formula errors far more often than they are rate errors.

0401 and 0402, the token

These two are the closest thing in the list to an access problem rather than a data problem. Each means the registration number provided, seller for 0401 and buyer for 0402, either is not in the expected 13 digit or 7 digit form, or has no authorised token against it.

Complete list of FBR sales error codes

All 86 codes from section 7 of the specification, in the order the document lists them. The middle column is the message the system carries, and the right column is the specification's own explanation of it.

Sales error codes, DI API Technical Specification version 1.12
CodeMessageWhat it means
0001Seller not registered for sales tax, please provide valid registration/NTN.Seller is not registered for sales tax, please provide valid seller registration/NTN.
0002Invalid Buyer Registration No or NTN :Buyer Registration Number or NTN is not in proper format, please provide buyer registration number in 13 digits or NTN in 7 or 9 digits
0003Provide proper invoice type.Invoice type is not valid or empty, please provide valid invoice type
0005please provide date in valid format 01-DEC-2021Invoice date is not in proper format, please provide invoice date in "YYYY-MM-DD" format. For example: 2025-05-25
0006Sale invoice not exist.Sales invoice does not exist against STWH
0007Wrong Sale type is selected with invoice no (Invoice no)Selected invoice type is not associated with proper registration number, please select actual invoice type
0008ST withheld at source should either be zero or same as sales tax/fed in st mode.ST withheld at source is not equal to zero or sales tax, please enter ST withheld at source zero or equal to sales tax
0009Provide Buyer registration No.Buyer Registration Number cannot be empty, please provide proper buyer registration number
0010Provide Buyer Name.Buyer Name cannot be empty, please provide valid buyer name
0012Provide Buyer Registration TypeBuyer Registration type cannot be empty, please provide valid Buyer Registration type
0011Provide invoice type.Invoice type cannot be empty, please provide valid invoice type
0013Provide valid Sale type.Sale type cannot be empty/null, please provide valid sale type
0018Please provide Sales Tax/FED in ST ModeSales Tax/FED cannot be empty, please valid provide Sales Tax/FED
0019Please provide HSCodeHS Code cannot be empty, please provide valid HS Code
0020Please provide RateRate field cannot be empty, please provide Rate
0021Please provide Value of Sales Excl. ST /QuantityValue of Sales Excl. ST /Quantity cannot be empty, Please provide valid Value of Sales Excl. ST /Quantity
0022Please provide ST withheld at Source or STS WithheldST withheld at Source or STS Withheld cannot be empty, Please provide valid ST withheld at Source or STS Withheld
0023Please provide Sales TaxSales Tax cannot be empty, Please provide valid Sales Tax
0024Please provide ST withheldSales Tax withheld cannot be empty, Please provide valid Sales Tax withheld
0026Invoice Reference No. is required.Invoice Reference No. is mandatory requirement for debit/credit note. Please provide valid Invoice Reference No.
0027Reason is required.Reason is mandatory requirement for debit/credit note. Please provide valid reason for debit/credit note
0028Reason Remarks are required.Reason is selected as "Others". Please provide valid remarks against this reason
0029Invoice date must be greater or equal to original invoice no.Debit/Credit note date should be equal or greater from original invoice date
0030Unregistered distributer type not allowed before dateUnregistered distributer type not allowed before system cut of date
0031Provide Sales TaxSales Tax is not mentioned, please provide Sales Tax
0032STWH can only be created for GOV/FTN Holders.User is not FTN holder, STWH can only be created for GOV/FTN Holders without sales invoice.
0034{0} only allowed within {1} days of invoice date of the original invoiceDebit/Credit note can only be added within 180 days of original invoice date
0035{0} date must be greater or equal to original invoice date.Note Date must be greater or equal to original invoice date
0036Total {1} value of {0} invoice(s) is greater than {1} of original invoice. Value of SalesCredit Note Value of Sale must be less or equal to the value of Sale in original invoice.
0037Total {1} value of {0} invoice(s) is greater than {1} of original invoice.ST Withheld as WH AgentCredit Note Value of ST Withheld must be less or equal to the value of ST Withheld in original invoice.
0039Sale invoice not exist.For registered users, STWH invoice fields must be same as sale invoice
0041Provide invoice No.Invoice number cannot be empty, please provide invoice number.
0042Provide invoice date.Invoice date cannot be empty, please provide invoice date.
0043Provide valid Date.Invoice date is not valid, please provide valid invoice date.
0044Provide HS Code.HS Code cannot be empty, please provide HS Code
0046Provide rate.Rate cannot be empty, please provide valid rate as per selected Sales Type.
0050Please provide valid Sales Tax withheld. For sale type 'Cotton ginners', Sales Tax Withheld must be equal to Sales Tax or zeroPlease provide valid Sales Tax withheld. For sale type 'Cotton ginners', Sales Tax Withheld must be equal to Sales Tax or zero
0052Please provide valid HS Code against invoice no:HS Code that does not match with provided sale type, Please provide valid HS Code against sale type
0053Provided buyer registration type is invalidBuyer Registration Type is invalid, please provide valid Buyer Registration Type
0055Please Provide ST Withheld as WH AgentSales tax withheld cannot be empty or invalid format. Please provide valid sales tax withheld.
0056Buyer not exists in steel sector.Buyer does not exist in steel sector
0057Reference Invoice does not exist.Reference invoice for debit/ credit note does not exists. Please provide valid Invoice Reference No.
0058Self-invoicing not allowedBuyer and Seller Registration number are same, this type of invoice is not allowed
0064Reference invoice already exist.Credit note is already added to a invoice
0067{1} of {0} invoice is greater than {1} of original invoice.Sales Tax value of Debit Note is greater than original invoice's sales tax
0068{1} of {0} invoice is less than {1} of original invoice.Sales Tax value of Credit Note is less than original invoice's sales tax according to the rate.
0070STWH cannot be created for unregistered buyers.User is not registered, STWH is allowed only for registered user
0071Entry of {0} against the declared invoice is not allowed.Credit note allowed to add only for specific users
0073Provide Sale Origination Province of SupplierSale Origination Province of Supplier cannot be empty, please provide valid Sale Origination Province of Supplier.
0074Provide Destination of SupplyDestination of Supply cannot be empty, please provide valid Destination of Supply
0077Provide SRO/Schedule No.SRO/Schedule Number cannot be empty, please provide valid SRO/Schedule Number
0078Provide Item Sr. No.Item serial number cannot be empty, please provide valid item serial number
0079If Value of Sales Excl. ST greater than {0}. Rate {1} not allowed.If sales value is greater than 20,000 than rate 5% is not allowed
0080Please provide Further TaxFurther Tax' cannot be empty, please provide valid Further Tax
0081Please provide Input Credit not Allowed'Input Credit not Allowed' cannot be empty, please provide ‘Input Credit not Allowed'
0082The Seller is not registered for sales tax. Please provide a valid registration/NTN.The Seller is not registered for sales tax. Please provide a valid registration/NTN.
0083Mismatch Seller Registration No.Seller Reg No. doesn’t match. Please provide valid Seller Registration Number
0085Please provide Total Value of Sales (In case of PFAD only)Total Value of Sales is not provided, please provide valid Total Value of Sales (In case of PFAD only)
0086You are not an EFS license holder who has imported Compressor Scrap in the last 12 months.You are not an EFS license holder who has imported Compressor Scrap in the last 12 months.
0087Petroleum Levy rates not configured properly.Petroleum Levy rates not configured properly. Please update levy rates properly
0088Alphanumeric and (-) contained invoice No. is allowed. (-) should be in between Alphanumeric string.Invoice number is not valid, please provide valid invoice number in alphanumeric format. For example: Inv-001
0089Please provide FED ChargedFED Charged cannot be empty, please provide valid FED Charged
0090Please provide Fixed / notified value or Retail PriceFixed / notified value or Retail Price cannot be empty, please provide valid Fixed / notified value or Retail Price
0091Extra tax must be empty.Extra tax must be empty.
0092Provide Valid Sale Type.Purchase type cannot be empty, please provide valid purchase type
0093Selected Sale Type are not allowed to Manufacturer.Selected Sale is are not allowed to Manufacturer. Please select proper sale type
0095Please provide Extra TaxExtra Tax cannot be empty, please provide valid extra tax
0096For selected HSCode only KWH UOM is allowed.For provided HS Code, only KWH UOM is allowed
0097Provide UOM KG.Please provide UOM in KG
0098Please provide Quantity / Electricity UnitsQuantity / Electricity Unit cannot be empty, please provide valid Quantity / Electricity Unit
0099Provide uom.UOM is not valid. UOM must be according to given HS Code
0100Cotton Ginners allowed against registered buyers only.Registered user cannot add sale invoice. Only cotton ginner sale type is allowed for registered users.
0101Please Use Toll Manufacturing Sale Type for Steel Sector.Sale type is not selected properly, please use Toll Manufacturing Sale Type for Steel Sector.
0102Calculated tax not matched in 3rd scheduleThe calculated sales tax not calculated as per 3rd schedule calculation formula
0103The calculated tax for Potassium Chlorate does not match.Calculated tax not matched for potassium chlorate. Calculated value doesn’t match according to potassium chlorate for sales potassium invoices.
0104The calculated percentage sales tax does not match.Calculated percentage of sales tax not matched. Calculation must be correct with respect to provided rate
0105The calculated sales tax for the quantity is incorrect.The calculated sales tax for the quantity is incorrect.
0106The Buyer is not registered for sales tax. Please provide a valid registration/NTN.The Buyer is not registered for sales tax. Please provide a valid registration/NTN.
0107Mismatch Buyer Registration No.Buyer Reg No. doesn’t match. Please provide valid Buyer Registration Number
0108Invalid Seller Registration No or NTNSeller Reg No. is not valid. Please provide valid Seller Registration Number/NTN
0109Wrong invoice type is selected in invoice noInvoice type is not selected properly, please select proper invoice type
0111Wrong purchase type is selected with invoice noPurchase type is not selected properly, please provide proper purchase type
0113System is unable to parse date. Please provide date in valid format dd-MMM-yy.Date is not in proper format, please provide date in "YYYY-MM-DD" format. For example: 2025-05-25
0300Provided decimal value is not valid at fieldDiscount Value is not valid at item 1 | Total Value is not valid at item 1 | Fed Payable Value is not valid at item 1 | Extra Tax Value is not valid at item 1 | Further Tax Value is not valid at item 1 | SalesTaxWithheldAtSource Value is not valid at item 1 | Quantity Value is not valid at item 1
0401The provided seller NTN/CNIC does not have a valid or authorized access tokenUnauthorized access: Provided seller registration number is not 13 digits (CNIC) or 7 digits (NTN) or the authorized token does not exist against seller registration number
0402The provided buyer NTN/CNIC does not have a valid or authorized access tokenUnauthorized access: Provided buyer registration number is not 13 digits (CNIC) or 7 digits (NTN) or the authorized token does not exist against buyer registration number

Reproduced from section 7 of the PRAL DI API Technical Specification version 1.12. Wording, including its inconsistencies, is FBR's own.

Purchase error codes

Section 8 lists a separate, shorter set for purchase side submissions. Several of them duplicate a sales code with a different number, which is why looking up a code without knowing which side you are on can mislead you.

Purchase error codes, DI API Technical Specification version 1.12
CodeMessageWhat it means
0156Invalid NTN / Reg No. provided.NTN/Reg. No is invalid/Null, please provide valid NTN/Reg. No.
0157The Buyer is not registered for sales tax. Please provide a valid registration/NTN.The Buyer is not registered for sales tax. Please provide valid Registration/NTN.
0158Mismatch Buyer Registration No.Buyer Reg No. doesn’t match. Please provide valid Buyer Registration Number
0159FTN holder as seller not allowed for purchases.FTN Holder as Seller is not allowed for purchases
0160Provide Buyer Name.Buyer Name cannot be empty, please provide valid buyer name
0161Invoice Date must be greater or equal to {0}Invoice Date must be greater or equal to original sale invoice date
0162Provide Sale Type.Sale Type cannot be empty/Invalid, please provide valid Sale Type
0163Selected Sale Type are not allowed to Manufacturer.Provided Sale Type is not allowed for Manufacturer.
0164For selected HSCode only KWH UOM is allowed.For provided HS Code, only KWH UOM is allowed
0165Provide UOM KG.Please provide UOM in KG
0166Please provide Quantity / Electricity UnitsQuantity / Electricity Unit cannot be empty, please provide valid Quantity / Electricity Unit
0167Provide Value of Sales Excl. STValue of Sales Excl. ST cannot be empty/Invalid, please provide valid Value of Sales Excl. ST
0168Cotton Ginners allowed against registered buyers only.Only cotton ginner purchase type is allowed for registered users.
0169STWH can only be created for GOV/FTN Holders.User is not FTN holder, STWH can only be created for GOV/FTN Holders without purchase invoice.
0170If Value of Sales Excl. ST greater than {0}. Rate {1} not allowed.If Value of Sales Excl. ST greater than 20000 than rate 5% is not allowed.
0171You are not an EFS license holder who has imported Compressor Scrap in the last 12 months.You are not an EFS license holder who has imported Compressor Scrap in the last 12 months.
0172Petroleum Levy rates not configured properly.Petroleum Levy rates not configured properly. Please update levy rates properly
0173Alphanumeric and (-) contained invoice No. is allowed. (-) should be in between Alphanumeric string.Invoice number is not valid, please provide valid invoice number in alphanumeric format. For example: Inv-001
0174Please provide Sales TaxSales Tax cannot be empty, please provide valid Sales Tax
0175Please provide Fixed / notified value or Retail PriceFixed / notified value or Retail Price cannot be empty, please provide valid Fixed / notified value or Retail Price
0176Please provide ST withheld at SourceST withheld at Source cannot be empty, please provide valid ST withheld at Source
0177Please provide Further TaxFurther Tax cannot be empty, please provide valid further tax

Codes that circulate online but are not in the specification

We checked the widely copied lists against the document and there are differences worth flagging, because a wrong meaning costs more time than no meaning at all.

  • 0059, 0060, 0061 and 0062 do not appear in either table in version 1.12. They are quoted on several integrator blogs with detailed meanings about minimum notified price and unit of measurement rules. We cannot source them and therefore do not list them.
  • Some real codes are given the wrong meaning elsewhere. 0100 is often described as the buyer not being registered. In the specification its message reads "Cotton Ginners allowed against registered buyers only." and its explanation concerns cotton ginner sale types. Where a third party list and the specification disagree, we have published the specification.
  • There is no code for a source address that is not whitelisted, and no code for a network failure. Those never reach the validation stage.
  • The numbering has gaps by design. The sales list jumps from 0003 to 0005, from 0013 to 0018, from 0058 to 0064, and ends with 0300, 0401 and 0402. Missing numbers are not codes you have failed to find.
One more caution. Error codes and messages belong to FBR and PRAL and are revised between document versions. Version 1.12 added 0401 and 0402, which are absent from the earlier release we compared against. If a code you have been given is not on this page, check the current version of the specification before assuming the code is invalid.

What to do with a rejection

The sequence that works is short. Read the statusCode at both levels so you know whether the invoice failed or one line failed. Take the code, not the sentence. Fix the data at its source, which for HS codes, units and rates means the product record rather than the invoice screen. Then resubmit.

That last step is manual by design. PRAL's Digital Invoicing User Manual states that the system does not feature automatic retries for failed uploads, so an invoice interrupted by a connectivity failure has to be sent again through the system rather than left to recover itself. An integration that quietly drops failed submissions will produce a gap in your reported sales that nobody notices until a return is being filed.

The broader patterns behind these codes, and the handful of causes that produce most of them, are set out in why FBR invoices get rejected. If you would rather not maintain this validation yourself, that is what our FBR digital invoicing service does.

Catch these before FBR does

AxiomSquare validates buyer registration, HS code against sale type, units, rates and required fields as the invoice is created, so a rejection is the exception rather than something you discover afterwards.

See FBR digital invoicing

Last verified: 27 August 2026. Primary source read directly for this page: the PRAL Technical Specification for DI API, document version 1.12, last updated 24 July 2025, privacy level marked Public and published by the Federal Board of Revenue at download1.fbr.gov.pk. Every code and every message string on this page is transcribed from section 7, Sales Error Codes, and section 8, Purchase Error Codes, of that document, together with the response structure in sections 4.1.3 to 4.1.6 and the reference APIs in section 5. The counts of 86 sales codes and 22 purchase codes, and the absence of codes 0059 to 0062, were established by reading the tables in full rather than from any secondary list. The PRAL Digital Invoicing User Manual, document version 1.6, was read for the statement that the system does not retry failed uploads. Error codes and messages are FBR's own and may be revised by FBR at any time. General information, not tax advice.