Interface Design
Interface Design
EFRIS
kakasa@ura.go.ug
Document History
2019-04-03 V1.0 Created by URA
URA
1
TABLE OF CONTENTS
Interface specification ................................................................................................................................................................ 3
Introduction ....................................................................................................................................................................... 3
ReturnCode description.................................................................................................................................................... 6
2
Interface specification
Introduction
The system interface uses JSON format to transfer data. The payload is divided into three parts: data,
The data part contains the inner layer message content and the encryption method of the message.
The globalInfo part is a global variable containing interface information and other necessary attributes.
3
"brn": "",
"taxpayerID": "1",
"longitude": "116.397128",
"latitude": "39.916527",
"agentType": "0",
"extendField": {
"responseDateFormat": "dd/MM/yyyy",
"responseTimeFormat": "dd/MM/yyyy HH:mm:ss",
"referenceNo": "21PL010020807" ,
"operatorName": "administrator",,
"offlineInvoiceException": {
"errorCode": "",
"errorMsg": ""
}
}
},
"returnStateInfo": {
"returnCode": "",
"returnMessage": ""
}
}
Field description
4
signature Signature value Y
codeType YN encryption Y 1 0-plain text 1- ciphertext
1 If codeType is 1, encryptCode takes
effect
encryptCode Encryption Y
1-RSA
2-AES
zipCode YN compression Y 1 0-uncompressed, 1-compressed
If set to 1, the content in the
response is compressed.
appId Y 5 AP04-for system2system
AP05-for AskURA
version version number Y 15 Client software version number
1.1.20191201
5
latitude latitude number Integer digits cannot exceed 20,
Y
decimal digits cannot exceed 8;
agentType agentType 1 It is not required. The default value
is 0.
N 0: not agent
1: agent USSD
2: Agency Invoicing
returnCode Return Code Y 4 ReturnCode description
returnMessage Return Message N Unlimite When the "returnCode" value is 99,
d the exception information will be
assigned to the field.
extendField Extend Field N Unlimite Reserved as an extension field
d
responseDateF responseDateForm 20 System date format
Y
ormat at
responseTimeF responseTimeForm 20 System time format
Y
ormat at
referenceNo referenceNo N 20 Used for T131,T139 ,T109
operatorName operatorName N 150 T109 basicInformation-->operator
offlineInvoiceEx offlineInvoiceExcep Object of offline invoice exception
N
ception tion
errorCode errorCode 4 Error code of offline invoice
N
exception
errorMsg errorMsg Unlimite Error Msg of offline invoice
N
d exception
ReturnCode description
6
06 The outer message is empty
07 GlobalInfo content cannot be empty
08 Data content cannot be empty
09 ReturnStateInfo content cannot be empty
10 DataDescription content cannot be empty
11 InterfaceCode cannot be empty
12 UserName cannot be empty
13 TaxpayerID cannot be empty
14 DeviceMAC cannot be empty
15 Unpacking data error
16 AppID cannot be empty
17 Version cannot be empty
18 DataExchangeId cannot be empty
19 RequestCode cannot be empty
20 RequestTime cannot be empty
21 ResponseCode cannot be empty
22 Currency cannot be empty
23 Tax rate acquisition error
24 The version cannot be longer than 15 characters
25 DataExchangeId cannot be greater than 32
characters!
26 RequestCode error
27 ResponseCode error
28 The difference between RequestTime and the current
time is greater than ten minutes!
29 DeviceMAC cannot be greater than 25 characters
30 AppID error
31 RequestTime time format error
32 Version is too low, please upgrade version
33 Version error
34 Longitude cannot be empty
35 Longitude cannot be greater than 60 characters
36 Latitude cannot be empty
37 Longitude cannot be greater than 60 characters
38 Signature value is invalid!
39 Signature value can not be empty!
40 Insufficient permissions!
41 Item does not exist!
42 Please register for e-Invoicing first!
7
43 Outer packet json format is invalid!
44 Taxpayer branch has been removed!
45 Partial failure!
46 database error!
100 Taxpayer does not exist
101 Taxpayer status is abnormal
102 Taxpayer branch status abnormal
T133 47 The current version does not support incremental
upgrade.
T110 、 T113 、 300 The original invoice number does not exist
T114 301 The original invoice number has not been completed
303 Update failed
304 According to the original invoice number, the
result is null
305 Invoice approval failed
306 A credit note has already been issued against this
invoice. Please cancel the existing credit note to
proceed!
307 Get process template is empty
308 Approval failed
309 Items cannot be empty
310 The date cannot be voided
311 BusinessKey does not exist
312 Cannot apply for credit note/ debit note, the
fiscal document has exceeded the allowable
application days.
313 The application has been voided!
314 The application cannot be voided for initiated sub
process, please contact URA.
315 Successfully Operated
316 Seller does not have taxpayer account
317 A debit note has already been issued against this
invoice. Please cancel the existing debit note to
proceed!
318 The debit note has a cancellation request in
process, please don't apply repeatedly.
319 The credit note has been cancelled, please don't
apply repeatedly.
ALL 400 Device does not exist
401 Device key does not exist
8
402 Device key expired
403 Device status is abnormal
A101 501 get captcha error!
502 Verification code is not correct!
503 Check ORCode error!
504 The invoice does not exist.
505 Report code does not exist!
506 The invoice did not participate in this lottery
507 The invoice does not exist for lottery
508 The invoice information entered is incorrect
509 Invoice verification times exceeds the limit
T130 600 GoodsCode cannot be empty
601 GoodsCode cannot be greater than 50!
602 goodsCode already exists
603 GoodsName cannot be empty
604 GoodsName cannot be greater than 200!
605 Measureunit cannot be empty
606 measureUnit:Invalid field value
607 unitPrice cannot be empty!
608 unitPrice The integer character length cannot
exceed 12!
609 unitPrice:Cannot be positive
610 unitPrice:Cannot be equal to 0
611 unitPrice:Cannot be negative
612 currency:Cannot be empty
613 currency:Invalid field value
614 commodityCategoryId:Cannot be empty
615 commodityCategoryId:Byte length cannot be greater
than 18!
616 commodityCategoryId: invalid field value!
617 commodityCategoryId: commodity category has been
deleted!
618 commodityCategoryId: commodity category has been
disabled!
619 commodityCategoryId: commodity category is not a
leaf node!
620 haveExciseTax:Cannot be empty
621 haveExciseTax: invalid field value!
622 haveExciseTax is 101 havePieceUnit cannot be empty!
9
623 havePieceUnit: invalid field value!
624 description:Byte length cannot be greater than
1024!
625 stockPrewarning cannot be empty!
626 stockPrewarning The integer character length cannot
exceed 12!
627 stockPrewarning:Cannot be positive
628 stockPrewarning:Cannot be equal to 0
629 stockPrewarning:Cannot be negative
630 pieceUnitPrice cannot be empty!
631 pieceUnitPrice The integer character length cannot
exceed 12!
632 pieceUnitPrice:Cannot be positive
633 pieceUnitPrice:Cannot be equal to 0
634 pieceUnitPrice:Cannot be negative
635 packageScaledValue cannot be empty!
636 packageScaledValue The integer character length
cannot exceed 12!
637 packageScaledValue:Cannot be positive
638 packageScaledValue:Cannot be equal to 0
639 packageScaledValue:Cannot be negative
645 havePieceUnit is '102', pieceMeasureUnit must be
empty!
646 havePieceUnit is '102', pieceUnitPrice must be
empty!
647 havePieceUnit is '102', packageScaledValue must be
empty!
648 havePieceUnit is '102', pieceScaledValue must be
empty!
649 havePieceUnit is 101 pieceMeasureUnit cannot be
empty
650 measureUnit:Invalid field value
651 pieceScaledValue cannot be empty!
652 pieceScaledValue The integer character length
cannot exceed 12!
653 pieceScaledValue:Cannot be positive
654 pieceScaledValue:Cannot be equal to 0
655 pieceScaledValue:Cannot be negative
T131、T139 656 commodityGoodsId cannot be empty!
657 commodityGoodsId The integer character length
10
cannot exceed 18!
658 commodityGoodsId or goodsCode does not exist!
659 quantity cannot be empty!
660 quantity The integer character length cannot exceed
12!
661 quantity:Cannot be positive
662 quantity:Cannot be equal to 0
663 quantity:Cannot be negative
T131 664 unitPrice cannot be empty!
665 unitPrice The integer character length cannot
exceed 12!
666 unitPrice:Cannot be positive
667 unitPrice:Cannot be equal to 0
668 unitPrice:Cannot be negative
669 remarks:Byte length cannot be greater than 1024!
T130 670 haveExciseTax is '102', exciseDutyCode must be
empty!
671 exciseDutyCode: haveExciseTax is '101',
exciseDutyCode cannot be empty!
672 exciseDutyCode: invalid field value!
673 exciseDutyCode: exciseDutyCode has been deleted!
674 exciseDutyCode: exciseDutyCode is not a leaf node!
675 exciseDutyCode: exciseDutyCode is not effective!
676 haveExciseTax is '101', excise duty has unit of
measurement, 'havePieceUnit' must be '101'!
677 measureUnit is equal pieceMeasureUnit,
packageScaledValue must be equal to '1'!
678 measureUnit is equal pieceMeasureUnit,
pieceScaledValue must be equal to '1'!
679 haveExciseTax is '101', excise duty has unit of
measurement, 'pieceMeasureUnit' must be equals to
excise duty measure unit!
680 currency: invalid field value!
681 If current taxpayer does not have a Local Excise
Duty, haveExciseTax must be '102'!
682 This product is a 'service' product, cannot operate
inventory!
683 operationType: invalid field value!
684 product does not exist!
T109 1040 Invoice number already exists
11
1100 sellerDetails-->tin:cannot be empty!
1101 sellerDetails-->tin:The byte length cannot be less
than 10 and cannot be greater than20!
1102 sellerDetails-->tin:The inner tin must be the same
as the tin in the outer packet!
1103 sellerDetails-->ninBrn:cannot be empty!
1104 sellerDetails-->ninBrn:Byte length cannot be
greater than 20!
1105 sellerDetails-->legalName:cannot be empty!
1106 sellerDetails-->legalName:Byte length cannot be
greater than 256!
1107 sellerDetails-->businessName:cannot be empty!
1108 sellerDetails-->businessName:Byte length cannot be
greater than 256!
1109 sellerDetails-->address:cannot be empty!
1110 sellerDetails-->address:Byte length cannot be
greater than 500!
1111 sellerDetails-->mobilePhone:cannot be empty!
1112 sellerDetails-->mobilePhone:Byte length cannot be
greater than 30!
1113 sellerDetails-->linePhone:cannot be empty!
1114 sellerDetails-->linePhone:Byte length cannot be
greater than 30!
1115 sellerDetails-->emailAddress:cannot be empty!
1116 sellerDetails-->emailAddress:The byte length
cannot be less than 6 and cannot be greater than50!
1117 sellerDetails-->emailAddress:Must be an email
address
1118 sellerDetails-->placeOfBusiness:cannot be empty!
1119 sellerDetails-->placeOfBusiness:Byte length cannot
be greater than 500!
1120 sellerDetails-->referenceNo:cannot be empty!
1121 sellerDetails-->referenceNo:Byte length cannot be
greater than 50!
1122 basicInformation-->invoiceNo:cannot be empty!
1123 basicInformation-->invoiceNo:Byte length cannot be
greater than 20!
1124 basicInformation-->antifakeCode:cannot be empty!
1125 basicInformation-->antifakeCode:The byte length
cannot be less than 0 and cannot be greater than20!
1126 basicInformation-->antifakeCode:Cannot be greater
12
than -1!
1127 basicInformation-->deviceNo:The inner packet
deviceNo must be the same as the deviceNo packet
in the outer packet!
1129 basicInformation-->issuedDate:cannot be empty!
1130 basicInformation-->issuedDate:The time format must
beyyyy-MM-dd HH:mm:ss!
1131 basicInformation-->operator:cannot be empty!
1132 basicInformation-->operator:Byte length cannot be
greater than 150!
1133 basicInformation-->currency:cannot be empty!
1134 basicInformation-->currency:Byte length cannot be
greater than 10!
1135 basicInformation-->invoiceType:Invalid field
value!
1136 basicInformation-->oriInvoiceId:If 'invoiceType :
4', this field cannot be empty!
1137 basicInformation-->oriInvoiceId:cannot be empty!
1138 basicInformation-->oriInvoiceId:Byte length cannot
be greater than 20!
1139 basicInformation-->invoiceKind:Invalid field
value!
1140 basicInformation-->dataSource:Invalid field value!
1141 basicInformation-->payWay:Invalid field value!
1142 buyerDetails-->buyerTin:cannot be empty!
1143 buyerDetails-->buyerTin:The byte length cannot be
less than 10 and cannot be greater than20!
1144 buyerDetails-->buyerNinBRn:cannot be empty!
1145 buyerDetails-->buyerNinBRn:Byte length cannot be
greater than 20!
1146 buyerDetails-->buyerPassportNum:cannot be empty!
1147 buyerDetails-->buyerPassportNum:Byte length cannot
be greater than 20!
1148 buyerDetails-->buyerLegalName:cannot be empty!
1149 buyerDetails-->buyerLegalName:Byte length cannot
be greater than 256!
1150 buyerDetails-->buyerBusinessName:cannot be empty!
1151 buyerDetails-->buyerBusinessName:Byte length
cannot be greater than 256!
1152 buyerDetails-->buyerAddress:cannot be empty!
1153 buyerDetails-->buyerAddress:Byte length cannot be
13
greater than 500!
1154 buyerDetails-->buyerEmail:cannot be empty!
1155 buyerDetails-->buyerEmail:The byte length cannot
be less than 6 and cannot be greater than50!
1156 buyerDetails-->buyerEmail:Must be an email address
1157 buyerDetails-->buyerMobilePhone:cannot be empty!
1158 buyerDetails-->buyerMobilePhone:Byte length cannot
be greater than 30!
1159 buyerDetails-->buyerLinePhone:cannot be empty!
1160 buyerDetails-->buyerLinePhone:Byte length cannot
be greater than 30!
1161 buyerDetails-->buyerPlaceOfBusi:cannot be empty!
1162 buyerDetails-->buyerPlaceOfBusi:Byte length cannot
be greater than 500!
1163 buyerDetails-->buyerType:Invalid field value!
1164 buyerDetails-->buyerCitizenship:cannot be empty!
1165 buyerDetails-->buyerCitizenship:Byte length cannot
be greater than 128!
1166 buyerDetails-->buyerSector:cannot be empty!
1167 buyerDetails-->buyerSector:Byte length cannot be
greater than 200!
1168 buyerDetails-->buyerReferenceNo:cannot be empty!
1169 buyerDetails-->buyerReferenceNo:Byte length cannot
be greater than 50!
1170 goodsDetails-->deemedFlag:Invalid field value!
1171 goodsDetails-->discountFlag:Invalid field value!
1172 goodsDetails-->discountFlag:The first product line
cannot be a discount line, and 'discountFlag'
cannot be '0'!
1173 goodsDetails-->discountFlag: Discount Flag 1 item
must be followed by a corresponding Discount Flag
0 detailing the discount details!
1174 goodsDetails-->discountFlag:The last line can not
be discounted line
1175 goodsDetails-->item:cannot be empty!
1176 goodsDetails-->item:Byte length cannot be greater
than 200!
1177 goodsDetails-->item:if the 'deemedFlag' is '1',
item + space + "(Deemed)"!
1178 goodsDetails-->item:if 'Discount' is '0', item +
space + "(Discount)"! If 'discountFlag' is '0' and
14
'deemedFlag' is '1' ,item + Space + "(Deemed)" +
Space + "(Discount)"
1179 goodsDetails-->itemCode:cannot be empty!
1180 goodsDetails-->itemCode:Byte length cannot be
greater than 50!
1181 goodsDetails-->qty:Discount line is the 'qty' must
be empty
1182 goodsDetails-->qty:cannot be empty!
1183 goodsDetails-->qtyThe integer character length
cannot exceed 12, and the decimal character length
cannot exceed 8!
1184 goodsDetails-->qty:Cannot be positive
1185 goodsDetails-->qty:Cannot be equal to 0
1186 goodsDetails-->qty:Cannot be negative
1187 goodsDetails-->unitPrice:If the merchandise line
is a discount line, the 'unitPrice' must be empty!
1188 goodsDetails-->unitPrice:cannot be empty!
1189 goodsDetails-->unitPrice:The integer character
length cannot exceed 12, and the decimal character
length cannot exceed 8!
1190 goodsDetails-->unitPrice:Cannot be positive
1191 goodsDetails-->unitPrice:Cannot be equal to 0
1192 goodsDetails-->unitPrice:Cannot be negative
1193 goodsDetails-->total:unitPrice:If the merchandise
line is a discount line, the 'total' must be empty
1194 goodsDetails-->total:cannot be empty!
1195 goodsDetails-->total:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 2!
1196 goodsDetails-->total:Cannot be positive
1197 goodsDetails-->total:Cannot be equal to 0
1198 goodsDetails-->total:Cannot be negative
1199 goodsDetails-->tax:Discount line is the 'tax' must
be empty
1200 goodsDetails-->tax:cannot be empty!
1201 goodsDetails-->tax:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 2!
1202 goodsDetails-->tax:Cannot be positive
1203 goodsDetails-->tax:Cannot be equal to 0
1204 goodsDetails-->tax:Cannot be negative
15
1205 goodsDetails-->discountTotal:'discountFlag' is '0'
or '2', therefore 'discountTotal' must be empty!
1206 goodsDetails-->total:Must be the same as the
discountTotal value of the discounted row!
1208 goodsDetails-->unitOfMeasure:Invalid field value!
1209 goodsDetails-->taxRate:cannot be empty!
1210 goodsDetails-->taxRateThe integer character length
cannot exceed 1, and the decimal character length
cannot exceed 4!
1211 goodsDetails-->taxRate:Cannot be positive
1212 goodsDetails-->taxRate:Cannot be equal to 0
1213 goodsDetails-->taxRate:Cannot be negative
1214 goodsDetails-->discountTaxRate:cannot be empty!
1215 goodsDetails-->discountTaxRate:The integer
character length cannot exceed 2, and the decimal
character length cannot exceed 12!
1216 goodsDetails-->discountTaxRate:Cannot be positive
1217 goodsDetails-->discountTaxRate:Cannot be equal to
0
1218 goodsDetails-->discountTaxRate:Cannot be negative
1219 goodsDetails-->orderNumber:Must start from zero
and add one each time
1220 goodsDetails-->exciseFlag:Invalid field value!
1221 goodsDetails-->categoryId:If 'exciseFlag' is '1',
it cannot be empty!
1222 goodsDetails-->categoryId:cannot be empty!
1223 goodsDetails-->categoryId:Byte length cannot be
greater than 18!
1224 goodsDetails-->categoryName:If 'exciseFlag' is
'1', it cannot be empty!
1225 goodsDetails-->categoryName:cannot be empty!
1226 goodsDetails-->categoryName:Byte length cannot be
greater than 1024!
1227 goodsDetails-->goodsCategoryId:cannot be empty!
1228 goodsDetails-->goodsCategoryId:Byte length cannot
be greater than 18!
1229 goodsDetails-->goodsCategoryName:cannot be empty!
1230 goodsDetails-->goodsCategoryName:Byte length
cannot be greater than 100!
1231 goodsDetails-->exciseRate:If 'exciseFlag' is '1',
it cannot be empty!
16
1232 goodsDetails-->exciseRate:If 'exciseFlag' is '2',
it must be empty!
1233 goodsDetails-->exciseRate:cannot be empty!
1234 goodsDetails-->exciseRate:Byte length cannot be
greater than 21!
1235 goodsDetails-->exciseRule:If 'exciseFlag' is '1',
it cannot be empty!
1236 goodsDetails-->exciseRule:Invalid field value!
1237 goodsDetails-->exciseTax:If 'exciseFlag' is '1',
it cannot be empty!
1238 goodsDetails-->exciseTax:cannot be empty!
1239 goodsDetails-->exciseTax:The integer character
length cannot exceed 12, and the decimal character
length cannot exceed 4!
1240 goodsDetails-->exciseTax:Cannot be positive
1241 goodsDetails-->exciseTax:Cannot be equal to 0
1242 goodsDetails-->exciseTax:Cannot be negative
1243 goodsDetails-->pack:If 'exciseRule' is '2', it
cannot be empty!
1244 goodsDetails-->pack:cannot be empty!
1245 goodsDetails-->pack:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 8!
1246 goodsDetails-->pack:Cannot be positive
1247 goodsDetails-->pack:Cannot be equal to 0
1248 goodsDetails-->pack:Cannot be negative
1249 goodsDetails-->stick:If 'exciseRule' is '2', it
cannot be empty!
1250 goodsDetails-->stick:cannot be empty!
1251 goodsDetails-->stick:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 8!
1252 goodsDetails-->stick:Cannot be positive
1253 goodsDetails-->stick:Cannot be equal to 0
1254 goodsDetails-->stick:Cannot be negative
1255 goodsDetails-->exciseUnit:If 'exciseRule' is '2',
it cannot be empty!
1256 goodsDetails-->exciseUnit:Invalid field value!
1257 goodsDetails-->exciseCurrency:If 'exciseRule' is
'2', it cannot be empty!
1258 goodsDetails-->exciseCurrency:cannot be empty!
17
1259 goodsDetails-->exciseCurrency:Byte length cannot
be greater than 10!
1260 taxDetails-->taxCategory:cannot be empty!
1261 taxDetails-->taxCategory:Byte length cannot be
greater than 100!
T109、T110 1262 taxDetails-->netAmount:cannot be empty!
1263 taxDetails-->netAmountThe integer character length
cannot exceed 16, and the decimal character length
cannot exceed 4!
1264 taxDetails-->netAmount:Cannot be positive
1265 taxDetails-->netAmount:Cannot be equal to 0
1266 taxDetails-->netAmount:Cannot be negative
T109 1267 goodsDetails-->qty:Required if discountFlag is 1
or 2!
1268 goodsDetails-->unitPrice:Required if discountFlag
is 1 or 2!
T109、T110 1269 taxDetails-->taxAmount:cannot be empty!
1270 taxDetails-->taxAmountThe integer character length
cannot exceed 16, and the decimal character length
cannot exceed 4!
1271 taxDetails-->taxAmount:Cannot be positive
1272 taxDetails-->taxAmount:Cannot be equal to 0
1273 taxDetails-->taxAmount:Cannot be negative
1274 taxDetails-->grossAmount:cannot be empty!
1275 taxDetails-->grossAmountThe integer character
length cannot exceed 16, and the decimal character
length cannot exceed 4!
1276 taxDetails-->grossAmount:Cannot be positive
1277 taxDetails-->grossAmount:Cannot be equal to 0
1278 taxDetails-->grossAmount:Cannot be negative
1279 taxDetails-->exciseUnit:cannot be empty!
1280 taxDetails-->exciseUnit:Byte length cannot be
greater than 3!
1284 taxDetails-->exciseCurrency:cannot be empty!
1285 taxDetails-->exciseCurrency:Byte length cannot be
greater than 10!
1289 summary-->netAmount:cannot be empty!
1290 summary-->netAmount:The integer character length
cannot exceed 16,and the decimal character length
cannot exceed 4!
1291 summary-->netAmount:Cannot be positive
18
1292 summary-->netAmount:Cannot be equal to 0
1293 summary-->netAmount:Cannot be negative
1294 summary-->taxAmount:cannot be empty!
1295 summary-->taxAmount:The integer character length
cannot exceed 16,and the decimal character length
cannot exceed 4!
1296 summary-->taxAmount:Cannot be positive
1297 summary-->taxAmount:Cannot be equal to 0
1298 summary-->taxAmount:Cannot be negative
1299 summary-->grossAmount:cannot be empty!
1300 summary-->grossAmount:The integer character length
cannot exceed 16,and the decimal character length
cannot exceed 4!
1301 summary-->grossAmount:Cannot be positive
1302 summary-->grossAmount:Cannot be equal to 0
1303 summary-->grossAmount:Cannot be negative
1304 summary-->itemCount:Must match the Number of all
product lines in goodsDetail-number of discount
lines!
1305 goodsDetails:The number of product lines cannot
exceed XX!
1306 summary-->modeCode:Invalid field value!
1307 summary-->remarks:cannot be empty!
1308 summary-->remarks:Byte length cannot be greater
than 500!
T109 1310 summary-->qrCode:cannot be empty!
1311 summary-->qrCode:Byte length cannot be greater than
500!
1312 extend-->reason:cannot be empty!
1313 extend-->reason:Byte length cannot be greater than
1024!
1314 extend-->reasonCode:cannot be empty!
1315 extend-->reasonCode:Byte length cannot be greater
than 3!
1316 goodsDetails-->total:Multiply the quantity by the
product of the unit price, and keep two decimals
after the decimal point (prior to a discarded
fraction (i.e., truncates))!
1317 taxDetails-->grossAmount:calculation error!
1318 goodsDetails-->goodsCategoryId:Invalid field
value!
19
1319 goodsDetails-->'goodsCategoryId':Dose not match
'goodsCategoryId'
1320 basicInformation-->invoiceNo:summary-->modeCode is
0, 'deviceNo' Can not be empty!
1321 basicInformation-->antiFakeCode:summary-
->modeCode is 0, 'antiFakeCode' Can not be empty!
1322 basicInformation-->qrCode:summary-->modeCode is 0,
'qrCode' Can not be empty!
1323 basicInformation-->invoiceNo:summary-->modeCode is
1, ' invoiceNo ' Must be empty!
1324 basicInformation-->antiFakeCode:summary-
->modeCode is 1, 'antiFakeCode' Must be empty!
1325 basicInformation-->qrCode:summary-->modeCode is 1,
'qrCode' Must be empty!
1326 basicInformation-->invoiceKind:You have not
registered VAT or VAT is not effective, please
issue receipt!
1327 goodsDetails-->categoryId:Invalid field value!
1328 goodsDetails-->categoryName:Does not match
'categoryId'!
1329 goodsDetails-->goodsCategoryId:Has been deleted!
1330 goodsDetails-->goodsCategoryId:Has been disabled!
1331 goodsDetails-->goodsCategoryId:Not a leaf node!
1332 goodsDetails-->taxRate:The tax rate for this
product is not tax-exempt!
1333 goodsDetails-->taxRate:This product is not in tax-
exempt period!
1334 goodsDetails-->taxRate:The tax rate for this
product is not tax-zero!
1335 goodsDetails-->taxRate:This product is not in tax-
zero period!
1336 goodsDetails-->taxRate:Invalid field value!
1337 goodsDetails-->categoryId:Has been deleted!
1338 goodsDetails-->categoryId:Not a leaf node!
1339 goodsDetails-->categoryId:Not effective!
1340 goodsDetails-->exciseRate:This product excise tax
cannot be Nil!
1341 goodsDetails-->exciseRate:Invalid field value!
T109、T110 1342 taxDetails-->:'netAmount' plus 'taxAmount' must
equal 'grossAmount'!
1343 summary-->netAmount:calculation mistake!
20
1344 summary-->taxAmount:Must be equal to the sum of all
taxAmount's in taxDetails!
1345 summary-->grossAmount:Must be equal to the sum of
all grossAmount's except 'taxCategory' is'Excise
Duty' in taxDetails!
T109 1346 goodsDetails-->exciseTax:when exciseFlag is '1'
and discountFlag is '0' Must be negative or '0'!
1347 goodsDetails-->exciseTax:When exciseFlag is '1'
and discountFlag is '1' or '2' Must be positive
or '0'!
T110 1400 The original invoice does not exist!
1401 Credit note for the original invoice has been
issued!
1402 Debit note for the original invoice has been
issued!
1403 oriInvoiceId must match oriInvoiceNo
T109、T110 1404 reasonCode:Invalid field value!
1405 Other reason can not be empty!
1406 reason:cannot be empty!
1407 reason:Byte length cannot be greater than 1024!
1408 applicationTime:cannot be empty!
1409 applicationTime:The time format must be:yyyy-MM-dd
HH:mm:ss!
1410 invoiceApplyCategoryCode:Invalid field value!
1411 currency:Must be the same as the original invoice!
1412 contactName:cannot be empty!
1413 contactName:Byte length cannot be greater than 200!
1414 contactMobileNum:cannot be empty!
1415 contactMobileNum:Byte length cannot be greater than
30!
1416 contactEmail:cannot be empty!
1417 contactEmail:The byte length cannot be less than 6
and cannot be greater than 50!
1418 contactEmail:Must be an email address
1419 remark:cannot be empty!
1420 remark:Byte length cannot be greater than 500!
1421 sellersReferenceNo:cannot be empty!
1422 sellersReferenceNo:Byte length cannot be greater
than 50!
T110 1423 goodsDetails-->orderNumber:cannot be empty!
1424 goodsDetails-->orderNumber:Must be numeric and the
21
byte length cannot be greater than 4!
1425 goodsDetails-->orderNumber:Cannot be greater than
-1
1426 goodsDetails-->orderNumber:Does not exist in the
original invoice!
1427 goodsDetails-->item:Must be the same as the
original invoice!
1428 goodsDetails-->itemCode:Must be the same as the
original invoice!
1429 goodsDetails-->qty:cannot be empty!
1430 goodsDetails-->qty:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 8!
1431 goodsDetails-->qty:Cannot be positive!
1432 goodsDetails-->qty:Cannot be equal to 0!
1433 goodsDetails-->qty:Cannot be negative!
1434 goodsDetails-->qty:Cannot be larger than the
corresponding commodity line of the original
invoice!
1435 goodsDetails-->unitOfMeasure:Must be the same as
the original invoice!
T109、T110 1437 taxDetails-->taxRate:cannot be empty!
1438 taxDetails-->taxRate:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 8!
1439 taxDetails-->taxRate:Cannot be positive!
1440 taxDetails-->taxRate:Cannot be equal to 0!
1441 taxDetails-->taxRate:Cannot be negative!
T110 1443 goodsDetails-->taxRate:Must be the same as the
original invoice!
1444 goodsDetails-->tax:cannot be empty!
1445 goodsDetails-->tax:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 2!
1446 goodsDetails-->tax:Cannot be positive!
1447 goodsDetails-->tax:Cannot be equal to 0!
1448 goodsDetails-->tax:Cannot be negative!
1449 goodsDetails-->tax:Cannot be larger than the
corresponding commodity line of the original
invoice!
1450 goodsDetails-->total:cannot be empty!
22
1451 goodsDetails-->total:The integer character length
cannot exceed 12, and the decimal character length
cannot exceed 2!
1452 goodsDetails-->total:Cannot be positive!
1453 goodsDetails-->total:Cannot be equal to 0!
1454 goodsDetails-->total:Cannot be negative!
1455 goodsDetails-->unitPrice:cannot be empty!
1456 goodsDetails-->unitPrice:The integer character
length cannot exceed 12, and the decimal character
length cannot exceed 8!
1457 goodsDetails-->unitPrice:Cannot be positive!
1458 goodsDetails-->unitPrice:Cannot be equal to 0!
1459 goodsDetails-->unitPrice:Cannot be negative!
1460 goodsDetails-->total:The absolute value cannot be
greater than the sum of the product amount and
discountTotal of the corresponding ticket!
1461 goodsDetails-->deemedFlag:Must be the same as the
original invoice!
1462 goodsDetails-->exciseFlag:Must be the same as the
original invoice!
1463 goodsDetails-->categoryId:Must be the same as the
original invoice!
1464 goodsDetails-->goodsCategoryId:Must be the same as
the original invoice!
1465 goodsDetails-->goodsCategoryName:Must be the same
as the original invoice!
1466 goodsDetails-->exciseRate:Must be the same as the
original invoice!
1467 goodsDetails-->exciseRule:Must be the same as the
original invoice!
1468 goodsDetails-->exciseTax:cannot be empty!
1469 goodsDetails-->exciseTax:The integer character
length cannot exceed 12, and the decimal character
length cannot exceed 2!
1470 goodsDetails-->exciseTax:Cannot be positive!
1471 goodsDetails-->exciseTax:Cannot be equal to 0!
1472 goodsDetails-->exciseTax:Cannot be negative!
1473 goodsDetails-->pack:Must be the same as the
original invoice!
1474 goodsDetails-->stick:Must be the same as the
original invoice!
23
1475 goodsDetails-->exciseUnit:Must be the same as the
original invoice!
1476 goodsDetails-->exciseCurrency:Must be the same as
the original invoice!
1477 goodsDetails-->exciseRateName:Must be the same as
the original invoice!
T109 1478 taxDetails-->taxRateName:cannot be empty!
1479 taxDetails-->taxRateName:Byte length cannot be
greater than 100!
1480 Credit Note request is illegal!
T106 、 T107 、 1500 invoiceNo:cannot be empty!
T108 、 T111 、 1501 invoiceNo:Byte length cannot be greater than 20!
T114 、 T117 、
T122、T131
T106、T107 1502 deviceNo:cannot be empty!
1503 deviceNo:Byte length cannot be greater than 20!
T106 、 T110 、 1504 oriInvoiceNo:cannot be empty!
T111 1505 oriInvoiceNo:Byte length cannot be greater than 20!
T106、T107 1506 buyerTin:cannot be empty!
1507 buyerTin:Byte length cannot be greater than 20!
1508 buyerNinBrn:cannot be empty!
1509 buyerNinBrn:Byte length cannot be greater than 20!
1510 buyerLegalName:cannot be empty!
1511 buyerLegalName:Byte length cannot be greater than
256!
1512 combineKeywords:cannot be empty!
1513 combineKeywords:Byte length cannot be greater than
20!
T106 、 T107 、 1514 invoiceType:Invalid field value!
T117
T106 1515 isInvalid:Invalid field value!
1516 isRefund:Invalid field value!
T106 、 T107 、 1517 startDate:cannot be empty!
T111 1518 startDate:The time format must beyyyy-MM-dd
HH:mm:ss!
1519 endDate:cannot be empty!
1520 endDate:The time format must beyyyy-MM-dd HH:mm:ss!
ALL 1521 pageNo:cannot be empty!
1522 pageNo:The byte length cannot be less than 0 and
cannot be greater than 20!
1523 pageNo:Cannot be greater than -1!
24
1524 pageSize:cannot be empty!
1525 pageSize:The byte length cannot be less than 0 and
cannot be greater than 3!
1526 pageSize:Cannot be greater than 100!
T111、T113 1550 referenceNo:cannot be empty!
1551 referenceNo:Byte length cannot be greater than 20!
T113 1552 approveStatus:Invalid field value!
T111 1553 queryType:Invalid field value!
1554 invoiceApplyCategoryCode:Invalid field value!
T112 1555 id:cannot be empty!
1556 id:Byte length cannot be greater than 20!
T113 1557 remark:cannot be empty!
1558 remark:Byte length cannot be greater than 1024!
1559 taskId:cannot be empty!
T114 1560 taskId:Byte length cannot be greater than 20!
1561 invoiceNo:Invoice does not exist!
1562 oriInvoiceId:'oriInvoiceId' and 'invoiceNo' do not
match!
1563 invoiceApplyCategoryCode:Invalid field value, this
document is debit note!
1564 invoiceApplyCategoryCode:Invalid field value, this
document is credit note!
1565 reason:cannot be empty!
1566 reason:Byte length cannot be greater than 1024!
1567 reasonCode:Invalid field value!
1568 reason:If 'reasonCode' is '103', it cannot be
empty!
T117 1569 The size of the collection cannot be larger than ? !
T118 1570 id:cannot be empty!
1571 id:Byte length cannot be greater than 20!
T119 1572 'tin' and 'ninBrn' cannot be empty at the same
time!
1573 tin:cannot be empty!
1574 tin:Byte length cannot be greater than 20!
1575 ninBrn:cannot be empty!
1576 ninBrn:Byte length cannot be greater than 20!
T120、T121 1577 businessKey:cannot be empty!
1578 businessKey:Byte length cannot be greater than 20!
T120 1579 referenceNo:cannot be empty!
1580 referenceNo:Byte length cannot be greater than 20!
1581 currency:cannot be empty!
25
1582 currency:Byte length cannot be greater than 3!
T109 1600 Inventory shortage
T129 1610 invoiceContent:cannot be empty!
1611 invoiceSignature:cannot be empty!
1612 Invoice upload quantity cannot be greater than xx
1613 Batch upload has problematic invoices, please check
inner 'invoiceReturnCode' and
'invoiceReturnMessage'!
C101 2000 basicInformation-->sadNumber:cannot be empty!
2001 basicInformation-->sadNumber:Byte length cannot be
greater than 20!
2002 basicInformation-->sadDate:cannot be empty!
2003 basicInformation-->sadDate:The time format must
beyyyy-MM-dd HH:mm:ss!
2004 basicInformation-->cpcCode:cannot be empty!
2005 basicInformation-->cpcCode:Byte length cannot be
greater than 16!
2006 basicInformation-->cpcDescription:cannot be empty!
2007 basicInformation-->cpcDescription:Byte length
cannot be greater than 256!
2008 basicInformation-->wareHouseNumber:cannot be
empty!
2009 basicInformation-->wareHouseNumber:Byte length
cannot be greater than 16!
2010 basicInformation-->wareHouseName:cannot be empty!
2011 basicInformation-->wareHouseName:Byte length
cannot be greater than 256!
2012 goodsDetails-->hsCode:cannot be empty!
2013 goodsDetails-->hsCode:Byte length cannot be
greater than 16!
2014 goodsDetails-->hsCode:Invalid field value!
2015 basicInformation-->sadNumber:SAD Number already
exists!
C102 2016 tin:cannot be empty!
2017 tin:Byte length cannot be greater than 20!
2018 ninBrn:cannot be empty!
2019 ninBrn:Byte length cannot be greater than 100!
2020 taxpayerName:cannot be empty!
2021 taxpayerName:Byte length cannot be greater than
256!
2022 invoiceNo:cannot be empty!
26
2023 invoiceNo:Byte length cannot be greater than 20!
2024 sadNumber:cannot be empty!
2025 sadNumber:Byte length cannot be greater than 20!
2026 destinationCountry:cannot be empty!
2027 destinationCountry:Byte length cannot be greater
than 256!
2028 originCountry:cannot be empty!
2029 originCountry:Byte length cannot be greater than
256!
2030 sadNumber:SAD Number already exists!
2031 invoiceNo:Invoice does not exist!
2032 invoiceNo:Invoice has been exported!
2033 tin:The invoice was not issued by this tin
C105 2034 tin:Cannot use customs interface!
C103 2035 Already confirmed!
2036 Already canceled!
2037 invoiceNo or sadNumber does not exist!
C101 2038 basicInformation-->office:cannot be empty!
2039 basicInformation-->office:Byte length cannot be
greater than 35!
2040 basicInformation-->cif:cannot be empty!
2041 basicInformation-->cif:Byte length cannot be
greater than 50!
2042 basicInformation-->valuationMethod:cannot be
empty!
2043 basicInformation-->valuationMethod:Byte length
cannot be greater than 128!
2044 summary-->prn:cannot be empty!
2045 summary-->prn:Byte length cannot be greater than
80!
2046 basicInformation-->office,cif:Already exists
T109 2047 basicInformation-->invoiceIndustryCode:Invalid
field value!
2048 goodsDetails-->taxRate:taxRate error!
2049 Debit Note cannot be issued for export invoices
T110 2050 Export invoice cannot apply for Credit Note
T109 2051 basicInformation-->isBatch:Invalid field value!
T132 2052 interruptionTypeCode:Invalid field value!
2053 description:cannot be empty!
2054 description:Byte length cannot be greater than 200!
2055 errorDetail:cannot be empty!
27
2056 errorDetail:Byte length cannot be greater than 200!
2057 interruptionTime:cannot be empty
2058 interruptionTime:The time format must be yyyy-MM-
dd HH:mm:ss
T134 2059 commodityCategoryVersion cannot be empty
T106 2060 referenceNo byte length cannot be greater than 50
T113 2061 The application has been processed
C101 2062 goodsDetails-->pack:cannot be empty!
2063 goodsDetails-->pack:Byte length cannot be greater
than 1024!
T109 2064 basicInformation-->invoiceNo:summary-->modeCode is
0, 'invoiceNo' error!
2065 basicInformation-->sellerDetails:ninBrn-->The
NinBrn is not correct!
ALL 2066 XXX:data-->content:Illegal json format!
T109 2067 sellerDetails-->cannot be empty!
2068 basicInformation-->cannot be empty!
2069 buyerDetails-->cannot be empty!
2070 T109:data-->content:cannot be empty!
2071 goodsDetails-->cannot be empty!
2072 summary-->cannot be empty!
2073 when invoiceType is 4,extend cannot be empty!
T110 2074 Original invoice Id is not correct!
T109 2075 Invoice amount exceeds the maximum limit!
T131 2076 operationType:cannot be empty!
2077 operationType:Byte length cannot be greater than
3!
2078 operationType: invalid field value!
2079 supplierTin:cannot be empty!
2080 supplierTin:Byte length cannot be greater than 50!
2081 If 'operationType' is '101', supplierName cannot
be empty!
2082 supplierName:Byte length cannot be greater than
100!
2083 If 'operationType' is '102', supplierName must be
empty!
2084 If 'operationType' is '102', supplierTin must be
empty!
2085 If 'adjustType' is '104', remarks cannot be empty!
2086 remarks:Byte length cannot be greater than 1024!
2087 If 'operationType' is '101', adjustType must be
28
empty!
2088 If 'operationType' is '102', adjustType cannot be
empty!
2089 adjustType:Byte length cannot be greater than 20!
2090 adjustType: invalid field value!
2091 Item is not in stock!
2092 Original inventory quantity cannot be less than
the reduced quantity!
T136 2093 FileName cannot be empty
2094 FileName:Byte length cannot be greater than 256!
2095 FileContent cannot be empty!
2096 VerifyString cannot be empty!
2097 Filename and decryption verifystring must be equal!
2098 Certificate overdue!
2099 Duplicate certificate!
2100 Certificate resolution error!
T109 2101 importServicesSeller-->importBusinessName:cannot
be empty!
2102 importServicesSeller-->importBusinessName:Byte
length cannot be greater than 500!
2103 importServicesSeller-->importEmailAddress:cannot
be empty!
2104 importServicesSeller-->importEmailAddress:The byte
length cannot be less than 6 and cannot be greater
than50!
2105 importServicesSeller-->importEmailAddress:Must be
an email address!
2106 importServicesSeller-->importContactNumber:cannot
be empty!
2107 importServicesSeller-->importContactNumber:Byte
length cannot be greater than 30!
2108 importServicesSeller-->importAddres:cannot be
empty!
2109 importServicesSeller-->importAddres:Byte length
cannot be greater than 500!
T137 、 T140 、 2110 tin cannot be empty!
T142、T143 2111 tin:Byte length cannot be greater than 20!
C105 2112 C105:data-->content:cannot be empty!
2113 C105:data-->content:Illegal json format!
T131 2114 StockInDate:The time format must be yyyy-MM-dd!
T109 2115 importServicesSeller-->importInvoiceDate:cannot be
29
empty!
2116 importServicesSeller-->importInvoiceDate:The time
format must be yyyy-MM-dd HH:mm:ss!
2117 importServicesSeller-->importAttachmentName:
cannot be empty!
2118 importServicesSeller-->importAttachmentName:Byte
length cannot be greater than 256!
2119 If’invoiceIndustryCode:104',sellerDetails-
->referenceNo cannot be empty!
2120 If 'invoiceIndustryCode:104',sellerDetails-
->referenceNo cannot be empty!
2121 importServicesSeller-
->importAttachmentName:Attachment format error!
2122 goodsDetails-->itemCode:Item code and Name is not
configured with URA. Complete the configuration
process for this item using your system or from the
URA portal to proceed. item code x, item name y.
2123 goodsDetails-->itemCode:Item code and Name are not
matching with URA. Please ensure that this item
code and Name matches with what was submitted to
URA to proceed. item code x, item name y.
2124 goodsDetails-->itemCode:Does not match the
goodsCategoryId!
T109、131、T139 2125 stockLock-->itemCode:updateGoodsStock getLock time
out!
T131 2126 stockInType:cannot be empty!
2127 stockInType:Byte length cannot be greater than 3!
2128 stockInType: invalid field value!
2129 If 'stockInType' not equals to '103',
productionBatchNo must be empty!
2130 If 'stockInType' not equals to '103',
productionDate must be empty!
2131 productionBatchNo:cannot be empty!
2132 productionBatchNo:Byte length cannot be greater
than 50!
2133 If 'stockInType : Not equal to
103',productionBatchNo must be empty!
2134 If 'stockInType : Not equal to 103',productionDate
must be empty!
2135 If 'operationType' is '102', productionBatchNo must
be empty!
30
2136 If 'operationType' is '102',productionDate must be
empty!
2137 If 'stockInType : 103',supplierName must be empty!
2138 If 'stockInType : 103',supplierTin must be empty!
T109、T139 2139 goodsDetails-->unitOfMeasure : Required if
discountFlag is 1 or 2!
T139 2141 destinationBranchId cannot be empty!
2142 destinationBranchId:Byte length cannot be greater
than 18!
2143 sourceBranchId does not belong to current taxpayer!
2144 destinationBranchId cannot be
empty!nationBranchId:Byte length cannot be greater
than 18!
2145 sourceBranchId and destinationBranchId cannot be
the same!
2146 transferTypeCode:cannot be empty!
2147 transferTypeCode:Byte length cannot be greater than
20!
2148 transferTypeCode: invalid field value!
2149 remarks:cannot be empty!
2150 remarks:Byte length cannot be greater than 1024!
2151 If 'transferTypeCode' is '103', remarks cannot be
empty!
2152 transferred quantity exceeds the original stock
2153 sourceBranchId cannot be empty
2154 sourceBranchId:Byte length cannot be greater than
18!
T140 2155 password cannot be empty!
2156 password:Byte length cannot be greater than 500!
T141 2157 deliveryMethod cannot be empty!
2158 deliveryMethod:Byte length cannot be greater than
3!
2159 deliveryMethod:Invalid field value!
2160 If 'deliveryMethod : 001',contactMobile must be
empty!
2161 If 'deliveryMethod : 002',contactEmail must be
empty!
T140 2162 Invalid User account or Password!
2163 Password error!
2164 Invalid User account!
T142 2165 otp error!
31
2166 otp cannot be empty!
2167 otp:Byte length cannot be greater than 6!
T143 2168 branchId cannot be empty!
2169 branchId:Byte length cannot be greater than 18!
2170 deviceNo cannot be empty!
2171 deviceNo:Byte length cannot be greater than 18!
T142 2172 otp has expired!
T143 2173 deviceNo format error!
2174 branchId does not exist!
2175 deviceNo already exists
T131 2176 This product has been stored, it cannot stock in
using opening stock
2177 If 'operationType' is '102', stockInType must be
empty!
T136 2178 Encryption type does not match!
2179 The key length of the public key should be 2048!
T109 2180 basicInformation-->currency:Invalid field value!
2181 goodsDetails-->exciseCurrency:Invalid field value!
T109、T110 2182 taxDetails-->exciseCurrency:Invalid field value!
T109 2183 sellerDetails-->branchId:cannot be empty!
2184 sellerDetails-->branchId:Byte length cannot be
greater than 18!
2185 sellerDetails-->branchId does not belong to current
taxpayer!
2186 sellerDetails-->branchName:If 'branchId' is not
empty, it cannot be empty!
2187 sellerDetails-->branchName:Byte length cannot be
greater than 500!
2188 sellerDetails-->branchName does not belong to
current taxpayer!
T106、T107 2189 branchName:cannot be empty!
2190 branchName:Byte length cannot be greater than 500!
T131 2191 branchId:cannot be empty!
2192 branchId:Byte length cannot be greater than 18!
2193 branchId: branch does not belong to current
taxpayer!
T131、T139 2194 goodsCode:cannot be empty!
2195 goodsCode:Byte length cannot be greater than 50!
2196 commodityGoodsId and goodsCode cannot be empty at
the same time!
T109、T110 2197 Some items details are inconsistent with the goods
32
maintenance.
2198 Some items details are inconsistent with goods
maintenance and the application cannot be approved.
2199 Some items details are inconsistent with goods
maintenance and the application cannot be
submitted.
T136 2200 The certificate has no matching fingerprint. Please
upload the fingerprint to tax office first!
T109 2201 buyerExtend-->propertyType:cannot be empty!
2202 buyerExtend-->propertyType:Byte length cannot be
greater than 50!
2203 buyerExtend-->district:cannot be empty!
2204 buyerExtend-->district:Byte length cannot be
greater than 50!
2205 buyerExtend-->municipalityCounty:cannot be empty!
2206 buyerExtend-->municipalityCounty:Byte length
cannot be greater than 50!
2207 buyerExtend-->divisionSubcounty:cannot be empty!
2208 buyerExtend-->divisionSubcounty:Byte length cannot
be greater than 50!
2209 buyerExtend-->town:cannot be empty!
2210 buyerExtend-->town:Byte length cannot be greater
than 50!
2211 buyerExtend-->cellVillage:cannot be empty!
2212 buyerExtend-->cellVillage:Byte length cannot be
greater than 60!
2213 buyerExtend-->effectiveRegistrationDate:cannot be
empty!
2214 buyerExtend-->effectiveRegistrationDate:The time
format must be yyyy-MM-dd!
2215 buyerExtend-->meterStatus:cannot be empty!
2216 buyerExtend-->meterStatus:Byte length cannot be
greater than 3!
2217 buyerExtend-->meterStatus:Invalid field value!
2218 otherUnit:cannot be empty!
2219 otherUnit:Byte length cannot be greater than 3!
2220 otherUnit: invalid field value!
2221 packageScaled cannot be empty!
2222 packageScaled The integer character length cannot
exceed 12!
2223 otherScaled cannot be empty!
33
2224 otherScaled The integer character length cannot
exceed 12!
2225 haveOtherUnit:cannot be empty!
2226 haveOtherUnit:Byte length cannot be greater than
T130 3!
2227 haveOtherUnit: invalid field value!
2228 If 'haveOtherUnit' is '101', goodsOtherUnits
cannot be empty!
2229 If 'haveOtherUnit' is '102', goodsOtherUnits must
be empty!
2230 some goods cannot have duplicate secondary units
of measurement!
2231 otherUnit cannot equals to 'measureUnit'!
2232 If 'havePieceUnit is '101', otherUnit cannot
equals to 'pieceMeasureUnit'!
T130、T131、 2233 measureUnit:cannot be empty!
T139 2234 measureUnit:Byte length cannot be greater than 3!
2235 measureUnit: invalid field value!
T130 2236 pieceMeasureUnit:cannot be empty!
2237 pieceMeasureUnit:Byte length cannot be greater
than 3!
2238 pieceMeasureUnit: invalid field value!
T130 2239 If 'havePieceUnit' is '102', haveOtherUnit must
be '102'!
T109 2240 basicInformation-->invoiceKind:You have
registered VAT, please issue tax invoice!
T139 2241 goodsStockInItem can not be empty!
2242 goodsStockTransferItem can not be empty!
T131、T139 2243 measureUnit: inconsistent with the maintained
commodity unit!
T109 2244 buyerDetails-->buyerType: cannot be empty!
2245 buyerDetails-->buyerType:Byte length cannot be
greater than 3!
2246 buyerDetails-->buyerTin: If 'buyerType' is '0',
and 'InvoiceIndustry' is not '102',
'buyerLegalName' and 'buyerBusinessName' cannot
be empty at the same time!
2247 buyerDetails-->buyerLegalName: If 'buyerType' is
'0', buyerLegalName cannot be empty!
2248 buyerDetails-->buyerLegalName: Buyer's legal name
is inconsistent!
34
2249 buyerDetails-->buyerTin: Buyer's tin not exist!
2250 sellerDetails-->isCheckReferenceNo:cannot be
empty!
2251 sellerDetails-->isCheckReferenceNo:Byte length
cannot be greater than 1!
2252 sellerDetails-->isCheckReferenceNo:Invalid field
value!
2253 The seller's reference number already exists!
2254 If 'isCheckReferenceNo' is '1',sellerDetails-
->referenceNo cannot be empty!
T127 2255 goodsCode:cannot be empty!
2256 goodsCode:Byte length cannot be greater than 50!
2257 goodsName:cannot be empty!
2258 goodsName:Byte length cannot be greater than 100!
2259 commodityCategoryName:cannot be empty!
2260 commodityCategoryName:Byte length cannot be
greater than 200!
T119 2261 The taxpayer does not exist or the state is
abnormal!
T109 2262 payWay-->paymentMode:cannot be empty!
2263 payWay-->paymentMode:Byte length cannot be
greater than 3!
2264 payWay-->paymentMode: invalid field value!
2265 payWay-->paymentAmount:cannot be empty!
2266 payWay-->paymentAmount:The integer character
length cannot exceed 12, and the decimal
character length cannot exceed 2!
2270 Total Amount Paid and Gross Amount are
inconsistent!
T130 2771 otherPrice:Cannot be empty!
2772 otherPrice:The integer character length cannot
exceed 12!
2773 otherPrice:Cannot be positive
2774 otherPrice:Cannot be equal to 0
2775 otherPrice:Cannot be negative
T109、T110 2776 goodsDetails-->tax: Tax calculation error!
T113 2777 TaskId does not exist!
T109 2778 Permission denied, you can't issue import
invoice!
T105 2779 userName:cannot be empty!
2780 userName:Byte length cannot be greater than 200!
35
2781 changedPassword:cannot be empty!
2782 changedPassword:Byte length cannot be greater
than 200!
T110 2783 oriInvoiceId:cannot be empty!
2784 oriInvoiceId:Byte length cannot be greater than
20!
T109、T110 2785 Tax Amount in the Tax Details(Section E: Tax
Details) cannot be less than the sum Tax in the
Goods Details(Section D: Goods & Services
Details)!
T109 2786 You cannot issue offline invoices!
2787 goodsDetails-->discountFlag:The previous line is
not a discounted line,this line can not be a
discount line!
2788 Branch 1 has no stock of this production!
2789 basicInformation-->issuedDate: You cannot
backdate invoices relating to prior periods!
T109、T110 2790 goodsDetails-->exciseTax:If 'exciseFlag' is '2',
it must be empty or '0'!
2791 goodsDetails-->exciseTax:When exciseFlag is '1'
must be negative or '0'!
T109 2792 goodsDetails-->exciseTax:when exciseFlag is '1'
and discountFlag is '0' and exciseRule is '2'
Must be '0'!
2793 goodsDetails-->exciseRate: excise tax rate error,
it should be *** !
2794 goodsDetails-->exciseTax: excise tax calculation
error!
2795 goodsDetails-->exciseRule:exciseRule error!
2796 You can't select tax exemption and deemed at the
same time!
T121 2797 issueDate:cannot be empty!
T130 2798 issueDate:The time format must bey yyy-MM-dd!
2799 commodityCategoryId: The original product
category of the product is 'service', you cannot
modify it to 'commodity'.
2800 commodityCategoryId: The original product
category of the product is 'commodity', you
cannot modify it to 'service'.
T114 2801 invoiceApplyCategoryCode:Invalid field value,
this document is rebate!
36
2802 oriInvoiceId:If 'invoiceApplyCategoryCode' is
'105',it must be empty!
2803 The credit note without original FDN has been
cancelled, please don't apply repeatedly!
T109 2804 You don't have permission to issue credit memo!
2805 buyerDetails-->buyerType: If invoiceType is
'5' ,'invoiceIndustryCode' is not '102',
buyerType must be '0' or '1'
2806 buyerDetails-->buyerTin: If invoiceType is
'5' ,'invoiceIndustryCode' is not '102', buyerTin
can not be empty!
2807 basicInformation-->invoiceIndustryCode:If
invoiceType is '50
',invoiceIndustryCode cannot be '104'!
TCS 9901 Reached the maximum concurrency, Please try again
later.
TCS 9902 Cache service connection failed, please try again
later.
T109 2808 airlineGoodsDetails:If invoiceIndustryCode is
'109',airlineGoodsDetails cannot be empty!
2809 buyerDetails-->buyerType: The foreigner is not
allowed for generating invoices with deemed item.
T131 2810 Invoice number does not exist!
2811 The invoice is not for you!
2812 The type of invoice must be Invoice/Receipt or
Debit Note!
2813 The invoice has been canceled!
2814 The invoice has been issued credit note!
2815 Commodity code (****) does not belong to the
invoice!
2816 goodsDetails-->taxRate: You are duty free
taxpayer, if 'invoiceIndustryCode' not equal to
'102' or '104' , 'taxRate' should be zero or
standard!
T109 2817 goodsDetails-->exciseFlag: You are duty free
taxpayer, if 'invoiceIndustryCode' not equal to
'102' or '104' , 'exciseFlag' must be '2'!
T110 2818 Please request credit note without original
invoice!
T131 2819 You cannot use airline invoices for stock
T109 2820 goodsDetails-->goodsCategoryId: The commodity
37
category can only be service!
2821 buyerDetails-->buyerTin: you don't have
permission to issue deemed invoices!
2822 basicInformation-->invoiceType: Duty free shops
cannot issue rebate / memo , 'invoiceType' can
not be '5'!
2823 buyerDetails-->buyerTin: if the 'deemedFlag' is
'1','buyerTin' can not be empty, and 'buyerTin'
must exist in the deemed list and be valid!
2824 E-Invoicing status abnormal!
T109 2825 You don't have permission to issue credit note
without original invoice!
2826 buyerDetails-->buyerTin: If 'invoiceIndustryCode'
is '104', 'buyerTin' must be the same as the
'tin' in the outer packet!
2827 goodsDetails-->exciseFlag:Credit Memo/Rebate
products cannot include excise duty ,'exciseFlag'
must be '2'!
2828 taxDetails-->taxCategoryCode:cannot be empty!
2829 taxDetails-->taxCategoryCode:Byte length cannot
be greater than 2!
2830 taxDetails-->taxCategoryCode:Invalid field value!
2831 taxDetails-->taxRateName: If 'taxCategoryCode' is
'05' or '10' , 'taxRateName' can not be empty!
2832 goodsDetails-->exciseRateName: If 'exciseFlag' is
'1', 'exciseRateName' can not be empty!
2833 taxDetails-->taxRate: If 'taxCategoryCode' is * ,
'taxRate' must be *!
2834 buyerDetails-->buyerLegalName: If
'invoiceIndustryCode' is '102', 'buyerLegalName'
can not be empty!
T127 2835 branchId:cannot be empty!
2836 branchId:Byte length cannot be greater than 18!
2837 branchId does not belong to current taxpayer!
T109 2838 You can't issue invoice/receipt through this
channel, please contact URA!
2839 The buyer TIN relates to Non-individual. Please
use customer type as Business to complete this
transaction!
2840 taxDetails-->taxCategoryCode: You can not issue
invoices of this tax type 'Out of Scope for VAT'!
38
T131 2841 Same FDN or productionBatchNo cannot be stocked
in more than once!
2842 isCheckBatchNo:Invalid field value!
T145 2843 'productionBatchNo'、'invoiceNo'、'referenceNo'
cannot be empty at the same time!
2844 productionBatchNo:cannot be empty!
2845 productionBatchNo:Byte length cannot be greater
than 50!
2846 referenceNo:cannot be empty!
2847 referenceNo:Byte length cannot be greater than
20!
T109 2848 goodsDetails-->exciseFlag: This product is
configured as excise duty, 'exciseFlag' must be
'1'!
2849 goodsDetails-->itemCode: Does not match the
'categoryId'!
2850 goodsDetails-->exciseFlag: TThis product is not
configured as excise duty, 'exciseFlag' must be
'2'!
2851 goodsDetails-->exciseFlag: You have not
registered Excise Duty or Excise Duty is not
effective,'exciseFlag' must be '2'!
2852 goodsDetails-->exciseFlag: Excise duty is not
available in export invoice , 'exciseFlag' must
be '2'!
2853 goodsDetails-->vatApplicableFlag: cannot be
empty!
2854 goodsDetails-->vatApplicableFlag: Byte length
cannot be greater than 1!
2855 goodsDetails-->vatApplicableFlag: Invalid field
value!
2856 goodsDetails-->vatApplicableFlag: You can not
issue invoices of this tax type 'Out of Scope for
VAT','vatApplicableFlag' can not be '0'!
2857 goodsDetails-->taxRate:If 'vatApplicableFlag' is
'0', 'taxRate' must be '0'!
2858 Failed to save some goods items, please contact
URA!
2859 goodsDetails-->deemedFlag: If 'vatApplicableFlag'
is '0', 'deemedFlag' should be '2'!
T146 2860 type: cannot be empty!
39
2861 type: Byte length cannot be greater than 1!
2862 type: Invalid field value!
2863 categoryCode: cannot be empty!
2864 categoryCode: Byte length cannot be greater than
1!
2865 issuedDate:cannot be empty!
2866 issuedDate:The time format must beyyyy-MM-dd
HH:mm:ss!
2867 categoryCode: does not exist!
T106 2868 queryType: cannot be empty!
2869 queryType: Byte length cannot be greater than 1!
2870 queryType: Invalid field value!
2871 If 'queryType' is '0', 'buyerTin'、
'buyerNinBrn'、'buyerLegalName' must be empty!
T109、T110 2872 goodsDetails-->unitOfMeasure:Please use a unit of
measure acceptable by customs to proceed!
T127 2873 serviceMark: cannot be empty!
2874 serviceMark: Byte length cannot be greater than 3!
2875 serviceMark: Invalid field value!
2876 haveExciseTax: cannot be empty!
2877 haveExciseTax: Byte length cannot be greater than
3!
2878 haveExciseTax: Invalid field value!
T147 、 T148 、 2879 combineKeywords: cannot be empty!
T149
2880 combineKeywords: Byte length cannot be greater than
50!
2881 id:cannot be empty!
2882 id:Byte length cannot be greater than 18!
T109 2883 goodsDetails-->pack: value error, it should be *!
2884 goodsDetails-->stick: value error, it should be *!
T131 2885 goodsStockInItem-->remarks:cannot be empty!
2886 goodsStockInItem-->remarks:Byte length cannot be
greater than 1024!
T109、T110 2887 buyerDetails-->buyerTin: If 'buyerType' is 'B2C',
'buyerTin' 、 'buyerNinBrn' 、 'buyerLegalName' and
'buyerMobilePhone' cannot be empty at the same
time!
2888 buyerDetails-->buyerTin: If 'buyerType' is
'Foreigner', 'buyerCitizenship'、'buyerPassportNum'
and 'buyerLegalName' cannot be empty at the same
40
time!
TCS 2889 The current version is too low, please upgrade to
the latest version.
T131、T139 2890 rollBackIfError:cannot be empty!
2891 rollBackIfError:Byte length cannot be greater than
1!
2892 rollBackIfError: Invalid field value!
T111 2893 creditNoteType: cannot be empty!
2894 creditNoteType: Byte length cannot be greater than
1!
2895 creditNoteType: Invalid field value!
T106 2896 dataSource: cannot be empty!
2897 dataSource: Byte length cannot be greater than 3!
2898 dataSource: Invalid field value!
T127 2899 goodsTypeCode: cannot be empty!
2900 goodsTypeCode: Byte length cannot be greater than
3!
2901 goodsTypeCode: Invalid field value!
T109 2902 edcDetails-->tankNo: cannot be empty!
2903 edcDetails-->tankNo: Byte length cannot be greater
than 50!
2904 edcDetails-->pumpNo: cannot be empty!
2905 edcDetails-->pumpNo: Byte length cannot be greater
than 50!
2906 edcDetails-->nozzleNo: cannot be empty!
2907 edcDetails-->nozzleNo: Byte length cannot be
greater than 50!
2908 edcDetails-->controllerNo: cannot be empty!
2909 edcDetails-->controllerNo: Byte length cannot be
greater than 50!
2910 edcDetails-->acquisitionEquipmentNo: cannot be
empty!
2911 edcDetails-->acquisitionEquipmentNo: Byte length
cannot be greater than 50!
2912 edcDetails-->levelGaugeNo: cannot be empty!
2913 edcDetails-->levelGaugeNo: Byte length cannot be
greater than 50!
2914 edcDetails-->mvrn: cannot be empty!
2915 edcDetails-->mvrn: Byte length cannot be greater
than 32!
T167 2916 fuelType: cannot be empty!
41
2917 fuelType: Byte length cannot be greater than 200!
T170 2918 deviceNumber: cannot be empty!
2919 deviceNumber: Byte length cannot be greater than
20!
2920 deviceNumber does not belong to you.
T169 2921 Pump no does not exist!
2922 edcOrderNum: cannot be empty!
2923 edcOrderNum: Byte length cannot be greater than 24!
2924 disconnectedType: cannot be empty!
2925 disconnectedType: Byte length cannot be greater
than 3!
2926 disconnectedType: Invalid field value!
2927 disconnectedTime: cannot be empty!
2928 disconnectedTime: The time format must bey yyyy-
MM-dd HH:mm:ss!
T109 2929 branch does not match the gas station.
2930 invoiceNo: TCS is offline now, Can't find this
invoice!
T166 2931 invoiceNo:You can not modify buyer's information
more than X times.
2932 invoiceNo:The buyer information cannot be modified
because of the fiscal document was generated *
hours ago.
T163 2933 shiftNo: cannot be empty!
2934 shiftNo: Byte length cannot be greater than 20!
2935 startVolume: cannot be empty!
2936 startVolume:The integer character length cannot
exceed 12, and the decimal character length cannot
exceed 2!
2937 startVolume: Cannot be positive!
2938 startVolume: Cannot be equal to 0!
2939 startVolume: Cannot be negative!
2940 endVolume: cannot be empty!
2941 endVolume:The integer character length cannot
exceed 12, and the decimal character length cannot
exceed 2!
2942 endVolume: Cannot be positive!
2943 endVolume: Cannot be equal to 0!
2944 endVolume: Cannot be negative!
2945 fuelType: cannot be empty!
2946 fuelType: Byte length cannot be greater than 200!
42
2947 goodsId: cannot be empty!
2948 goodsId: Byte length cannot be greater than 18!
2949 goodsCode: cannot be empty!
2950 goodsCode: Byte length cannot be greater than 50!
2951 invoiceNumber: cannot be empty!
2952 invoiceNumber:The integer character length cannot
exceed 12!
2953 invoiceNumber: Cannot be positive!
2954 invoiceNumber: Cannot be equal to 0!
2955 invoiceNumber: Cannot be negative!
2956 nozzleNo: cannot be empty!
2957 nozzleNo: Byte length cannot be greater than 50!
2958 pumpNo: cannot be empty!
2959 pumpNo: Byte length cannot be greater than 50!
2960 tankNo: cannot be empty!
2961 tankNo: Byte length cannot be greater than 50!
2962 userName: cannot be empty!
2963 userName: Byte length cannot be greater than 500!
2964 userCode: cannot be empty!
2965 userCode: Byte length cannot be greater than 100!
2966 startTime:cannot be empty!
2967 startTime:The time format must bey yyyy-MM-dd
HH:mm:ss!
2968 endTime:cannot be empty!
2969 endTime:The time format must bey yyyy-MM-dd
HH:mm:ss!
2970 modifyType: cannot be empty!
2971 modifyType: Byte length cannot be greater than 1!
2972 modifyType: Invalid field value!
T166 2973 invoiceNo does not exist.
T109 2974 edcDetails-->nozzleNo: NozzleNo error.
2975 edcDetails-->tankNo: Does not match 'nozzleNo'.
2976 edcDetails-->pumpNo: Does not match 'nozzleNo'.
2977 edcDetails-->controllerNo: ControllerNo error.
2978 edcDetails-->acquisitionEquipmentNo:
AcquisitionEquipmentNo error.
2979 edcDetails-->levelGaugeNo: LevelGaugeNo error.
T130 2980 goodsDetails-->item: **** is not a fuel type item.
2981 measureUnit: The defalut measure unit should be
'***'.
2982 ***: The '***' is not in the UoM list of fuel.
43
2983 pieceScaledValue error, it should be '***'.
T172 2984 nozzleId: cannot be empty!
2985 nozzleId: Byte length cannot be greater than 18!
2986 nozzleNo: cannot be empty!
2987 nozzleNo: Byte length cannot be greater than 50!
2988 nozzleId does not match 'nozzleNo'.
2989 status: cannot be empty!
2990 status: Byte length cannot be greater than 3!
2991 status: invalid field value!
T130 2992 commodityCategoryId '***' have been used.
2993 fuelTankId: cannot be empty!
2994 fuelTankId: Byte length cannot be greater than 18!
2995 fuelTankId '**' does not match the branch '**'.
T165 2996 tankList can not be empty!
2997 pumpList can not be empty!
2998 pumpId: cannot be empty!
2999 pumpId: Byte length cannot be greater than 18!
3000 pumpVersion: cannot be empty!
3001 pumpVersion: Byte length cannot be greater than 15!
3002 goodsId '***' is not fuel type!
3003 pumpId '***' is not for you!
3004 updateDateStr:cannot be empty!
3005 updateDateStr:The time format must be yyyy-MM-dd
HH:mm:ss!
T166 3006 createDateStr:cannot be empty!
3007 createDateStr:The time format must be yyyy-MM-dd
HH:mm:ss!
T139 3008 sourceFuelTankId: cannot be empty!
3009 sourceFuelTankId: Byte length cannot be greater
than 18!
3010 source fuel tank '**' does not match the source
branch '**'.
3011 destinationFuelTankId: cannot be empty!
3012 destinationFuelTankId: Byte length cannot be
greater than 8!
3013 destination fuel tank '**' does not match the
destination branch '**'.
3014 Goods with code '***' should be non-fuel products.
3015 Goods with code '***' should be fuel products.
T131 3016 lossQuantity cannot be empty!
3017 lossQuantity The integer character length cannot
44
exceed 12!
3018 lossQuantity:Cannot be positive!
3019 lossQuantity:Cannot be equal to 0!
3020 lossQuantity:Cannot be negative!
3021 originalQuantity cannot be empty!
3022 originalQuantity The integer character length
cannot exceed 12!
3023 originalQuantity:Cannot be positive!
3024 originalQuantity:Cannot be equal to 0!
3025 originalQuantity:Cannot be negative!
3026 loss quantity should be between ** and **.
3027 calculation error, the quantity should be equals
original qty - loss qty.
3028 fuel tank '**' does not match the goods code '**'.
T109 3029 Fuel invoice cannot be issued debit note.
T165 3031 presentPrice:cannot be empty!
3032 presentPrice:The integer character length cannot
exceed 12!
3033 presentPrice:Cannot be positive!
3034 presentPrice:Cannot be equal to 0!
3035 presentPrice:Cannot be negative!
T130 3036 The commodity category of the product has been
marked as 'excisable' by URA, the value of field
'haveExciseTax' should be '101'.
T109 3037 The following Goods/ Services remaining amount or
quantity of Deemed VAT/ VAT Exemption is less than
the entered amount or quantity: {0} please modify.
3038 goodsDetails-->deemedExemptCode: cannot be empty!
3039 goodsDetails-->deemedExemptCode: Byte length
cannot be greater than 3!
3040 goodsDetails-->deemedExemptCode: Invalid field
value!
3041 goodsDetails-->vatProjectId: cannot be empty!
3042 goodsDetails-->vatProjectId: Byte length cannot be
greater than 18!
3043 goodsDetails-->vatProjectId: Deemed/Exempt Project
is invalid.
3044 goodsDetails-->vatProjectName: cannot be empty!
3045 goodsDetails-->vatProjectName: Byte length cannot
be greater than 100!
3046 goodsDetails-->vatProjectName: does not exist!
45
3047 goodsDetails-->unitOfMeasure: You only can issue a
Deemed invoice for this product using the Unit of
Measure "***" configured by URA for this buyer.
3048 goodsDetails-->deemedFlag: If 'deemedExemptCode'
is '101', 'deemedFlag' should be '1'!
3049 goodsDetails-->deemedFlag: If 'deemedExemptCode'
is '102', 'deemedFlag' should be '2'!
3050 taxDetails-->taxAmount: must be '0' if the tax
category is zero rate.
3051 taxDetails-->taxAmount: must be '0' if the tax
category is exemption.
3052 Exchange rate is currently being updated. Please
try again later.
T166 3053 Credit note is not allowed to modify the buyer's
information.
3054 The invoice has been issued credit note, can not
modify buyer's information.
3055 The invoice has been applied for credit note, can
not modify buyer's information.
T109、T175 3056 mobileNumber:cannot be empty.
3057 mobileNumber:Byte length cannot be greater than 30.
3058 agentType: invalid field value.
3059 Parameter Missing
3060 The TIN is not registered in the ETAX system
3061 ETAX data conversion exception
3062 Headquarters information not found
3063 Your tin does not exist.
3064 The status of TIN is abnormal.
3065 Your TIN and mobile number do not match.
3066 The mobile number already exists.
3067 You have more than one branches, not allowed to use
USSD.
3068 You have registered VAT,not allowed to use USSD.
3069 You are not allowed to use USSD.
3070 You have registered for non-USSD,not allowed to use
USSD.
3071 Your TIN and legal name do not match.
3072 The device status is abnormal.
3073 basicInformation-->deviceNo: is not correct.
3074 Your branch does not exist.
T109 3075 Please use interface api-T110 to apply credit note.
46
3076 goodsDetails-->discountTotal:'discountFlag' is
'1', therefore 'discountTotal' can not be empty!
3077 buyerDetails-->buyerTin: If 'buyerType' is '0', and
'InvoiceIndustry' is '101', and 'nonResidentFlag'
is '0', 'buyerTin' cannot be empty!
3078 buyerDetails-->nonResidentFlag: Invalid field
value!
3079 goodsDetails-->taxRate: You are applying an invoice
with exempting VAT project, the tax rate should be
empty or '-'.
3080 goodsDetails-->exciseRate: You are applying an
invoice with exempting VAT project, the excise tax
rate should be empty or '-'.
3081 You are generating B2G invoice, the invoice type
should be 'Invoice/Receipt' or 'Credit Note' or
'Debite Note'.
3082 buyerDetails-->buyerTin: If 'buyerType' is 'B2G',
'buyerTin' cannot be empty.
3083 The buyer is not allowed to issue B2G invoice.
T176 3084 deviceIssuingStatus: cannot be empty!
3085 deviceIssuingStatus: Byte length cannot be greater
than 3!
3086 deviceIssuingStatus: Invalid field value!
T109 3087 VAT is not allowed for receipt.
ALL 3088 Device has been blocked, please contact your
manager.
T110、T114 3089 attachmentList-->fileName: cannot be empty!
3090 attachmentList-->fileName: Byte length cannot be
greater than 256!
3091 attachmentList-->fileType: cannot be empty!
3092 attachmentList-->fileType: Byte length cannot be
greater than 5!
3093 attachmentList-->fileType: format error.
3094 attachmentList-->fileContent: cannot be empty.
3095 attachmentList-->fileContent: parsing error.
T109 3096 The size of the uploaded attachment cannot exceed
** MB.
3097 Agent invoicing is limited to service goods.
3098 Agent invoicing does not support offline mode.
3099 You have no agency qualification, or your agency
qualification has expired.
47
3100 The seller does not match the agent, or the agency
relationship has expired.
T127 3101 queryType: cannot be empty!
3102 queryType: Byte length cannot be greater than 1!
3103 queryType: Invalid field value!
3104 tin: If 'queryType' is 'Agent goods query', 'tin'
cannot be empty.
3105 branchId: If 'queryType' is 'Agent goods query',
'branchId' cannot be empty.
3106 branchId does not belong to taxpayer '*'.
3107 tin: If 'queryType' is 'Normal goods query', 'tin'
must be empty.
3108 serviceMark: If 'queryType' is 'Agent goods query',
'serviceMark' must be 'service goods'.
T106 3109 sellerTinOrNin: cannot be empty.
3110 sellerTinOrNin: Byte length cannot be greater than
100.
3111 sellerLegalOrBusinessName: can not be empty.
3112 sellerLegalOrBusinessName: Byte length cannot be
greater than 256.
T109 3113 You are trying to Generate an invoice relating to
excisable product(s). Please Add Excise Duty to
this transaction to proceed.
3114 goodsDetails-->discountTotal: cannot be greater
than total.
T110 3115 summary-->grossAmount: cannot be greater than
original invoice.
3116 summary-->taxAmount: cannot be greater than
original invoice.
T143 3117 deviceType: cannot be empty!
3118 deviceType: Byte length cannot be greater than 1!
3119 deviceType: Invalid field value!
3120 This device has been distributed to another TIN.
3121 This device has been distributed to another branch
''.
T109 3122 You are issuing an agent invoice/receipt, but the
product '*' is not authorized.
3123
T110 3124 You are not allowed to issue 'credit note without
original invoice' for your principal.
T114 3125 Only when the device/virtual device (DSN: ***)
48
status is registered, you can cancel it.
T131 3126 The invoice has been flagged and can not be added
to your stock ledger.
T109 3127 Your principal can't issue invoice/receipt through
this channel, please contact URA.
3128 basicInformation-->deviceNo: Device status is
abnormal.
3129 If 'buyerType' is 'B2B' or 'B2G', 'buyerTin', and
T181 'buyerNinBrn' cannot be empty at the same time.
3130 If 'buyerType' is 'B2C', 'buyerTin', 'buyerNinBrn',
'buyerLegalName', and 'buyerLinePhone' cannot be
empty at the same time.
3131 If 'buyerType' is 'Foreigner', 'buyerCitizenship',
'buyerPassportNum' and 'buyerLegalName' cannot be
empty at the same time.
3132 Frequent contacts cannot exceed X.
3133 id does not exist.
T110、T114 3134 Document 'original invoice' is not available,
please contact URA.
49
Credit Note application detail T112
Credit Note issue approval T113
Credit Note application cancel T114
System dictionary update T115
Z-report Daily report upload T116
Invoice reconciliation T117
Query Credit Note Application T118
and Cancel of Debit Note
Application Details
Query Taxpayer Information By T119
TIN
Void Credit Debit/Note T120
Application
Acquiring exchange rate T121
Query cancel credit note details T122
50
Goods Stock recods query T145
Query Commodity Category T146
/Excise Duty
Goods Stock recods query T147
(Different Condition)
Goods Stock recods detail T148
query
Goods Stock Adjust recods T149
query
Goods Stock Adjust detail T160
query
Query fuel type T162 EDC
Upload shift information T163 EDC
Upload EDC disconnection data T164 EDC
Update buyer details T166 EDC invoice-change buyer’s info
EDC Invoice /Receipt inquiry T167 EDC
Query fuel pump version T168 EDC
Query fuel pump、fuel nozzle、 T169 EDC
fuel tank according to pump
number
Query efd location T170
Query EDC UoM exchange rate T171 EDC
Fuel nozzle status upload T172 EDC
Query Edc device Version T173 EDC
Account Creation for USSD T175 USSD
Upload device issuing status T176 EFD/Offline Enabler
Negative stock configration T177
inquiry
51
{
Response
"currentTime":"28/03/2024 11:55:19"
Message
}
Flow Description Null
Field description
2. Client initialization
2. The server verifies that tin matches deviceNo and the status is normal.
3. Get the private key clientPriKey of the device, call the white box encryption
Flow Description program, encrypt the private key, the white box will return the encrypted
clientPriKey and keyTable, and the server will return these two values to the
client.
Field description
52
Field Field Name Required Length Description
clientPriKey Encrypted client 4000 The private key of the client,
private key used to decrypt the encrypted
string returned by the server.
Y
3. Sign in
53
"branchName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"branchType": "105",
"contactMobile": " ",
"contactNumber": " ",
"eInvoiceStatus": "101",
"id": "284303654534142342",
"placeOfBusiness": "23 MARKET STREET BUIKWE LUGAZI
MUNICIPALITY CENTRAL DIVISION NAKAZADDE WARD ",
"registrationType": "102,103"
},
"buyerModifiedTimes": "1",
"frequentContactsLimit": "40",
"taxType": [
{
"registrationDate": "27/08/2020",
"taxTypeCode": "307",
"taxTypeName": "Imports and Exports"
},
{
"cancellationDate": "27/09/2018",
"registrationDate": "01/08/2015",
"taxTypeCode": "308",
"taxTypeName": "PAYE"
},
{
"registrationDate": "01/08/2014",
"taxTypeCode": "301",
"taxTypeName": "Value Added Tax"
},
{
"registrationDate": "01/07/2010",
"taxTypeCode": "302",
"taxTypeName": "Income Tax"
},
{
"registrationDate": "01/07/2010",
"taxTypeCode": "306",
"taxTypeName": "Motor Vehicle"
}
],
54
"webServiceURL":
"https://efristest.ura.go.ug/efrisws/ws/taapp/getInformation",
"exciseDutyVersion": "1.8",
"maxGrossAmount": "100000000",
"isAllowBackDate": "0",
"taxpayer": {
"businessName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"contactMobile": "00256772513165",
"contactNumber": "2560778497936",
"departmentId": "158",
"id": "284303654534142341",
"legalName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"ninBrn": "/119742",
"placeOfBusiness": "23 MARKET STREET LUGAZI BUIKWE LUGAZI
MUNICIPALITY CENTRAL DIVISION NAKAZADDE WARD ",
"taxpayerRegistrationStatusId": "401",
"taxpayerStatusId": "101",
"taxpayerType": "202",
"tin": "1000345649"
},
"financialYearDate": "0701",
"goodsStockLimit": "101",
"exportInvoiceExciseDuty": "0",
"periodDate": "16",
"isDutyFreeTaxpayer": "0",
"lowestTCSVersion": "19",
"environment": "1",
"isAllowIssueInvoice": "1",
"sellersLogo": "",
"isReferenceNumberMandatory": "1",
"isAllowOutOfScopeVAT": "0",
"whetherEnableServerStock": "1",
"device": {
"branchCode": "00",
"branchId": "284303654534142342",
"deviceModel": "TCS",
"deviceNo": "TCS9e0df01728335239",
"deviceStatus": "801",
"offlineAmount": "1001",
"offlineDays": "5",
55
"offlineValue": "1000000000"
}
}
1. Return taxpayer information, device information
2. For the first login, the dictionaryVersion exists locally. The second
comparison compares the local dictionaryVersion with the dictionaryVersion.
Flow Description
If the dictionaryVersion is greater than the local dictionaryVersion, the T115
interface is called to update the dictionary information. If it is equal, it is not
necessary to call T115.
Field description
56
buyerModificati buyerModification Number From the system parameter, if not,
Y
onPeriod Period the default value is 48 hours
autoCalculateS autoCalculateSecti 1 0: No 1:Yes
Y
ectionE onE
isNozzleLocked isNozzleLockedBy 1 0: No 1:Yes
Y
ByOtherDevices OtherDevices
taxpayer branch
brachStatus Branch Status N 50
branchCode branchCode N 500
branchName Branch Name N 100
branchType Branch Type 50 Corresponding dictionary
N
branchType
contactMobile contact number N 60
contactNumber Landline 50 Corresponding dictionary
N
businessType
eInvoiceStatus eInvoice Status N 10
id Branch ID N 50 Corresponding branch ID
placeOfBusines Taxpayer type 1000
N
s
registrationTyp registrationType 50
N
e
financialYearDa financialYearDate 4
Y
te
goodsStockLimi goodsStockLimit 3 101: restricted, inventory cannot
t be negative
Y
102: unlimited, inventory can be
negative
exportInvoiceEx exportInvoiceExcise 1 0:No 1:Yes
Y
ciseDuty Duty
periodDate periodDate Number From the system parameter, if not,
Y
the default value is 7
isDutyFreeTaxp isDutyFreeTaxpaye 1 If the taxpayer is in the list and
ayer r valid, and the taxpayer has no
Y
consumption tax, the value is 1,
otherwise it is 0
lowestTCSVersi lowestTCSVersion 3
Y
on
environment environment Y 1 0:Production;
1:Test
isAllowIssueInv isAllowIssueInvo Y 1 0:No 1:Yes
58
oice ice
sellersLogo Sellers Logo Unlimite Base64 content
Y
d
isReferenceNu isReferenceNumbe 1 0:No 1:Yes
mberMandator rMandatory Y
y
isAllowOutOfSc isAllowOutOfScope 1 0:No 1:Yes
Y
opeVAT VAT
whetherEnable whetherEnableServ 1 0:No 1:Yes
Y
ServerStock erStock
device
branchCode Branch code N 50
branchId Branch ID N 50
deviceModel Equipment model Y 50
deviceNo Device Number Y 50
deviceStatus Equipment status 3 Corresponding dictionary
Y
deviceStatus
offlineAmount The maximum Number
number of invoices Y
that can be issued
offlineDays Offline limit days Y Number
offlineValue The maximum Number
invoice amount Y
that can be issued
Interface Name Get symmetric key and signature information – Interface Unavailable for offline
Description Get symmetric key and signature information
Interface Code T104
Request
N
Encrypted
Response
N
Encrypted
Request Message Null
{
Response "passowrdDes": "12345678",
Message "sign": "213456"
}
59
1. The client gets a symmetric key every time you log in, and all subsequent
encryption is encrypted by symmetric key.
Flow Description
2. The server randomly generates an 8-bit symmetric key and a signature value
for encryption.
Field description
5. Forget Password
Field description
60
6. Invoice /Receipt query
"queryType": "1",
"dataSource": "101",
"sellerTinOrNin": "1009837013",
"sellerLegalOrBusinessName": "CLASSY TRENDS BOUTIQUE"
}
{
"dateFormat": "dd/MM/yyyy",
Response "nowTime": "2024/04/02 10:19:09",
Message "page": {
"pageCount": 1,
"pageNo": 1,
61
"pageSize": 0,
"totalSize": 119
},
"records": [
{
"branchId": "284303654534142342",
"branchName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"businessName": "WANASHA GENERAL ENGINEERING &
SERVICES LIMITED",
"buyerBusinessName": "G.M SUGAR WORKS LTD",
"buyerLegalName": "G.M. SUGAR LIMITED",
"buyerTin": "1000041428",
"currency": "UGX",
"dataSource": "106",
"dateFormat": "dd/MM/yyyy",
"deviceNo": "TCS9e0df01728335239",
"grossAmount": "10000",
"id": "711384798272320053",
"invoiceIndustryCode": "101",
"invoiceKind": "1",
"invoiceNo": "323128816894",
"invoiceType": "1",
"isInvalid": "0",
"isRefund": "0",
"issuedDate": "27/03/2024 17:19:09",
"issuedDateStr": "27/03/2024",
"legalName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"nowTime": "2024/04/02 10:19:09",
"operator": "Runx",
"pageIndex": 0,
"pageNo": 0,
"pageSize": 0,
"referenceNo": "1",
"taxAmount": "1525.42",
"uploadingTime": "27/03/2024 17:19:09",
"userName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED"
},
{
"branchId": "284303654534142342",
62
"branchName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"businessName": "WANASHA GENERAL ENGINEERING &
SERVICES LIMITED",
"buyerBusinessName": "RUMI CONFECTIONERY",
"buyerLegalName": "RUMI CONFECTIONERY",
"buyerTin": "1000402534",
"currency": "UGX",
"dataSource": "106",
"dateFormat": "dd/MM/yyyy",
"deviceNo": "TCS9e0df01728335239",
"grossAmount": "84745.77",
"id": "666408661528060012",
"invoiceIndustryCode": "101",
"invoiceKind": "1",
"invoiceNo": "323128621774",
"invoiceType": "1",
"isInvalid": "0",
"isRefund": "0",
"issuedDate": "22/03/2024 12:22:27",
"issuedDateStr": "22/03/2024",
"legalName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"nowTime": "2024/04/02 10:19:09",
"operator": "Runx",
"pageIndex": 0,
"pageNo": 0,
"pageSize": 0,
"referenceNo": "000001",
"taxAmount": "0",
"uploadingTime": "22/03/2024 12:22:27",
"userName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED"
}]
The data is arranged in reverse order according to the date of issue. Only query
Flow Description the seller Tin equal to (the outer packet gets Tin)
Field description
63
invoiceNo Invoice number 20 The query debitnote corresponds
N to the Invoice No. of the positive
ticket
deviceNo Device No N 20
oriInvoiceNo oriInvoiceNo N 20
buyerTin Buyer TIN N 10
buyerNinBrn Buyer NinBrn N 100
buyerLegalNam Buyer name 256
N
e
combineKeywo EFD query 20
N
rds conditions
invoiceType invoice type 1 1:Invoice/Receipt
2:Credit Note
5:Credit Memo
4:Debit Note
N Corresponding dictionary
table invoiceType
If QueryType is 0,buyerTin、
buyerNinBrn、buyerLegalName
must be empty
dataSource dataSource 3 dataSource can be empty
101: EFD
102: Windows Client APP
103: WebService API
N 104: Mis
105: Webportal
106: Offline Mode Enabler
107:USSD
108:ASK URA
65
buyerBusinessN Buyer Business 256
Y
ame name
buyerLegalNam Buyer name 256
Y
e
buyerTin Buyer TIN 10-20
currency Currency Y 10
dataSource Data Sources 3 101:EFD
102:Windows Client APP
103:WebService API
Y
104:Mis
105:Webportal
106:Offline Mode Enabler
dateFormat Date Format Y 20 Date
deviceNo deviceNo Y 50
grossAmount total amount Y Number
id Invoice ID Y 32
invoiceIndustry invoiceIndustryCod 3 101 General Industry
Code e 102 Export
N
103 Import
104 Imported Service
invoiceKind invoice kind Y 1 1 :Invoice 2: Receipt
invoiceNo
invoiceType invoice type 1 1:Invoice/Receipt
2:Credit Note
5:Credit Memo
Y 4:Debit Note
Corresponding dictionary
table invoiceType
isInvalid Obsolete sign 1 Obsolete sign 1:obsolete 0:Not
Y obsolete Note: Obsolete only for
positive and supplementary tickets
isRefund Is it open to a 1 Whether it is opened for a ticket /
credit note/Debit Debit Note: 0 - not issued a
N
Note negative ticket / Debit 1- is issued
Credit 2- is issued Debit
issuedDate Issued Date Y 20 Date & Time stamp
issuedDateStr Date Y 10 Date
legalName Seller legal name Y 500
nowTime Now Time Y 20 Date & Time stamp
operator operator N 100
66
pageIndex Page Index N 3
pageNo current page 10
Y
number
pageSize How many records 3
are displayed per Y
page
referenceNo Reference No N 50 Seller's Reference No.
taxAmount tax Y Number
uploadingTime Uploading Time Y Date
userName User Name N 500
67
},
"records": [
{
"businessName": "WANASHA GENERAL ENGINEERING &
SERVICES LIMITED",
"buyerBusinessName": "G.M SUGAR WORKS LTD",
"buyerLegalName": "G.M. SUGAR LIMITED",
"buyerTin": "1000041428",
"currency": "UGX",
"dataSource": "106",
"dateFormat": "dd/MM/yyyy",
"grossAmount": "10000",
"id": "711384798272320053",
"invoiceNo": "323128816894",
"issuedDate": "27/03/2024 17:19:09",
"legalName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"nowTime": "2024/04/03 11:24:42",
"pageIndex": 0,
"pageNo": 0,
"pageSize": 0,
"tin": "1000345649"
},
{
"businessName": "WANASHA GENERAL ENGINEERING &
SERVICES LIMITED",
"buyerBusinessName": "RUMI CONFECTIONERY",
"buyerLegalName": "RUMI CONFECTIONERY",
"buyerTin": "1000402534",
"currency": "UGX",
"dataSource": "106",
"dateFormat": "dd/MM/yyyy",
"grossAmount": "84745.77",
"id": "666408661528060012",
"invoiceNo": "323128621774",
"issuedDate": "22/03/2024 12:22:27",
"legalName": "WANASHA GENERAL ENGINEERING & SERVICES
LIMITED",
"nowTime": "2024/04/03 11:24:42",
"pageIndex": 0,
"pageNo": 0,
"pageSize": 0,
68
"tin": "1000345649"
}]
1. Display the positive invoices that the current taxpayer has opened, and filter
out the current positive invoices without submitting a credit note or Debit note
application, and Not obsolete
Flow Description
2. The data is arranged in reverse order according to the date of issue.
3. Only query the seller Tin equal to (the outer packet gets Tin)
Field description
Request:
Field Field Name Required Length Description
invoiceNo Invoice number N 20
deviceNo Device No N 20
buyerTin Buyer TIN N 100
buyerLegalNam Buyer Legal Name 20
N
e
invoiceType invoice type N 1 1:invoice 4:debit
startDate start date N 20 yyyy-MM-dd
endDate End date N 20 yyyy-MM-dd
pageNo current page 10
Y
number
pageSize How many records 3 Cannot be greater than the
are displayed per Y integer 100
page
branchName branchName N 500
Response:
Field Field Name Required Length Description
dateFormat Date Format Y 10
nowTime Current time Y 20
page
pageCount total pages Y 10
pageNo Current page 10
Y
number
pageSize How many records Y 3
69
are displayed per
page
totalSize Total number of 10
Y
articles
records
businessName Seller business 256
Y
Name
buyerBusinessN business name 256
Y
ame
buyerLegalNam Buyer Legal Name 256
Y
e
buyerTin Buyer TIN Y 10-20
currency currency Y 10
dataSource Data Source 3 101:EFD
102:Windows Client APP
103:WebService API
Y
104:Mis
105:Webportal
106:Offline Mode Enabler
dateFormat Date Format Y 10
grossAmount Gross Amount Y Number
id Invoice ID Y 32
invoiceNo Invoice number Y 20
issuedDate Billing date Y Date
legalName Seller legalName Y 256
nowTime Now Time Y 20 Date & Time stamp
pageIndex Page Index N 3
pageNo current page 10
Y
number
pageSize How many records 3
are displayed per Y
page
tin Taxpayer 10
Identification Y
Number
8. Invoice details
73
Field description
Request:
Field Field Name Required Length Description
invoiceNo Invoice number Y 20 Fiscal document number
Response:
Airline Goods Details: []
74
invoiceType Invoice Type 1 1: Invoice/Receipt
2: Credit Note
5: Credit Memo
Y 4: Debit Note
Corresponding dictionary
table invoiceType
isBatch Is this a batch 1 Not required, the value is 0 or
invoice 1, if it is empty, the default
N is 0.
0-not a batch summary invoice,
1-batch summary invoice
isInvalid Obsolete sign 1 Obsolete sign 1: Obsolete 0: Not
invalid Note: Obsolete only for
N
negative and supplementary
tickets
isRefund Is it open to a 1 Whether it is opened for a ticket /
credit note/Debit Debit Note: 0 - not issued a
N
Note negative ticket / Debit 1- is issued
Credit 2- is issued Debit
issuedDate Invoice issued Date date Date & time stamp (DD/MM/YYYY
Y
HH24:mm:ss)
operator Operator Y 150
75
No used for Webservice.
buyerSector Buyer Sector N 200
buyerTin Buyer TIN Y 10-20
buyerType Buyer Type 1 0: B2B
1: B2C
Y
2: Foreigner
3: B2G
dateFormat Date format Y 20 Date format
nowTime Current system 20 Current date and time stamp
Y
time
pageIndex Page index Y 1
pageNo current page 10
Y
number
pageSize How many records 3
are displayed per Y
page
timeFormat Time format Y 10
101:Trade discount
102:Rebate
103:Others(Please specify)
77
itemCode item code Y 50
orderNumber order number Y Number
qty Quantity Y Number
tax tax Y Number
taxRate tax rate Number Save decimals, such as 18% deposit
Y
0.18
total Total price Y Number
unitOfMeasure unit of measure 3 from T115 rateUnit -->Code
Y Required if discountFlag is 1
or 2
unitPrice unit Price Y Number
vatApplicable vatApplicableFla N 1 It is not required. The
Flag g default value is 1.
discountTotal discount total Y Number
discountTaxRat discount tax rate Number Save decimals, such as 18% deposit
Y
e 0.18
categoryId exciseDutyCode Y 18 exciseDutyCode
categoryName Excise Duty 1024
Y
category name
exciseRate Excise tax rate Y 21
exciseRule Excise Calculation 1 1: Calculated by tax rate
Rules Y 2: Calculated by Quantity
Corresponding dictionary rateType
pack pack Y Number
stick stick Y Number
exciseUnit exciseUnit Y 3
exciseCurrency exciseCurrency Y 10
exciseRateNam exciseRateName 500
Y
e
deemedExemptC deemedExemptCode 3 101: Deemed
N
ode 102: Exempt
vatProjectId vatProjectId N 18
vatProjectNam vatProjectName 100
N
e
PayWay field:
Field Field Name Required Length Description
dateFormat Date Format N 10 Date Format
nowTime Current Time Y 20 Date and Time stamp
orderNumber orderNumber 1 Sort by lowercase letters, such as a,
Y
b, c, d, etc.
78
paymentAmou paymentAmount number Tax Receipt total tax amount
nt Y Must be positive or 0
Integer digits cannot exceed 16
paymentMode paymentMode number payWay dictionary table
101: Credit
102: Cash
103: Cheque
104: Demand draft
Y 105: Mobile money
106: Visa/Master card
107: EFTs
108: POS
109: RTGS
110: Swift transfer
timeFormat Time Format N number
Custom field:
Field Field Name Required Length Description
sadNumber SAD Number Y 20 SAD Number (20 digital)
office office Y 35 office for example busia
cif cif Y 50 CIF
wareHouseNu Ware housing 16
Y
mber Number
wareHouseNa Ware housing 256
Y
me Name
80
destinationCou Destination 256
Y
ntry Country
originCountry Origin Country Y 256
importExportFla Import Export Flag 1 1 import
Y
g 2.export
confirmStatus Confirm Status 1 0: Unconfirmed, Taxpayers cannot
stock-in;
1: Confirmed, Taxpayers can stock-
Y
in;
2: Cancelled, Cancellation status
and the invoice is invalid
valuationMetho Valuation Method 128 valuation method
Y
d
prn prn Y 80
ImportServicesSeller field:
Field Field Name Required Length Description
importBusiness Import 500 If invoiceIndustryCode is equal to
Name BusinessName N 104, importbusinessname cannot
be empty
importEmailAd Import Email 50
N
dress Address
importContact Import Contact 30
N
Number Number
importAddress Import Address 500 invoiceIndustryCode is equal to
N 104, importAddress cannot be
empty
importInvoiceD Import Invoice date yyyy-MM-dd
Y
ate Date
importAttachm Import Attachment 256 importAttachmentName eg:
entName Name test.png
N Attachment format: png、doc、
pdf、jpg、txt、docx、xlsx、cer、
crt、der
importAttachm Import Attachment Unlimit
N
entContent Content ed
airlineGoodsDetails field:
Field Field Name Required Length Description
item item name 200 discountFlag is 0, the name
Y of the discount line is equal
to the name of the discounted
81
line + space + "(discount)"
When deemedFlag is 1
Name + space +” (deemed)”
If discountFlag is 0 and
deemedFlag is 1
Name + Space +” (deemed)” +
Space +” (discount)”
itemCode item code N 50
qty Quantity Y Number
unitOfMeasure unit of measure 3 from T115 rateUnit -->value
Y Required if discountFlag is 1
or 2
unitPrice unit Price Y Number
total total price Y Number
taxRate tax rate N Number
tax tax N Number
discountTotal discount total Number must be empty when
discountFlag is 0 or 2
must be negative when
N discountFlag is 1
And equal to the absolute
value of the total of the
discount line
discountTaxRa discount tax Number Save decimals, such as 18%
te rate deposit 0.18
N
Decimal places must not
exceed 5
orderNumber order number Y Number Add one each time from zero
discountFlag Whether the 1 0: discount amount
product line is 1: discount good,
discounted N 2: non-discount good
The first line cannot be 0
and the last line cannot be 1
deemedFlag Whether deemed 1 1: deemed
N
2: not deemed
exciseFlag Whether excise 1 1: excise
N
2: not excise
categoryId exciseDutyCode 18 Excise Duty id
N
Required when exciseFlag is 1
categoryName Excise Duty 1024 Required when exciseFlag is 1
N
category name
82
goodsCategory goods Category 18 Vat tax commodity
Id id N classification, currently
stored is taxCode
goodsCategory goods Category 200
N
Name Name
exciseRate Excise tax rate 21 Required when exciseFlag is 1
null when exciseFlag is 2
Consistent with categoryId
data
When exciseRule is 1,
consumption tax is calculated
as a percentage. For example,
the consumption tax rate is
N
18%. Fill in: 0.18. If the
consumption tax rate is
‘Nil’, enter ‘-’
When exciseRule is 2, the
consumption tax is calculated
in units of measurement. For
example, the consumption tax
rate is 100. Fill in: 100
exciseRule Excise 1 1: Calculated by tax rate
Calculation 2: Calculated by Quantity
Rules Required when exciseFlag is 1
N
agentEntity field:
Field Field Name Required Length Description
tin tin N 10-20
legalName legalName N 256
businessName businessName N 256
address address N 500
9. Invoice Upload
84
Response
Y
Encrypted
{
"sellerDetails": {
"tin": "201905081705",
"ninBrn": "201905081705",
"legalName": "zhangsan",
"businessName": "lisi",
"address": "beijin",
"mobilePhone": "15501234567",
"linePhone": "010-6689666",
"emailAddress": "123456@163.com",
"placeOfBusiness": "beijin",
"referenceNo": "00000000012",
"branchId": "207300908813650312",
"isCheckReferenceNo": "0",
"branchName": "Nakawa Branch"
},
"basicInformation": {
"invoiceNo": "00000000001",
"antifakeCode": "201905081711",
"deviceNo": "201905081234",
Request Message
"issuedDate": "2019-05-08 17:13:12",
"operator": "aisino",
"currency": "UGX",
"oriInvoiceId": "1",
"invoiceType": "1",
"invoiceKind": "1",
"dataSource": "101",
"invoiceIndustryCode": "102",
"isBatch": "0"
},
"buyerDetails": {
"buyerTin": "1011121314",
"buyerNinBrn": "8000123456789",
"buyerPassportNum": "201905081705",
"buyerLegalName": "zhangsan",
"buyerBusinessName": "lisi",
"buyerAddress": "beijin",
"buyerEmail": "123456@163.com",
"buyerMobilePhone": "15501234567",
"buyerLinePhone": "010-6689666",
85
"buyerPlaceOfBusi": "beijin",
"buyerType": "1",
"buyerCitizenship": "1",
"buyerSector": "1",
"buyerReferenceNo": "00000000001",
"nonResidentFlag": "0"
},
"buyerExtend": {
"propertyType": "abc",
"district": "haidian",
"municipalityCounty": "haidian",
"divisionSubcounty": "haidian1",
"town": "haidian1",
"cellVillage": "haidian1",
"effectiveRegistrationDate": "2020-10-19",
"meterStatus": "101"
},
"goodsDetails": [{
"item": "apple",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "kg",
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discountTaxRate": "0.18",
"orderNumber": "1",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
"categoryId": "1234",
"categoryName": "Test",
"goodsCategoryId": "5467",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
86
"exciseCurrency": "UGX",
"exciseRateName": "123",
"vatApplicableFlag": "1",
"deemedExemptCode": "101",
"vatProjectId": "893997229738400343",
"vatProjectName": "testName"
}, {
"item": "car",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "kg",
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discountTaxRate": "0.18",
"orderNumber": "2",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
"categoryId": "Test",
"categoryName": "Test",
"goodsCategoryId": "Test",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123",
"vatApplicableFlag": "1",
"deemedExemptCode": "101",
"vatProjectId": "893997229738400343",
"vatProjectName": "testName"
}],
"taxDetails": [{
87
"taxCategoryCode": "01",
"netAmount": "3813.55",
"taxRate": "0.18",
"taxAmount": "686.45",
"grossAmount": "4500.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}, {
"taxCategoryCode": "05",
"netAmount": "1818.18",
"taxRate": "0.1",
"taxAmount": "181.82",
"grossAmount": "2000.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}],
"summary": {
"netAmount": "8379",
"taxAmount": "868",
"grossAmount": "9247",
"itemCount": "5",
"modeCode": "0",
"remarks": "This is another remark test.",
"qrCode": "asdfghjkl"
},
"payWay": [{
"paymentMode": "101",
"paymentAmount": "686.45",
"orderNumber": "a"
}, {
"paymentMode": "102",
"paymentAmount": "686.45",
"orderNumber": "a"
}],
"extend": {
"reason": "reason",
"reasonCode": "102"
},
88
"importServicesSeller": {
"importBusinessName": "lisi",
"importEmailAddress": "123456@163.com",
"importContactNumber": "15501234567",
"importAddress": "beijin",
"importInvoiceDate": "2020-09-05",
"importAttachmentName": "test",
"importAttachmentContent":
"MIIDFjCCAf6gAwIBAgIRAKPGAol9CEdpkIoFa8huM6zfj1WEBRxteoo6PH46un4
FGj4N6ioIGzVr9G40uhQGdm16ZU+q44XjW2oUnI9w="
},
"airlineGoodsDetails": [{
"item": "apple",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "103",
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discountTaxRate": "0.18",
"orderNumber": "1",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
"categoryId": "1234",
"categoryName": "Test",
"goodsCategoryId": "5467",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123"
}],
"edcDetails":{
"tankNo": "1111",
89
"pumpNo": "2222",
"nozzleNo": "3333",
"controllerNo": "44444",
"acquisitionEquipmentNo": "5555",
"levelGaugeNo": "66666",
"mvrn":""
}
}
{
"sellerDetails": {
"tin": "201905081705",
"ninBrn": "201905081705",
"passportNumber": "201905081705",
"legalName": "zhangsan",
"businessName": "lisi",
"address": "beijin",
"mobilePhone": "15501234567",
"linePhone": "010-6689666",
"emailAddress": "123456@163.com",
"placeOfBusiness": "beijin",
"referenceNo": "00000000012",
"branchId": "207300908813650312",
"branchName": "KATUSIIME EVEALYNE SPARE PARTS",
"branchCode": "00"
Response
},
Message
"basicInformation": {
"invoiceId": "1000002",
"invoiceNo": "00000000001",
"antifakeCode": "201905081711",
"deviceNo": "201905081234",
"issuedDate": "2019-05-08 17:13:12",
"operator": "aisino",
"currency": "UGX",
"oriInvoiceId": "1",
"invoiceType": "1",
"invoiceKind": "1",
"dataSource": "101",
"invoiceIndustryCode": "102",
"isBatch": "0",
"currencyRate": "3700.12"
90
},
"buyerDetails": {
"buyerTin": "201905081705",
"buyerNinBrn": "201905081705",
"buyerPassportNum": "201905081705",
"buyerLegalName": "zhangsan",
"buyerBusinessName": "lisi",
"buyerAddress": "beijin",
"buyerEmail": "123456@163.com",
"buyerMobilePhone": "15501234567",
"buyerLinePhone": "010-6689666",
"buyerPlaceOfBusi": "beijin",
"buyerType": "1",
"buyerCitizenship": "1",
"buyerSector": "1",
"buyerReferenceNo": "00000000001"
},
"buyerExtend": {
"propertyType": "abc",
"district": "haidian",
"municipalityCounty": "haidian",
"divisionSubcounty": "haidian1",
"town": "haidian1",
"cellVillage": "haidian1",
"effectiveRegistrationDate": "2020-10-19",
"meterStatus": "101"
},
"goodsDetails": [{
"item": "apple",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "kg",
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discountTaxRate": "0.18",
"orderNumber": "1",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
91
"categoryName": "Test",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123"
}, {
"item": "car",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "kg",
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discounttaxRate": "0.18",
"orderNumber": "2",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
"categoryName": "Test",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123"
}],
"taxDetails": [{
"taxCategory": "'Standard",
"taxCategoryCode": "01",
"netAmount": "3813.55",
"taxRate": "0.18",
"taxAmount": "686.45",
92
"grossAmount": "4500.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}, {
"taxCategory": "''Excise Duty",
"taxCategoryCode": "05",
"netAmount": "1818.18",
"taxRate": "0.1",
"taxAmount": "181.82",
"grossAmount ": "2000.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}],
"summary": {
"netAmount": "8379",
"taxAmount": "868",
"grossAmount": "9247",
"itemCount": "5",
"modeCode": "0",
"remarks": "This is another remark test.",
"qrCode": "asdfghjkl"
},
"payWay": [{
"paymentMode": "101",
"paymentAmount": "686.45",
"orderNumber": "a"
}, {
"paymentMode": "102",
"paymentAmount": "686.45",
"orderNumber": "a"
}],
"extend": {
"reason": "reason",
"reasonCode": "102"
},
"importServicesSeller": {
"importBusinessName": "lisi",
"importEmailAddress": "123456@163.com",
"importContactNumber": "15501234567",
"importAddress": "beijin",
93
"importInvoiceDate": "2020-09-05",
"importAttachmentName": "test",
"importAttachmentContent":
"MIIDFjCCAf6gAwIBAgIRAKPGAol9CEdpkIoFa8huM6zfj1WEBRxteoo6PH46un4
FGj4N6ioIGzVr9G40uhQGdm16ZU+q44XjW2oUnI9w="
},
"airlineGoodsDetails": [{
"item": "apple",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "103",
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discountTaxRate": "0.18",
"orderNumber": "1",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
"categoryId": "1234",
"categoryName": "Test",
"goodsCategoryId": "5467",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123"
}],
"edcDetails":{
"tankNo": "1111",
"pumpNo": "2222",
"nozzleNo": "3333",
"controllerNo": "44444",
"acquisitionEquipmentNo": "5555",
"levelGaugeNo": "66666",
94
"mvrn":""
},
"existInvoiceList": [{
"invoiceNo": "322000150744",
"antifakeCode": "31359767222004350398",
"qrCode":
"02000000416B9C322000150744000016E3600000037DCDFFFFFFFFFFFFA1009837
013A1009972333~Mr. ANDREW KIIZA~Mr. SSEMATIKO TIMOTHY~Test01"
}],
"agentEntity": {
"tin": "1111",
"legalName": "2222",
"businessName": "3333",
"address": "44444"
}
}
The operator operates the tax control machine and calculates and invoices the
guest.
Flow Description If the invoice upload time is greater than or less than 10 minutes of server
time, add a piece of data to the T_INVOICE_EXCEPTION invoice exception
table, EXCEPTION_TYPE_CODE = 101
Field description
96
104:Imported Service
105:Telecom
106:Stamp Duty
107:Hotel Service
108:Other taxes
109:Airline Business
110:EDC
isBatch isBatch 1 Not required, the value is 0 or 1, if
it is empty, the default is 0.
N
0-not a batch summary invoice, 1-
batch summary invoice
currencyRate currencyRate N Number
99
discountFlag Whether the 1 0: discount on amount
product line is 1: discount on entire item
discounted Y 2: non-discount item
The first line item cannot be 0 and
the last line cannot be 1
deemedFlag Whether deemed 1 1: deemed
Y
or not 2: not deemed
exciseFlag Whether the item 1 1: excise
attracts excise duty Y 2: not excise
or not
categoryId exciseDutyCode 18 Excise Duty id
N
Required when exciseFlag is 1
categoryName Excise Duty 1024 Required when exciseFlag is 1
N
category name
goodsCategory goods Category id 18 Vat tax commodity classification
Y
Id
goodsCategory goods Category 200
N
Name Name
exciseRate Excise tax rate 21 Required when exciseFlag is 1.
Is null when exciseFlag is 2.
Consistent with categoryId data
When exciseRule is 1, excise duty
is calculated as a percentage. For
example, the excise duty rate is
N
18%. Fill in: 0.18. If the excise duty
rate is ‘Nil’, enter ‘-’
When exciseRule is 2, the excise
duty is calculated in units of
measurement. For example, the
excise duty is 100. Fill in: 100
exciseRule Excise Calculation 1 1: Calculated by tax rate
Rules N 2: Calculated by Quantity
Required when exciseFlag is 1
exciseTax Excise tax number Total excise tax for this line item
Required when exciseFlag is 1
N Must be positive
Integer digits cannot exceed 12,
decimal digits cannot exceed 4;
pack pack number Required when exciseRule is 2
N Must be positive;
Integer digits cannot exceed 12,
100
decimal digits cannot exceed 8;
Use packageScaledValue in T130
stick stick number Required when exciseRule is 2
Must be positive;
Integer digits cannot exceed 12,
decimal digits cannot exceed 8;
N
Use pieceScaledValue from T130 if
item does not have a piece unit
value then use the same value as
pack above
exciseUnit exciseUnit 3 Corresponding to
dictionarycode rateUnit;
101 per stick
102 per litre
103 per kg
N 104 per user per day of access
105 per minute
106 per 1,000sticks
107 per 50kgs
108 -
109 per 1 g
exciseCurrency exciseCurrency 10 Required when exciseRule is 2
N
from T115 currencyType -->name
exciseRateNam exciseRateName 100 If exciseRule is 1, the value is
e (exciseRate * 100) plus the
character '%', for example
exciseRate is 0.18, this value is 18%
N
If exciseRule is 2, this value is
exciseCurrency + exciseRate +
space + exciseUnit, for example:
UGX650 per litre
vatApplicable vatApplicableFla 1 It is not required. The
N
Flag g default value is 1.
deemedExemptC deemedExemptCode 3 101:Deemed
N
ode 102:Exempt
vatProjectId vatProjectId N 18
vatProjectNam vatProjectName 100
N
e
101
taxCategoryCo taxCategoryCode 2 01:A: Standard (18%)
de 02:B: Zero (0%)
03:C: Exempt (-)
04:D: Deemed (18%)
05:E: Excise Duty
N 06:Over the Top Service (OTT)
07:Stamp Duty
08:Local Hotel Service Tax
09:UCC Levy
10:Others
11:F: VAT Not Applicable
netAmount net amount number Must be positive or 0;
Y Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
taxRate tax rate number If 18% use 0.18
Y If zero-rated use 0
If exempt use ‘-’
taxAmount tax number Must be positive or 0;
Y Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
grossAmount gross amount number Must be positive or 0;
Y Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
exciseUnit exciseUnit 3 When the tax type is Excise Duty
N and the tax rate is calculated per
unit, it is required
exciseCurrency exciseCurrency 10 When the tax type is Excise Duty
N and the tax rate is calculated per
unit, it is required
taxRateName Tax Rate Name 100 If 'taxCategoryCode' is
N empty,'taxRateName' is
required
SummaryInternal field:
Field Field Name Required Length Description
netAmount net amount number Tax Receipt total net amount
Must be positive or 0;
Y
Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
taxAmount tax amount number Tax Receipt total tax amount
Y
Must be positive or 0;
102
Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
grossAmount gross amount number Tax Receipt total gross amount
Must be positive;
Y
Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
itemCount Purchase item lines Number Must match the Number of all
Y (4) product lines in goodsDetail-
number of discount lines!
modeCode mode 1 Issuing receipt mode (1:Online or
Y 0:Offline) ,this code is from
dictionary table
remarks Remarks N 500
qrCode qrCode N 500 Required if mode is 0
PayWay field:
Field Field Name Required Length Description
paymentMode paymentMode number payWay dictionary table
101 Credit
102 Cash
103 Cheque
104 Demand draft
Y 105 Mobile money
106 Visa/Master card
107 EFT
108 POS
109 RTGS
110 Swift transfer
paymentAmou paymentAmount number Tax Receipt total tax amount
nt Y Must be positive or 0
Integer digits cannot exceed 16;
orderNumber orderNumber 1 Sort by lowercase letters,
Y
such as a, b, c, d, etc.
ExtendInternal field:
Field Field Name Required Length Description
reason Cancel reason N 1024
reasonCode debitNoteReason 3 If invoiceType is 4, use the
following values:
N
103
payable/invoice value due to
extra products delivered or
products delivered charged at
an incorrect value.
102:Buyer asked for a new
debit note.
103:Others (Please specify);
101:Trade discount
102:Rebate
103:Others(Please specify)
ImportServicesSeller field:
Field Field Name Required Length Description
importBusiness Import 500 invoiceIndustryCode is equal to
Name BusinessName N 104, importbusinessname cannot
be empty
importEmailAd Import 50 The byte length cannot be less
dress EmailAddress N than 6 and cannot be greater
than50
importContact Import 30
N
Number ContactNumber
importAddress Import Address 500 invoiceIndustryCode is equal to
N 104, importAddress cannot be
empty
importInvoiceD importInvoiceDate date yyyy-MM-dd
Y
ate
importAttachm importAttachment 256 importAttachmentName eg:
entName Name test.png
N Attachment format: png、doc、
pdf、jpg、txt、docx、xlsx、cer、
crt、der
importAttachm importAttachment Unlimit
N
entContent Content ed
airlineGoodsDetails field:
Field Field Name Required Length Description
item item name Y 200 discountFlag is 0, the name
104
of the discount line is equal
to the name of the discounted
line + space + "(discount)"
When deemedFlag is 1
Name + space + ”(deemed)”
If discountFlag is 0 and
deemedFlag is 1
Name + Space + ”(deemed)” +
Space + ”(discount)”
itemCode item code N 50
qty Quantity Number Required if discountFlag is 1
or 2 and must be positive
must be empty when
Y discountFlag is 0
Integer digits cannot exceed
12, decimal digits cannot
exceed 8;
unitOfMeasure unit of measure 3 from T115 rateUnit -->value
Y Required if discountFlag is 1
or 2
unitPrice unit Price Number Required if discountFlag is 1
or 2 and must be positive
must be empty when
Y discountFlag is 0
Integer digits cannot exceed
12, decimal digits cannot
exceed 8;
total total price Number must be positive when
discountFlag is 1 or 2
must be negative when
Y discountFlag is 0
Integer digits cannot exceed
12, decimal digits cannot
exceed 4;
taxRate tax rate Number For example, the taxRate is
18% Fill in: 0.18
For example, the taxRate is
zero Fill in: 0
N
For example, the taxRate is
deemed Fill in: ‘-’ or ' '
106
When exciseRule is 1,
consumption tax is calculated
as a percentage. For example,
the consumption tax rate is
18%. Fill in: 0.18. If the
consumption tax rate is
‘Nil’, enter ‘-’
When exciseRule is 2, the
consumption tax is calculated
in units of measurement. For
example, the consumption tax
rate is 100. Fill in: 100
exciseRule Excise 1 1: Calculated by tax rate 2
Calculation Calculated by Quantity
Rules Required when exciseFlag is 1
N
"exciseRateName": "123",
"vatApplicableFlag": "1"
}, {
"item": "car",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "kg",
109
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "22.18",
"orderNumber": "2",
"deemedFlag": "1",
"exciseFlag": "2",
"categoryId": "1123",
"categoryName": "Test",
"goodsCategoryId": "1125",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123",
"vatApplicableFlag": "1"
}],
"taxDetails": [{
"taxCategoryCode": "01",
"netAmount": "-3813.55",
"taxRate": "0.18",
"taxAmount": "-686.45",
"grossAmount": "-4500.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}, {
"taxCategoryCode": "05",
"netAmount": "-1818.18",
"taxRate": "0.1",
"taxAmount": "-181.82",
"grossAmount ": "-2000.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}],
"summary": {
110
"netAmount": "8379",
"taxAmount": "868",
"grossAmount": "9247",
"itemCount": "5",
"modeCode": "0",
"qrCode": "asdfghjkl"
},
"payWay": [{
"paymentMode": "101",
"paymentAmount": "686.45",
"orderNumber": "a"
}, {
"paymentMode": "102",
"paymentAmount": "686.45",
"orderNumber": "a"
}],
"buyerDetails": {
"buyerTin": "201905081705",
"buyerNinBrn": "201905081705",
"buyerPassportNum": "201905081705",
"buyerLegalName": "zhangsan",
"buyerBusinessName": "lisi",
"buyerAddress": "beijin",
"buyerEmail": "123456@163.com",
"buyerMobilePhone": "15501234567",
"buyerLinePhone": "010-6689666",
"buyerPlaceOfBusi": "beijin",
"buyerType": "1",
"buyerCitizenship": "1",
"buyerSector": "1",
"buyerReferenceNo": "00000000001"
},
"importServicesSeller": {
"importBusinessName": "lisi",
"importEmailAddress": "123456@163.com",
"importContactNumber": "15501234567",
"importAddress": "beijin",
"importInvoiceDate": "2020-09-05",
"importAttachmentName": "test",
"importAttachmentContent":
"MIIDFjCCAf6gAwIBAgIRAKPGAol9CEdpkIoFa8huM6zfj1WEBRxteoo6PH46un4FGj
4N6ioIGzVr9G40uhQGdm16ZU+q44XjW2oUnI9w="
111
},
"basicInformation": {
"operator": "aisino",
"invoiceKind": "1",
"invoiceIndustryCode": "102",
"branchId": "207300908813650312"
},
"attachmentList": [{
"fileName": "101",
"fileType": "png",
"fileContent":
"MIIDFjCCAf6gAwIBAgIRAKPGAol9CEdpkIoFa8huM6zfj1WEBRxteoo6PH46un4FGj
4N6ioIGzVr9G40uhQGdm16ZU+q44XjW2oUnI9w="
}]
}
{
Response
"referenceNo": "1234556789"
Message
}
1. Original invoice billing time + credit Note Maximum InvoicingDays (type
Flow Description code corresponding to the dictionary table)
2. Current system time Cannot submit creditNode application
Field description
113
invoice;
Integer digits cannot exceed 12,
decimal digits cannot exceed 8;
unitOfMeasure unit of measure 3 from T115 rateUnit -->value
Y Required if discountFlag is 1
or 2
unitPrice unit Price Number(
Y
20,8)
total total price Number( Must be negative, the absolute
20,8) value cannot be greater than the
amount of the product
Y corresponding to the positive
invoice;
Integer digits cannot exceed 12,
decimal digits cannot exceed 4;
taxRate tax rate Number( Same as original invoice
Y
20,8)
tax tax Number( Must be negative, the absolute
20,8) value cannot be greater than the
amount of the product
Y corresponding to the positive
invoice;
Integer digits cannot exceed 12,
decimal digits cannot exceed 4;
orderNumber order number Y number Same as original invoice
deemedFlag whetherdeemed 1 1 : deemed 2: not deemed
Y
Same as original invoice
exciseFlag whetherexcise 1 1 : excise 2: not excise
Y
Same as original invoice
categoryId exciseDutyCode N 18 Same as original invoice
categoryName Excise tax category 1024 Same as original invoice
N
name
goodsCategory goods Category id 18 Same as original invoice
Y
Id
goodsCategory goods Category 200 Same as original invoice
N
Name Name
exciseRate Excise tax rate N 21 Same as original invoice
exciseRule Excise Calculation 1 1: Calculated by tax rate 2
Rules N Calculated by Quantity
Same as original invoice
exciseTax Excise tax N number Must be negative
114
pack pack N number Same as original invoice
stick stick N number Same as original invoice
exciseUnit exciseUnit N 3 Same as original invoice
exciseCurrency exciseCurrency N 10 Same as original invoice
exciseRateNam exciseRateName 100 If exciseRule is 1, the value is
e (exciseRate * 100) plus the
character '%', for example
exciseRate is 0.18, this value is 18%
N If exciseRule is 2, this value is
exciseCurrency + exciseRate +
space + exciseUnit, for example:
UGX650 per litre
Same as original invoice
vatApplicable vatApplicableFla 1 It is not required. The
N
Flag g default value is 1.
115
grossAmount gross amount number Must be negative or 0;
Y Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
exciseUnit exciseUnit 3 When the tax type is Excise Duty
N and the tax rate is calculated per
unit, it is required
exciseCurrency exciseCurrency 10 When the tax type is Excise Duty
N and the tax rate is calculated per
unit, it is required
taxRateName taxRateName 100 If 'taxCategoryCode' is
empty,'taxRateName' can not
be empty!.
N
If 'taxCategoryCode' is '05'
or '10' , 'taxRateName' can
not be empty!
SummaryInternal field:
Field Field Name Required Length Description
netAmount net amount number Tax Receipt total net amount
Must be negative or 0
Y
Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
taxAmount tax amount number Tax Receipt total tax amount
Must be negative or 0;
Y
Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
grossAmount gross amount number Tax Receipt total gross amount
Must be negative ;
Y
Integer digits cannot exceed 16,
decimal digits cannot exceed 4;
itemCount Purchase item lines Y 10 Purchase item lines
modeCode mode 1 Issuing receipt mode (1:Online or
Y 0:Offline), this code is from
dictionary table
qrCode qrCode N 500
PayWay field:
Field Field Name Required Length Description
paymentMode paymentMode number payWay dictionary table
Y 101 Credit
102 Cash
116
103 Cheque
104 Demand draft
105 Mobile money
106 Visa/Master card
107 EFT
108 POS
109 RTGS
110 Swift transfer
paymentAmou paymentAmount number Tax Receipt total tax amount
nt Y Must be positive or 0
Integer digits cannot exceed 16
orderNumber orderNumber 1 Sort by lowercase letters,
Y
such as a, b, c, d, etc.
ImportServicesSeller field:
Field Field Name Required Length Description
importBusines Import 500 invoiceIndustryCode is equal
sName BusinessName N to 104, importbusinessname
cannot be empty
importEmailAd Import 50 The byte length cannot be
dress EmailAddress N less than 6 and cannot be
greater than 50
importContact Import 30
N
Number ContactNumber
importAddress Import Address 500 invoiceIndustryCode is equal
N to 104, importAddress cannot
be empty
importInvoice importInvoiceDat date yyyy-MM-dd
Y
Date e
importAttachm importAttachment 256 importAttachmentName eg:
entName Name test.png
N Attachment format: png、doc、
pdf、jpg、txt、docx、xlsx、
cer、crt、der
importAttachm importAttachment Unlimit
N
entContent Content ed
118
AttachmentList field:
Field Field Name Required Length Description
fileName fileName N 256
fileType fileType 5 fileType format: png、doc、
N pdf、jpg、txt、docx、xlsx、
cer、crt、der
fileContent fileContent Unlimit Base64 content
N
ed
"pageSize": "10" ,
"creditNoteType": "1",
"branchName": "Mr. HENRY KAMUGISHA",
"sellerTinOrNin": "1009837013",
"sellerLegalOrBusinessName": "CLASSY TRENDS BOUTIQUE"
}
{
Response "page": {
Message "pageNo": "1",
"pageSize": "10",
119
"totalSize": "Total number of articles",
"pageCount": "total pages"
},
"records": [{
"id": "1234556789",
"oriInvoiceNo": "1234556789",
"invoiceNo": "1234556789",
"referenceNo": "1234556789",
"approveStatus": "101",
"applicationTime": "16/06/2019 15:02:02",
"invoiceApplyCategoryCode": "1",
"grossAmount": "66.00",
"oriGrossAmount": "123.00",
"currency": "1",
"taskId": "1",
"buyerTin": "7777777777",
"buyerBusinessName": "aisino",
"buyerLegalName": "test",
"tin": "8888888888",
"businessName": "aisino1",
"legalName": "test",
"waitingDate": "1",
"dataSource": "101"
}, {
"id": "1234556789",
"oriInvoiceNo": "1234556789",
"invoiceNo": "1234556789",
"referenceNo": "1234556789",
"approveStatus": "101",
"applicationTime": "16/06/2019",
"invoiceApplyCategoryCode": "1",
"grossAmount": "1",
"oriGrossAmount": "123.00",
"currency": "1",
"taskId": "1",
"buyerTin": "7777777777",
"buyerBusinessName": "aisino",
"buyerLegalName": "test",
"waitingDate": "1",
"dataSource": "101"
}]
}
120
1. Search and filter
1) Enter the keyword and click go to query, match the two parameters of
Flow Description Reference No. and Invoice/Receipt No., and the search result needs to contain
keywords.
Field description
Associationdictionary
N
table
creditNoteApproveStatus
taskId Tast Id Y 18
pageNo current page 3
number
pageSize How many records 10
are displayed per
page
totalSize Total number of 10
articles
pageCount total pages 10
}
Flow Description Query details based on the application ID.
Field description
Y
Reason Refund reason 1024
selectRefundRe Refund reason 3 Corresponding dictionary refund
Y
asonCode code Reason
approveStatusC Approval Status Y 3 101 Approved
125
ode 102 Pending
103 Rejected
Association dictionary table
approveStatus
updateTime Processing time Y Date
applicationTime refundSubmission Date
Y
time
invoiceApplyCa invoice apply 3
tegoryCode category code Y
from dictionary
contactName contact Name Y 256
contactMobile contact mobile 30
Y
Num number
contactEmail Contact email
source application source 3 101:EFD
102:Windows Client APP
103:WebService API
104:Mis
Y 105:Webportal
106:Offline Mode Enabler
107:USSD
108:ASK URA
taskId task ID Y 18
remarks Remarks N credit application remarks
approveRemark approveRemarks 1024 approveStatusCode = 101、103
N
s approveRemarks cannot be empty
grossAmount Invoice gross
Y
amount Number
totalAmount creditgross amount Y Number
currency currency Y 10
refundIssuedDa Credit Issue time Date
Y
te
issuedDate Invoice issue time Y Date
tin Tin Y 10-20 Seller's Information
nin NIN/BRN Y 100 Seller's Information
legalName legalName Y 256 Seller's Information
businessName businessName Y 30 Seller's Information
mobilePhone Contact Number Y 30 Seller's Information
address Address Y 500 Seller's Informationn
emailAddress Email Address Y 50 Seller's Information
126
buyerTin buyerTin Y 10-20 Buyer's Information
buyerNin buyerNin Y 100 Buyer's Information
buyerLegalNam buyerLegalName 256 Buyer's Information
Y
e
buyerBusinessN buyerBusinessNam 256 Buyer's Information
Y
ame e
buyerAddress buyerAddress Y 500 Buyer's Information
buyerEmailAdd buyerEmailAddress 50 Buyer's Information
Y
ress
buyerMobilePh buyerMobilePhone 30 Buyer's Information
Y
one
buyerLinePhon buyerLinePhone 30 Buyer's Information
Y
e
buyerCitizenshi buyerCitizenship 128 Buyer's Information
Y
p
buyerPassport buyerPassportNum 20 Buyer's Information
Y
Num
buyerPlaceOfB buyerPlaceOfBusi 500 Buyer's place of business
Y
usi
sellersReferenc sellersReferenceNo 50
N
eNo
importBusines Import 500 invoiceIndustryCode is equal
sName BusinessName N to 104, importbusinessname
cannot be empty
importEmailAd Import 50 The byte length cannot be
dress EmailAddress N less than 6 and cannot be
greater than 50
importContact Import 30
N
Number ContactNumber
importAddress Import Address 500 invoiceIndustryCode is equal
N to 104, importAddress cannot
be empty
importInvoice importInvoiceDat date
N
Date e
importAttachm importAttachment 256 importAttachmentName eg:
entName Name test.png
N Attachment format: png、doc、
pdf、jpg、txt、docx、xlsx、
cer、crt、der
AttachmentList field:
127
Field Field Name Required Length Description
fileName fileName N 256
fileType fileType 5 fileType format: png、doc、
N pdf、jpg、txt、docx、xlsx、
cer、crt、der
fileContent fileContent Unlimit Base64 content
N
ed
Response
Null
Message
Field description
128
taskId task ID Y 20
Interface Name Cancel Credit Note 、initiate Cancel of Debit Note Application
Description Cancellation of credit and debit notes
Interface Code T114
Request Encrypted Y
Response
N
Encrypted
{
"oriInvoiceId": "31000000000000000001",
"invoiceNo": "786059685752403327",
"reason": "reason",
"reasonCode": "102",
"invoiceApplyCategoryCode": "103",
"attachmentList": [{
Request Message
"fileName": "101",
"fileType": "png",
"fileContent":
"MIIDFjCCAf6gAwIBAgIRAKPGAol9CEdpkIoFa8huM6zfj1WEBRxteoo6PH46un4FGj
4N6ioIGzVr9G40uhQGdm16ZU+q44XjW2oUnI9w="
}]
Response
Null
Message
Field description
AttachmentList field:
Field Field Name Required Length Description
fileName fileName N 256
fileType fileType 5 fileType format: png、doc、
N pdf、jpg、txt、docx、xlsx、
cer、crt、der
fileContent fileContent Unlimit Base64 content
N
ed
}],
"exportRateUnit": [{
"value": "101",
"name": "per stick",
"validPeriodFrom": "2021/08/17",
"periodTo": "2021/08/31",
"status": "101"
}]
}
At the time of initialization, the dictionary is updated, and later judged
Flow Description according to the version number version. If the version is the same, there is
no need to update the data. If it is different, update the local dictionary.
Field description
creditNoteMaximumInvoicingDays、creditNoteValuePercentLimit
Field Field Name Required Length Description
value Dictionary value Y Number
name Name Y 200
countryCode、payWay、rateUnit、currencyType
Field Field Name Required Length Description
value Dictionary value Y 3
name Dictionary name Y 200
description Dictionary 1024 currencyType description
description
Shilling : integer singular
sector
Field Field Name Required Length Description
132
code Sector number Y 18
name Sector name Y 100
parentClass Parent id Y 18
requiredFill requiredFill Y 1 1:Y 0:N
format
Field Field Name Required Length Description
dateFormat Date Format Y 20 System date format
timeFormat Time Format Y 20 System date format
exportRateUnit
Field Field Name Required Length Description
value Dictionary value Y 3
name Name Y 200
validPeriodFr validPeriodFrom Date Follow System date format
Y
om
periodTo periodTo Y Date Follow System date format
status status 3 101:Enable
Y
102:Disable
133
Field description
"invoiceNo": "10239892398",
"invoiceType": "2"
}]
[{
"invoiceNo": "10239892399",
"invoiceType": "1"
Response
}, {
Message
"invoiceNo": "10239892398",
"invoiceType": "2"
}]
1. The client uploads a segment of invoiceNo and invoice category
2. Query the database in the background and compare the invoice type and
invoiceNo of the invoice.
3. Compare the inconsistent invoice number or return the invoice number
Flow Description
without results to the client.
4. If the comparison is consistent, return empty
5. Query sellerTin equals (outer packet gets Tin)
6. Query deviceNo equal to the deviceNo of the outer packet.
134
Field description
18. Query Credit Note Application and Cancel of Debit Note Application Details
Interface Name Query Credit Note Application and Cancel of Debit Note Application Details
Description Query Credit Note and Cancel Debit Note to apply for details
Interface Code T118
Request Encrypted Y
Response
Y
Encrypted
{
Request Message "id": "229700709531101368"
}
{
"goodsDetails": [{
"itemName": "apple",
"itemCode": "101",
"qty": "2",
"unit": "kg",
"unitPrice": "150.00",
Response "total": "1",
Message "taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discountTaxRate": "0.18",
"orderNumber": "1",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
135
"categoryId": "1123",
"categoryName": "Test",
"goodsCategoryId": "1125",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123",
"vatApplicableFlag": "1"
}, {
"itemName": "car",
"itemCode": "101",
"qty": "2",
"unitOfMeasure": "kg",
"unitPrice": "150.00",
"total": "1",
"taxRate": "0.18",
"tax": "12.88",
"discountTotal": "18.00",
"discounttaxRate": "0.18",
"orderNumber": "2",
"discountFlag": "1",
"deemedFlag": "1",
"exciseFlag": "2",
"categoryId": "1123",
"categoryName": "Test",
"goodsCategoryId": "1125",
"goodsCategoryName": "Test",
"exciseRate": "0.12",
"exciseRule": "1",
"exciseTax": "20.22",
"pack": "1",
"stick": "20",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"exciseRateName": "123",
136
"vatApplicableFlag": "1"
}],
"taxDetails": [{
"taxCategoryCode": "01",
"netAmount": "3813.55",
"taxRate": "0.18",
"taxAmount": "686.45",
"grossAmount": "4500.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}, {
"taxCategoryCode": "05",
"netAmount": "1818.18",
"taxRate": "0.1",
"taxAmount": "181.82",
"grossAmount ": "2000.00",
"exciseUnit": "101",
"exciseCurrency": "UGX",
"taxRateName": "123"
}],
"summary": {
"netAmount": "8379",
"taxAmount": "868",
"grossAmount": "9247",
"previousNetAmount": "8379",
"previousTaxAmount": "868",
"previousGrossAmount": "9247"
},
"payWay": [{
"paymentMode": "101",
"paymentAmount": "686.45",
"orderNumber": "a"
}, {
"paymentMode": "102",
"paymentAmount": "686.45",
"orderNumber": "a"
}],
"basicInformation": {
"invoiceType": "2",
"invoiceKind": "1",
"invoiceIndustryCode": "102"
137
},
Field description
138
exciseRule Excise Calculation 1 1: Calculated by tax rate 2
Y
Rules Calculated by Quantity
exciseTax Excise tax Y
pack pack Y Number
stick stick Y Number
exciseUnit exciseUnit Y 3
exciseCurrency exciseCurrency Y 10
exciseRateNam exciseRateName 500
Y
e
vatApplicable vatApplicableFla 1 It is not required. The
N
Flag g default value is 1.
Tax DetailsInternal field:
Field Field Name Required Length Description
taxCategoryCo taxCategoryCode 2 01:A: Standard (18%)
de 02:B: Zero (0%)
03:C: Exempt (-)
04:D: Deemed (18%)
05:E: Excise Duty
N
06:Over the Top Service (OTT)
07:Stamp Duty
08:Local Hotel Service Tax
09:UCC Levy
10:Others
netAmount net amount Y Number
taxRate tax rate Number Save decimals, such as 18% deposit
Y
0.18
taxAmount tax Y Number
grossAmount gross amount Y Number
exciseUnit exciseUnit Y 3
exciseCurrency exciseCurrency Y 10
taxRateName taxRateName N 100
SummaryInternal field:
Field Field Name Required Length Description
netAmount net amount Y Number Apply credit node
taxAmount tax amount Y Number Apply credit node
grossAmount gross amount Y Number Apply credit node
previousNetAm previousNetAmou Number original invoice
Y
ount nt
previousTaxAm previousTaxAmoun Number original invoice
Y
ount t
139
previousGrossA previousGrossAmo Number original invoice
Y
mount unt
PayWay field:
Field Field Name Required Length Description
paymentMode paymentMode number payWay dictionary table
101 Credit
102 Cash
103 Cheque
104 Demand draft
Y 105 Mobile money
106 Visa/Master card
107 EFT
108 POS
109 RTGS
110 Swift transfer
paymentAmou paymentAmount number Tax Receipt total tax amount
nt Y Must be positive or 0
Integer digits cannot exceed 16
orderNumber orderNumber 1 Sort by lowercase letters,
Y
such as a, b, c, d, etc.
BasicInformation field:
Field Field Name Required Length Description
invoiceKind invoiceKind Y 1 1 :invoice 2: receipt
invoiceType invoiceType 3 2:Credit Note
Y
4:Debit Note
invoiceIndustry invoiceIndustryCod 3 101:General Industry
Code e 102:Export
103:Import
104:Imported Service
Y
105:Telecom
106:Stamp Duty
107:Hotel Service
108:Other taxes
140
Description Query Taxpayer Information By TIN or ninBrn
Interface Code T119
Request Encrypted Y
Response
Y
Encrypted
{
"tin": "7777777777",
Request Message
"ninBrn": "7777777777"
}
{
"taxpayer": {
"tin": "123456",
"ninBrn": "2222",
"legalName": "admin",
"businessName": "1",
Response "contactNumber": "18888888888",
Message "contactEmail": "123@qq.com",
"address": "beijing",
"taxpayerType": "201",
"governmentTIN": "1"
}
}
Flow Description Query Taxpayer Information By TIN or ninBrn buyer information
Field description
Response
null
Message
Field description
142
Response
Y
Encrypted
{
"currency": "USD",
Request Message "issueDate": "2020-05-16"
}
{
"currency": "USD",
"rate": "3700",
Response
Message "importDutyLevy": "3740.6388",
"inComeTax": "3740.6388",
"exportLevy": "3730.6444"
}
Flow Description Acquiring exchange rate
Field description
Field description
Field description
145
parentCode parentCode Y
commodityCate commodityCategor
Y
goryName yName
commodityCate commodityCategor
Y
goryLevel yLevel
rate rate Correspond tax
ratecodeTAX_RATE_CODE
Y
taxRate
0.18 18%
isLeafNode isLeafNode Y 101:Y 102:N
serviceMark serviceMark Y 101:Y 102:N
isZeroRate isZeroRate Y 101:Y 102:N
zeroRateStartD zeroRateStartDate
N
ate
zeroRateEndDa zeroRateEndDate
N
te
isExempt isExempt Y 101:Y 102:N
exemptRateStar exemptRateStartDa
N
tDate te
exemptRateEnd exemptRateEndDat
N
Date e
enableStatusCo enableStatusCode 1:enable: 0:disable
Y
de
exclusion exclusion 0:Zero
Y 1:Exempt
2:No exclusion
146
{
"page": {
"pageNo": "1",
"pageSize": "10",
"totalSize": " Total number of articles ",
"pageCount": "total pages"
},
"records": [{
"commodityCategoryCode": "100000000",
"parentCode": "0",
"commodityCategoryName": "Standard",
"commodityCategoryLevel": "1",
"rate": "0.18",
"isLeafNode": "101",
"serviceMark": "101",
"isZeroRate": "101",
"zeroRateStartDate": "01/12/2019",
"zeroRateEndDate": "05/12/2019",
"isExempt": "101",
"exemptRateStartDate": "06/12/2019",
Response "exemptRateEndDate": "10/12/2019",
Message "enableStatusCode": "1",
"exclusion": "1"
"excisable": "101"
}, {
"commodityCategoryCode": "100000000",
"parentCode": "0",
"commodityCategoryName": "Standard",
"commodityCategoryLevel": "1",
"rate": "0.18",
"isLeafNode": "101",
"serviceMark": "101",
"isZeroRate": "101",
"zeroRateStartDate": "01/12/2019",
"zeroRateEndDate": "05/12/2019",
"isExempt": "101",
"exemptRateStartDate": "06/12/2019",
"exemptRateEndDate": "10/12/2019",
"enableStatusCode": "1",
"exclusion": "1"
"excisable": "101"
}]
147
}
Field description
Field description
"rate": "3700",
Response
Message "importDutyLevy": "3740.6388",
"inComeTax": "3740.6388",
"exportLevy": "3730.6444"
}
]
Flow Description Acquiring exchange rate
Field description
152
{
"page": {
"pageNo": "1",
"pageSize": "10",
"totalSize": " Total number of articles ",
"pageCount": "total pages"
},
"records": [{
"id": "000023",
"goodsName": "cat",
"goodsCode": "0001",
"measureUnit": "101",
"unitPrice": "13.99",
"currency": "101",
"stock": "12",
"stockPrewarning": "12",
"source": "101",
"statusCode": "101",
"commodityCategoryCode": "13101501",
"commodityCategoryName": "tax",
"taxRate": "0.18",
Response Message
"isZeroRate": "101",
"isExempt": "102",
"haveExciseTax": "101",
"exciseDutyCode": "LED010100",
"exciseDutyName": "LED010100",
"exciseRate": "0.12",
"pack": "1",
"stick": "1",
"remarks": "1",
"packageScaledValue": "12",
"pieceScaledValue": "1",
"pieceMeasureUnit": "101",
"havePieceUnit": "102",
"pieceUnitPrice": "110",
"exclusion": "1",
"haveOtherUnit": "101",
"serviceMark": "101",
"goodsTypeCode": "101",
"updateDateStr": "2022-01-14 13:43:00",
"tankNo": "137465834749262155",
"goodsOtherUnits": [{
153
"id": "210059212594887180",
"commodityGoodsId": "210059212594887178",
"otherScaled": "10",
"otherUnit": "AF",
"otherPrice": "6999.99",
"packageScaled": "1"
}]
}]
}
Goods/Services Inquiry
Field description
156
28. Query the stock quantity by goods id
Field description
157
Response
Y
Encrypted
[
{
"invoiceContent": "T109 Request information plaintext",
Request Message
"invoiceSignature": "JKQWJK34K32JJEK2JQWJ5678"
}
]
[
{
"invoiceContent": "T109 Response information plaintext",
Response
"invoiceReturnCode": "00",
Message
"invoiceReturnMessage": "SUCCESS"
}
]
Flow Description Batch Invoice Upload
Field description
Field description
havePieceUnit is 101
N
pieceMeasureUnit cannot be
empty
T115 rateUnit
havePieceUnit havePieceUnit 3 haveExciseTax is 101 ,excise duty
has unit of
Measurement,HavePieceUnit is
Y
101
101:Yes 102:No
pieceUnitPrice pieceUnitPrice Number If havePieceUnit is 102,
pieceUnitPrice must be empty!
If havePieceUnit is 101,
pieceUnitPrice cannot be
empty.
N
N
havePieceUnit is 101
packageScaledValue cannot be
empty
161
Measureunit is equal to excise
duty
measureunit,packageScaledValue
must be equal to 1!
havePieceUnit is 101
pieceScaledValue cannot be
empty
N
Measureunit is equal to excise
duty measureunit
pieceScaledValue must be equal
to 1
If 'havePieceUnit :
162
101',otherUnit cannot be
equal to pieceMeasureUnit
otherPrice otherPrice N Number
otherScaled otherScaled Number Integer digits cannot exceed
Y 12, decimal digits cannot
exceed 8;
packageScaled packageScaled Number Integer digits cannot exceed
Y 12, decimal digits cannot
exceed 8;
163
"measureUnit": "101",
"quantity": "100",
"unitPrice": "6999",
"remarks": "remarks",
"fuelTankId": "568654903587001037",
"lossQuantity": "10",
"originalQuantity": "110"
}]
}
[{
"commodityGoodsId": "287700992426868373",
"goodsCode": "2877009924268",
"measureUnit": "101",
"quantity": "100",
"unitPrice": "6999",
Response Message "remarks": "remarks",
"fuelTankId": "568654903587001037",
"lossQuantity": "10",
"originalQuantity": "110",
"returnCode": "601",
"returnMessage": "MeasureUnit:Invalid field value!"
}]
The goods inventory is uploaded successfully, and the return message is
Flow Description empty. If there is any failure, the data will be returned
Field description
If operationType = 101,
adjustType must be empty
N
If operationType = 102,
adjustType cannot be empty
N If operationType = 101,
stockInType cannot be empty
If operationType = 102,
stockInType must be empty
166
32. Upload exception log
}]
Response
Null
Message
When the cash in machine logs in, upload the abnormal log information in the
Flow Description last login period.
Field description
167
interruptionTim interruptionTime Date yyyy-MM-dd HH24:mm:ss
Y
e
168
}
Return the file information required for system upgrade through request
Flow Description parameters
Field description
Field description
171
102:N
{
Response
"latesttcsversion":"5"
Message
}
Field description
172
"fileContent":
"MIIDFjCCAf6gAwIBAgIRAKPGAol99EKUPlA/VZYC+u8wDQYJKoZIhvcNAQELB
QAwMzELMAkGA1UEBhMCRU4xJDAiBgNVBAMMG0NlcnR1bSBUcnVzdGVkIE5
ldFdvcmsgQ0EgMjAgFw0wMDA0MTkwMTA3MTVaGA8yMDYwMDQwNDAxM
DcxNVowMzELMAkGA1UEBhMCRU4xJDAiBgNVBAMMG0NlcnR1bSBUcnVzdG
VkIE5ldFdvcmsgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCg
gEBANEC+sWUcfJFToC57ghh7WvGLDrfx5lIp0yrZDEiHXtx32GqAFokXmwzJ82i
DVwIrbDSIf62NBQ5zt5NENdk5oi36rwYlDNWMTEs8rtwGMWJuiZRMaleVPVjL1
Ecf2T4cCWiGw83qvNyWDAd4OaYV0DCvBe3YPR7bOKrznwEv/Eycp+NiBOkpid
Ynyrdb/A4gsMBuEKYjIQ3z5lrrEuAUrpJADf2jlxTTJ7ede1Dmyga1yzoOeAuc0ZLE
JKaqNG2cwK+tOZ9W7OL/KmHgY/+FhMOd9xzuJoEJnFycjn5x7Ha1+GyScMPU
acT3Z3X9+ukYXyQriyAavLOwwTYdZ4hn+ECAwEAAaMjMCEwDwYDVR0TAQH
/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEB
AHIGw8c873dM1gMglwffWS9hx8U+36S3z2zmJPELJo/Vf9qsl+75UCRL0ORagy
X1yy5rxN+Wf5TXlHluEosjC+aR0P4NXUqKF9bSz8H4Q/yPgjR0tjiWKDHpxCMdz
SGhpVFcdBCHUu2o25k2IeKdw8gm5lkZQW1CxgQpb/C8xwzwD8faqwPKMEf+
m96axUoVzi9fgnnP+awERdUVJEhFo6JJVKIX8mTbQv83VC3gI5eq/xSprXEwQy
QvELJ9S1TvJtkqbSdgRrnCEdpkIoFa8huM6zfj1WEBRxteoo6PH46un4FGj4N6ioI
GzVr9G40uhQGdm16ZU+q44XjW2oUnI9w="
}
Response
NULL
Message
Field description
173
37. Check exempt/Deemed taxpayer
Field description
175
38. Get all branches
Field description
176
{
"goodsStockTransfer": {
"sourceBranchId": "206637525568955296",
"destinationBranchId": "206637528324276772",
"transferTypeCode": "101",
"remarks": "Others",
"rollBackIfError": "0",
"goodsTypeCode": "101"
},
Request Message "goodsStockTransferItem": [{
"commodityGoodsId": "287700992426868373",
"goodsCode": "287700992426",
"measureUnit": "101",
"quantity": "100",
"remarks": "Others",
"sourceFuelTankId": "568654903587001037",
"destinationFuelTankId": "568654903587001037"
}]
}
[{
"commodityGoodsId": "287700992426868373",
"measureUnit": "100",
"quantity": "100",
"remarks": "Others",
Response Message
"sourceFuelTankId": "568654903587001037",
"destinationFuelTankId": "568654903587001037",
"returnCode": "601",
"returnMessage": "quantity:Invalid field value!"
}]
Flow Description Goods Stock Transfer
Field description
GoodsStockTransfer field:
177
the same.
destinationBr destinationBranc 18 The branchId of the
anchId hId destination branch for the
Y goods. transferredBranchId
and receivedBranchId cannot
be the same!
transferTypeC transferTypeCode 3 101 Out of Stock Adjust
ode 102 Error Adjust
103 Others (Please Specify)
Y
Support multiple selections,
separated by commas,
Eg: transferTypeCode=
'101,102'
remarks remarks 1024 If transferTypeCode =
N
103,remarks can not be empty!
rollBackIfErr rollBackIfError 1 0:No 1:Yes
or N It is not required. The default
value is 0.
GoodsStockTransferItem field:
178
40. Goods/Services Inquiry by goods Code
Field description
179
Field Field Name Required Length Description
goodsCode Goods Code Y 50
measureUnit Measure Unit Y 3 T115 rateUnit
pieceMeasureU pieceMeasureUnit 3 If havePieceUnit= 101,
nit pieceMeasureUnit cannot be
empty
N
If havePieceUnit= 102,
pieceMeasureUnit must be
empty
havePieceUnit havePieceUnit Y 3 101:Y 102:N
haveOtherUnit haveOtherUnit 3 Is there other unit (101:yes ;
Y
102:no)
packageScaled packageScaledVal Number
Y
Value ue
pieceScaledVa pieceScaledValue Number
lue Y
otherUnit otherUnit N 3 T115 rateUnit
otherScaled otherScaled Y Number
packageScaled packageScaled Y Number
Field description
183
Field description
exciseDuty
Field Field Name Required Length Description
id id Y 20
exciseDutyCod exciseDutyCode 20
Y
e
goodService goodService Y 500
parentCode Good parentCode Y 20
rateText tax rateText Y 50
exciseDutyId Good category ID 18 Corresponding
Y
dictionaryrateType
isLeafNode isLeafNode Y 1 1:Y 0:N
effectiveDate effectiveDate Y Date
exciseDutyId exciseDutyId Y 20
type tax rate 10 101 Percentage
Y
Calculate type 102 Unit of measurement
rate tax rate Y number
unit unit of 3 type=101 is empty
measurement type=102 is not empty
N
Corresponding dictionarycode
rateUnit
commodityCategory
Field Field Name Required Length Description
commodityCate commodityCategor 18
Y
goryCode yCode
parentCode parentCode Y 18
commodityCate commodityCategor 200
Y
goryName yName
commodityCate commodityCategor 1
Y
goryLevel yLevel
rate rate 4 Correspond tax
Y
ratecodeTAX_RATE_CODE
184
taxRate
0.18 18%
isLeafNode isLeafNode Y 1 101:Y 102:N
serviceMark serviceMark Y 1 101:Y 102:N
isZeroRate isZeroRate Y 1 101:Y 102:N
zeroRateStart zeroRateStartDat Date
N
Date e
zeroRateEndDa zeroRateEndDate Date
N
te
isExempt isExempt Y 1 101:Y 102:N
exemptRateSta exemptRateStartD Date
N
rtDate ate
exemptRateEnd exemptRateEndDat Date
N
Date e
enableStatusC enableStatusCode 1 1:enable: 0:disable
Y
ode
exclusion exclusion 1 0:Zero
1:Exempt
Y
2:No exclusion
3:Both 0% & '-'
excisable excisable 3 101:Y
Y
102:N
185
}
{
"page": {
"pageNo": "1",
"pageSize": "10",
"totalSize": " Total number of articles ",
"pageCount": "total pages"
},
"records": [{
"supplierTin": "1010039929",
"supplierName": "Mr. EMUR SAM",
"remarks": "Increase inventory",
Response Message "stockInDate": "2020-09-01",
"stockInType": "101",
"productionBatchNo": "1200983",
"productionDate": "2020-09-01",
"branchId": "2020090132456",
"invoiceNo": "320001127399",
"referenceNo": "425502528294126235",
"branchName": "PARAMOUR COSMETICS LIMITED",
"totalAmount": "1000.00",
"id": "425502528294126235"
}]
}
Flow Description Goods Stock recods query
Field description
Field description
Field description
191
"adjustQuantity": "10",
"currentQuantity": "90",
"adjustAmount": "69990.00",
"remarks": "remarks"
}]
}
Flow Description Goods Stock Adjust detail query
Field description
Field description
Field description
Field description
195
ype Controller
102:Abnormal Transaction
disconnectedT disconnectedTime Date yyyy-MM-dd HH24:mm:ss
Y
ime
remarks remarks N Text
196
Field description
Field description
3:Query all
branchId branchId N 18
Corresponding dictionary
table invoiceApplySource
invoiceType invoice type 1 1:Invoice/Receipt
2:Credit Note With Original
FDN
3:Credit Note Without
Y Original FDN
4:Debit Note
Corresponding dictionary
table invoiceType
invoiceKind invoice kind 1 1 :Invoice
Y
2: Receipt
isInvalid Obsolete sign 1 Obsolete sign 1:obsolete 0:
Not obsolete Note: Obsolete
Y
only for positive and
supplementary tickets
isRefund Is it open to a 1 Whether it is opened for a
credit N ticket / Debit Note: 0 - not
note/Debit Note issued a negative ticket /
200
Debit 1- is issued Credit 2-
is issued Debit
pageNo current page 10
Y
number
pageSize How many records 3
are displayed per Y
page
totalSize Total number of 10
Y
articles
pageCount total pages Y 10
invoiceIndust invoiceIndustryC 3 101 General Industry
ryCode ode 102 Export
N 103 Import
104 Imported Service
105 Telecom
branchName branchName N 500
deviceNo deviceNo Y 50
uploadingTime uploadingTime Y Date
referenceNo referenceNo N 50 Seller's Reference No.
operator operator N 100
userName userName N 500
pumpNo pumpNo N 50
nozzleNo nozzleNo N 50
fuelType fuelType N 200
Field description
Field description
206
Field description
Field description
207
56. Fuel nozzle status upload
Field description
208
Interface Code T173
Request
N
Encrypted
Response
Y
Encrypted
Request
NULL
Message
[{
"id": "208178192251887451",
"manufacturerCode": "101",
Response
"manufacturerName": "101",
Message
"deviceTypeCode": "101",
"versionNo": "1"
}]
Flow Query Edc device Version
Description
Field description
209
Response
N
Encrypted
{
Request "tin": "1009837013",
Message "mobileNumber": "155012345678"
}
Response
NULL
Message
Flow Account Creation for USSD taxpayer
Description
Field description
210
Field description
211
Field description
allNegativeCode = 101
goodsStockLimitDetails is
Y
null
allNegativeCode = 102
goodsStockLimitDetails is not
null
statusCode statusCode 3 101:Enable
Y
102:Disable
Field description
Field description
Y 101: Registered
102: Deactivated
103: Suspended
104: Deregistered
branchId branchId Y 18
branchCode branchCode Y 50
branchName branchName Y 500
branchStatus branchStatus 3 Corresponding dictionary
branchStatus
Y
101: Registered
102: Deactivated
214
103: Suspended
104: Deregistered
Field description
215
Field Field Name Required Length Description
taxTypeName Tax type name Y 200
taxTypeCode Tax type 50 Corresponding dictionary
Y
taxType
registrationD effective date Date
Y
ate
cancellationD Obsolete date Date
Y
ate
Field description
Field description
218
Field Field Name Required Length Description
id id Y 18
buyerType buyerType 1 0 : B2B
1 : B2C
Y
2 : Foreigner
3 : B2G
buyerTin buyerTin N 20
buyerNinBrn buyerNinBrn N 100
buyerLegalNam buyerLegalName 256
N
e
buyerBusiness buyerBusinessNam 256
N
Name e
buyerEmail buyerEmail N 50
buyerLinePhon buyerLinePhone 30
N
e
buyerAddress buyerAddress N 500
buyerCitizens buyerCitizenship 128
N
hip
buyerPassport buyerPassportNum 30
N
Num
219