@ripwords/myinvois-client 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/package.json +4 -5
  3. package/src/index.ts +2 -1
  4. package/src/types/documents.d.ts +17 -10
  5. package/src/utils/document.ts +2 -2
  6. package/test/dynamicInvoiceFeatures.test.ts +2 -0
  7. package/test/signAndSubmitInvoice.test.ts +2 -0
  8. package/test/signature-diagnostics.test.ts +2 -0
  9. package/bun.lock +0 -460
  10. package/dist/0X-CG1S1WKn.d.ts +0 -210
  11. package/dist/0X-ChfmeAYF.d.cts +0 -211
  12. package/dist/1X-CmlbG02M.d.ts +0 -111
  13. package/dist/1X-DFikQbP0.d.cts +0 -20
  14. package/dist/1X-DbFshzup.d.ts +0 -19
  15. package/dist/1X-jFrFCOs0.d.cts +0 -112
  16. package/dist/2X-5cE4ojEX.d.cts +0 -140
  17. package/dist/2X-DA6J6Wd7.d.ts +0 -139
  18. package/dist/2X-FWZ1rYVt.d.cts +0 -40
  19. package/dist/2X-eC_p0QJf.d.ts +0 -39
  20. package/dist/3X-D9duw0Ro.d.cts +0 -21
  21. package/dist/3X-DbfkwdkO.d.ts +0 -20
  22. package/dist/3X-GxuN79Ax.d.ts +0 -61
  23. package/dist/3X-r9xbWJ2l.d.cts +0 -62
  24. package/dist/4X-1ZkK-uH5.d.cts +0 -31
  25. package/dist/4X-CLO9OuKa.d.cts +0 -265
  26. package/dist/4X-CnHtgO6u.d.ts +0 -30
  27. package/dist/4X-DYz_nYSD.d.ts +0 -264
  28. package/dist/5X-BzPEdkbC.d.ts +0 -21
  29. package/dist/5X-BziH0a09.d.cts +0 -77
  30. package/dist/5X-Cfe39fFc.d.cts +0 -22
  31. package/dist/5X-kBF74qx1.d.ts +0 -76
  32. package/dist/6X-BceErbps.d.cts +0 -105
  33. package/dist/6X-C_xpeu6J.d.ts +0 -15
  34. package/dist/6X-DLWEe1bP.d.cts +0 -16
  35. package/dist/6X-sQZfT0ZK.d.ts +0 -104
  36. package/dist/7X-Bet2agJ6.d.ts +0 -15
  37. package/dist/7X-BoKQxMoO.d.ts +0 -70
  38. package/dist/7X-CucHYQsA.d.cts +0 -16
  39. package/dist/7X-CwPAqozm.d.cts +0 -71
  40. package/dist/8X-BIjJ9kaV.d.cts +0 -110
  41. package/dist/8X-BOEWATU3.d.ts +0 -109
  42. package/dist/8X-CJpqd5xp.d.cts +0 -19
  43. package/dist/8X-s5AzkHR-.d.ts +0 -18
  44. package/dist/9X-BBDP1gZ6.d.ts +0 -14
  45. package/dist/9X-CP5Xp6bE.d.cts +0 -98
  46. package/dist/9X-D3aOVCnz.d.cts +0 -15
  47. package/dist/9X-DAAZV4sr.d.ts +0 -97
  48. package/dist/AX-CmpMMhII.d.ts +0 -110
  49. package/dist/AX-DFzpxGOT.d.cts +0 -111
  50. package/dist/BX-CyiqNE6b.d.cts +0 -115
  51. package/dist/BX-j78z_ju_.d.ts +0 -114
  52. package/dist/CX-B6rEhQx7.d.ts +0 -127
  53. package/dist/CX-BTPvC3Dv.d.cts +0 -128
  54. package/dist/DX-BD4-hTCh.d.cts +0 -115
  55. package/dist/DX-CAmMnx5a.d.ts +0 -114
  56. package/dist/EX-CXhSC85J.d.ts +0 -106
  57. package/dist/EX-mTHCH0Yk.d.cts +0 -107
  58. package/dist/FX-DOOMoQl2.d.cts +0 -127
  59. package/dist/FX-DYVIJ3l0.d.ts +0 -126
  60. package/dist/GX-8URJ7WHz.d.cts +0 -136
  61. package/dist/GX-eBOVHqi6.d.ts +0 -135
  62. package/dist/HX-49z8CzsE.d.cts +0 -126
  63. package/dist/HX-Dz5T0xXI.d.ts +0 -125
  64. package/dist/IX-B6kblmBs.d.cts +0 -23
  65. package/dist/IX-PiKYro5a.d.ts +0 -22
  66. package/dist/JX-DMwHLGEE.d.cts +0 -104
  67. package/dist/JX-Dvnt0mSK.d.ts +0 -103
  68. package/dist/KX-BUb8e0yg.d.ts +0 -150
  69. package/dist/KX-DaJPkefl.d.cts +0 -151
  70. package/dist/LX-BnILxjdS.d.cts +0 -123
  71. package/dist/LX-l5ZBaGov.d.ts +0 -122
  72. package/dist/MX-BbPO8mTj.d.cts +0 -153
  73. package/dist/MX-C7C15AWi.d.ts +0 -152
  74. package/dist/NX-C7nFVC-D.d.ts +0 -121
  75. package/dist/NX-xy5uw7H3.d.cts +0 -122
  76. package/dist/OX-CIzARbON.d.cts +0 -26
  77. package/dist/OX-Dmkvcaij.d.ts +0 -25
  78. package/dist/PX-BKZ14N7N.d.ts +0 -120
  79. package/dist/PX-CL8waFgx.d.cts +0 -121
  80. package/dist/QX-6xdSNtxZ.d.ts +0 -58
  81. package/dist/QX-BowAYqZb.d.cts +0 -59
  82. package/dist/RX-DFoiOK5q.d.ts +0 -22
  83. package/dist/RX-fWoWcHTG.d.cts +0 -23
  84. package/dist/SX-CZ3e31OT.d.cts +0 -40
  85. package/dist/SX-D-Szi9wa.d.ts +0 -39
  86. package/dist/TX-CJhJ-HYX.d.cts +0 -31
  87. package/dist/TX-DTfkGsqn.d.ts +0 -30
  88. package/dist/UX-Bw4HHAj4.d.ts +0 -17
  89. package/dist/UX-P7-u2y70.d.cts +0 -18
  90. package/dist/VX-C8Eu5gQf.d.cts +0 -17
  91. package/dist/VX-DCv5x_hi.d.ts +0 -16
  92. package/dist/WX-BYtJ5_if.d.ts +0 -25
  93. package/dist/WX-DkiaqB2V.d.cts +0 -26
  94. package/dist/XX-D4p4iK-a.d.cts +0 -828
  95. package/dist/XX-Jo1yJO3A.d.ts +0 -827
  96. package/dist/YX-BvGmEsVG.d.ts +0 -19
  97. package/dist/YX-Du8zv9qz.d.cts +0 -20
  98. package/dist/ZX-B4jFD-21.d.cts +0 -22
  99. package/dist/ZX-B59AJcBY.d.ts +0 -21
  100. package/dist/api/platform/platformLogin.d.ts +0 -65
  101. package/dist/api/platform/platformLogin.js +0 -3
  102. package/dist/certificate-DFK-788s.cjs +0 -62
  103. package/dist/certificate-DFK-788s.cjs.map +0 -1
  104. package/dist/certificate-aooIRf9A.js +0 -49
  105. package/dist/chunk-CUT6urMc.cjs +0 -30
  106. package/dist/classification-codes-B15PbWxz.d.cts +0 -118
  107. package/dist/classification-codes-BKxV-rO9.d.ts +0 -117
  108. package/dist/country-code-CQuaiQm2.d.ts +0 -542
  109. package/dist/country-code-DPeNFMMi.d.cts +0 -543
  110. package/dist/currencies-BYJK-m6v.d.ts +0 -207
  111. package/dist/currencies-S5g1gzBU.d.cts +0 -208
  112. package/dist/document-DMIMRJV0.cjs +0 -472
  113. package/dist/document-DMIMRJV0.cjs.map +0 -1
  114. package/dist/document-NQos5fSr.js +0 -405
  115. package/dist/documents-BVG7KIKY.d.ts +0 -847
  116. package/dist/documents-C066EC9m.d.cts +0 -848
  117. package/dist/e-invoice-BuwtFnlI.d.cts +0 -44
  118. package/dist/e-invoice-CmbLQkHw.d.ts +0 -43
  119. package/dist/getBaseUrl-CO7Jp27d.cjs +0 -14
  120. package/dist/getBaseUrl-CO7Jp27d.cjs.map +0 -1
  121. package/dist/getBaseUrl-R3IdgCu3.js +0 -7
  122. package/dist/index-0-EvC6Nv.d.ts +0 -15
  123. package/dist/index-D2_HVwCz.d.cts +0 -16
  124. package/dist/index.cjs +0 -309
  125. package/dist/index.cjs.map +0 -1
  126. package/dist/index.d.ts +0 -233
  127. package/dist/index.js +0 -308
  128. package/dist/index10.cjs +0 -0
  129. package/dist/index11.cjs +0 -34
  130. package/dist/index11.cjs.map +0 -1
  131. package/dist/index12.cjs +0 -24
  132. package/dist/index12.cjs.map +0 -1
  133. package/dist/index13.cjs +0 -0
  134. package/dist/index14.cjs +0 -13
  135. package/dist/index14.cjs.map +0 -1
  136. package/dist/index15.cjs +0 -4
  137. package/dist/index16.cjs +0 -13
  138. package/dist/index17.cjs +0 -3
  139. package/dist/index18.cjs +0 -340
  140. package/dist/index18.cjs.map +0 -1
  141. package/dist/index19.cjs +0 -329
  142. package/dist/index19.cjs.map +0 -1
  143. package/dist/index2.cjs +0 -62
  144. package/dist/index2.cjs.map +0 -1
  145. package/dist/index20.cjs +0 -140
  146. package/dist/index20.cjs.map +0 -1
  147. package/dist/index21.cjs +0 -3
  148. package/dist/index22.cjs +0 -208
  149. package/dist/index22.cjs.map +0 -1
  150. package/dist/index23.cjs +0 -109
  151. package/dist/index23.cjs.map +0 -1
  152. package/dist/index24.cjs +0 -137
  153. package/dist/index24.cjs.map +0 -1
  154. package/dist/index25.cjs +0 -64
  155. package/dist/index25.cjs.map +0 -1
  156. package/dist/index26.cjs +0 -267
  157. package/dist/index26.cjs.map +0 -1
  158. package/dist/index27.cjs +0 -79
  159. package/dist/index27.cjs.map +0 -1
  160. package/dist/index28.cjs +0 -107
  161. package/dist/index28.cjs.map +0 -1
  162. package/dist/index29.cjs +0 -73
  163. package/dist/index29.cjs.map +0 -1
  164. package/dist/index3.cjs +0 -532
  165. package/dist/index3.cjs.map +0 -1
  166. package/dist/index30.cjs +0 -112
  167. package/dist/index30.cjs.map +0 -1
  168. package/dist/index31.cjs +0 -100
  169. package/dist/index31.cjs.map +0 -1
  170. package/dist/index32.cjs +0 -18
  171. package/dist/index32.cjs.map +0 -1
  172. package/dist/index33.cjs +0 -38
  173. package/dist/index33.cjs.map +0 -1
  174. package/dist/index34.cjs +0 -19
  175. package/dist/index34.cjs.map +0 -1
  176. package/dist/index35.cjs +0 -29
  177. package/dist/index35.cjs.map +0 -1
  178. package/dist/index36.cjs +0 -20
  179. package/dist/index36.cjs.map +0 -1
  180. package/dist/index37.cjs +0 -14
  181. package/dist/index37.cjs.map +0 -1
  182. package/dist/index38.cjs +0 -14
  183. package/dist/index38.cjs.map +0 -1
  184. package/dist/index39.cjs +0 -17
  185. package/dist/index39.cjs.map +0 -1
  186. package/dist/index4.cjs +0 -196
  187. package/dist/index4.cjs.map +0 -1
  188. package/dist/index40.cjs +0 -13
  189. package/dist/index40.cjs.map +0 -1
  190. package/dist/index41.cjs +0 -108
  191. package/dist/index41.cjs.map +0 -1
  192. package/dist/index42.cjs +0 -113
  193. package/dist/index42.cjs.map +0 -1
  194. package/dist/index43.cjs +0 -126
  195. package/dist/index43.cjs.map +0 -1
  196. package/dist/index44.cjs +0 -113
  197. package/dist/index44.cjs.map +0 -1
  198. package/dist/index45.cjs +0 -105
  199. package/dist/index45.cjs.map +0 -1
  200. package/dist/index46.cjs +0 -125
  201. package/dist/index46.cjs.map +0 -1
  202. package/dist/index47.cjs +0 -134
  203. package/dist/index47.cjs.map +0 -1
  204. package/dist/index48.cjs +0 -124
  205. package/dist/index48.cjs.map +0 -1
  206. package/dist/index49.cjs +0 -21
  207. package/dist/index49.cjs.map +0 -1
  208. package/dist/index5.cjs +0 -0
  209. package/dist/index50.cjs +0 -102
  210. package/dist/index50.cjs.map +0 -1
  211. package/dist/index51.cjs +0 -149
  212. package/dist/index51.cjs.map +0 -1
  213. package/dist/index52.cjs +0 -121
  214. package/dist/index52.cjs.map +0 -1
  215. package/dist/index53.cjs +0 -151
  216. package/dist/index53.cjs.map +0 -1
  217. package/dist/index54.cjs +0 -120
  218. package/dist/index54.cjs.map +0 -1
  219. package/dist/index55.cjs +0 -24
  220. package/dist/index55.cjs.map +0 -1
  221. package/dist/index56.cjs +0 -119
  222. package/dist/index56.cjs.map +0 -1
  223. package/dist/index57.cjs +0 -54
  224. package/dist/index57.cjs.map +0 -1
  225. package/dist/index58.cjs +0 -21
  226. package/dist/index58.cjs.map +0 -1
  227. package/dist/index58.cts.map +0 -1
  228. package/dist/index59.cjs +0 -35
  229. package/dist/index59.cjs.map +0 -1
  230. package/dist/index59.cts.map +0 -1
  231. package/dist/index6.cjs +0 -25
  232. package/dist/index6.cjs.map +0 -1
  233. package/dist/index60.cjs +0 -29
  234. package/dist/index60.cjs.map +0 -1
  235. package/dist/index60.cts.map +0 -1
  236. package/dist/index61.cjs +0 -16
  237. package/dist/index61.cjs.map +0 -1
  238. package/dist/index61.cts.map +0 -1
  239. package/dist/index62.cjs +0 -15
  240. package/dist/index62.cjs.map +0 -1
  241. package/dist/index62.cts.map +0 -1
  242. package/dist/index63.cjs +0 -24
  243. package/dist/index63.cjs.map +0 -1
  244. package/dist/index63.cts.map +0 -1
  245. package/dist/index64.cjs +0 -419
  246. package/dist/index64.cjs.map +0 -1
  247. package/dist/index64.cts.map +0 -1
  248. package/dist/index65.cjs +0 -15
  249. package/dist/index65.cjs.map +0 -1
  250. package/dist/index65.cts.map +0 -1
  251. package/dist/index66.cjs +0 -16
  252. package/dist/index66.cjs.map +0 -1
  253. package/dist/index66.cts.map +0 -1
  254. package/dist/index7.cjs +0 -0
  255. package/dist/index8.cjs +0 -0
  256. package/dist/index9.cjs +0 -25
  257. package/dist/index9.cjs.map +0 -1
  258. package/dist/msic-codes-CPWVNnpq.d.cts +0 -26
  259. package/dist/msic-codes-DToUqTI6.d.ts +0 -25
  260. package/dist/payment-modes-DA7uBIGb.d.ts +0 -43
  261. package/dist/payment-modes-FX88uyhP.d.cts +0 -44
  262. package/dist/platformLogin-PGzMhw1X.cjs +0 -37
  263. package/dist/platformLogin-PGzMhw1X.cjs.map +0 -1
  264. package/dist/platformLogin-f0bNAoZI.js +0 -30
  265. package/dist/signatures-BKi9DP2K.d.cts +0 -173
  266. package/dist/signatures-CG175mpg.d.ts +0 -172
  267. package/dist/state-codes-CNp_6051.d.cts +0 -62
  268. package/dist/state-codes-dvoTe5pC.d.ts +0 -61
  269. package/dist/tax-types-CgwxONDS.d.cts +0 -42
  270. package/dist/tax-types-tosH5I0q.d.ts +0 -41
  271. package/dist/types/classification-codes.d.ts +0 -2
  272. package/dist/types/country-code.d.ts +0 -2
  273. package/dist/types/currencies.d.ts +0 -2
  274. package/dist/types/documents.d.ts +0 -7
  275. package/dist/types/e-invoice.d.ts +0 -2
  276. package/dist/types/index.d.ts +0 -58
  277. package/dist/types/msic/0X.d.ts +0 -2
  278. package/dist/types/msic/1X.d.ts +0 -2
  279. package/dist/types/msic/2X.d.ts +0 -2
  280. package/dist/types/msic/3X.d.ts +0 -2
  281. package/dist/types/msic/4X.d.ts +0 -2
  282. package/dist/types/msic/5X.d.ts +0 -2
  283. package/dist/types/msic/6X.d.ts +0 -2
  284. package/dist/types/msic/7X.d.ts +0 -2
  285. package/dist/types/msic/8X.d.ts +0 -2
  286. package/dist/types/msic/9X.d.ts +0 -2
  287. package/dist/types/msic-codes.d.ts +0 -12
  288. package/dist/types/payment-modes.d.ts +0 -2
  289. package/dist/types/signatures.d.ts +0 -2
  290. package/dist/types/state-codes.d.ts +0 -2
  291. package/dist/types/tax-types.d.ts +0 -2
  292. package/dist/types/unit/1X.d.ts +0 -2
  293. package/dist/types/unit/2X.d.ts +0 -2
  294. package/dist/types/unit/3X.d.ts +0 -2
  295. package/dist/types/unit/4X.d.ts +0 -2
  296. package/dist/types/unit/5X.d.ts +0 -2
  297. package/dist/types/unit/6X.d.ts +0 -2
  298. package/dist/types/unit/7X.d.ts +0 -2
  299. package/dist/types/unit/8X.d.ts +0 -2
  300. package/dist/types/unit/9X.d.ts +0 -2
  301. package/dist/types/unit/AX.d.ts +0 -2
  302. package/dist/types/unit/BX.d.ts +0 -2
  303. package/dist/types/unit/CX.d.ts +0 -2
  304. package/dist/types/unit/DX.d.ts +0 -2
  305. package/dist/types/unit/EX.d.ts +0 -2
  306. package/dist/types/unit/FX.d.ts +0 -2
  307. package/dist/types/unit/GX.d.ts +0 -2
  308. package/dist/types/unit/HX.d.ts +0 -2
  309. package/dist/types/unit/IX.d.ts +0 -2
  310. package/dist/types/unit/JX.d.ts +0 -2
  311. package/dist/types/unit/KX.d.ts +0 -2
  312. package/dist/types/unit/LX.d.ts +0 -2
  313. package/dist/types/unit/MX.d.ts +0 -2
  314. package/dist/types/unit/NX.d.ts +0 -2
  315. package/dist/types/unit/OX.d.ts +0 -2
  316. package/dist/types/unit/PX.d.ts +0 -2
  317. package/dist/types/unit/QX.d.ts +0 -2
  318. package/dist/types/unit/RX.d.ts +0 -2
  319. package/dist/types/unit/SX.d.ts +0 -2
  320. package/dist/types/unit/TX.d.ts +0 -2
  321. package/dist/types/unit/UX.d.ts +0 -2
  322. package/dist/types/unit/VX.d.ts +0 -2
  323. package/dist/types/unit/WX.d.ts +0 -2
  324. package/dist/types/unit/XX.d.ts +0 -2
  325. package/dist/types/unit/YX.d.ts +0 -2
  326. package/dist/types/unit/ZX.d.ts +0 -2
  327. package/dist/types/unit-types.d.ts +0 -37
  328. package/dist/unit-types-BKZxwVYQ.d.ts +0 -55
  329. package/dist/unit-types-CaOA5ZDG.d.cts +0 -56
  330. package/dist/utils/base64.d.ts +0 -5
  331. package/dist/utils/base64.js +0 -10
  332. package/dist/utils/certificate.d.ts +0 -22
  333. package/dist/utils/certificate.js +0 -3
  334. package/dist/utils/document.d.ts +0 -135
  335. package/dist/utils/document.js +0 -3
  336. package/dist/utils/getBaseUrl.d.ts +0 -4
  337. package/dist/utils/getBaseUrl.js +0 -3
  338. package/dist/utils/helpers.d.ts +0 -271
  339. package/dist/utils/helpers.js +0 -330
  340. package/dist/utils/signature-diagnostics.d.ts +0 -93
  341. package/dist/utils/signature-diagnostics.js +0 -326
  342. package/dist/utils/validation.d.ts +0 -46
  343. package/dist/utils/validation.js +0 -134
package/CHANGELOG.md CHANGED
@@ -1,6 +1,34 @@
1
1
  # Changelog
2
2
 
3
3
 
4
+ ## v0.1.4
5
+
6
+ [compare changes](https://github.com/Ripwords/MyInvoisClient/compare/v0.1.3...v0.1.4)
7
+
8
+ ### 💅 Refactors
9
+
10
+ - Extend RegistrationType to include 'ARMY' and update related interfaces in documents.d.ts and index.ts for improved type safety ([955ccee](https://github.com/Ripwords/MyInvoisClient/commit/955ccee))
11
+
12
+ ### 🏡 Chore
13
+
14
+ - Update release scripts to remove npm publish command and ensure git push follows changelog generation ([ba56b4a](https://github.com/Ripwords/MyInvoisClient/commit/ba56b4a))
15
+
16
+ ### ❤️ Contributors
17
+
18
+ - JJ <teohjjteoh@gmail.com>
19
+
20
+ ## v0.1.3
21
+
22
+ [compare changes](https://github.com/Ripwords/MyInvoisClient/compare/v0.1.2...v0.1.3)
23
+
24
+ ### 💅 Refactors
25
+
26
+ - Add industry classification fields to Supplier interface in documents.d.ts, update invoice generation logic in document.ts, and enhance related tests for improved type safety and clarity ([648858a](https://github.com/Ripwords/MyInvoisClient/commit/648858a))
27
+
28
+ ### ❤️ Contributors
29
+
30
+ - JJ <teohjjteoh@gmail.com>
31
+
4
32
  ## v0.1.2
5
33
 
6
34
  [compare changes](https://github.com/Ripwords/MyInvoisClient/compare/v0.1.1...v0.1.2)
package/package.json CHANGED
@@ -1,16 +1,15 @@
1
1
  {
2
2
  "name": "@ripwords/myinvois-client",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "MyInvois client",
5
5
  "scripts": {
6
6
  "build": "tsdown",
7
7
  "prerelease": "bun run lint && bun run build",
8
8
  "postrelease": "git push --follow-tags",
9
9
  "changelog": "changelogen --release",
10
- "publish": "npm publish --access public && git push --follow-tags",
11
- "release": "bun run prerelease && bun run changelog && bun run publish",
12
- "release:minor": "bun run prerelease && bun run changelog --minor && bun run publish",
13
- "release:major": "bun run prerelease && bun run changelog --major && bun run publish",
10
+ "release": "bun run prerelease && bun run changelog && git push --follow-tags",
11
+ "release:minor": "bun run prerelease && bun run changelog --minor && git push --follow-tags",
12
+ "release:major": "bun run prerelease && bun run changelog --major && git push --follow-tags",
14
13
  "lint": "oxlint",
15
14
  "test": "vitest"
16
15
  },
package/src/index.ts CHANGED
@@ -3,6 +3,7 @@ import { platformLogin } from './api/platform/platformLogin'
3
3
  import type {
4
4
  DocumentStatus,
5
5
  InvoiceV1_1,
6
+ RegistrationType,
6
7
  SigningCredentials,
7
8
  } from './types/documents'
8
9
  import { getBaseUrl } from './utils/getBaseUrl'
@@ -114,7 +115,7 @@ export class MyInvoisClient {
114
115
  */
115
116
  async verifyTin(
116
117
  tin: string,
117
- idType: 'NRIC' | 'ARMY' | 'PASSPORT' | 'BRN',
118
+ idType: RegistrationType,
118
119
  idValue: string,
119
120
  ): Promise<boolean> {
120
121
  try {
@@ -1,14 +1,11 @@
1
- import type { EInvoiceTypeCode } from './e-invoice.d.ts'
1
+ import type { ClassificationCode } from './classification-codes.d.ts'
2
2
  import type { CurrencyCode } from './currencies.d.ts'
3
+ import type { EInvoiceTypeCode } from './e-invoice.d.ts'
4
+ import type { MSICCode } from './msic-codes.d.ts'
3
5
  import type { IssuerDigitalSignature } from './signatures.d.ts'
4
6
  import type { TaxTypeCode } from './tax-types.d.ts'
5
- import type { CountryCode } from './country-code.d.ts'
6
- import type { ClassificationCode } from './classification-codes.d.ts'
7
- import type { UnitTypeCode } from './unit-types.d.ts'
8
- import type { PaymentModeCode } from './payment-modes.d.ts'
9
- import type { MSICCode } from './msic-codes.d.ts'
10
7
 
11
- export type RegistrationType = 'BRN' | 'NRIC' | 'PASSPORT'
8
+ export type RegistrationType = 'BRN' | 'NRIC' | 'PASSPORT' | 'ARMY'
12
9
 
13
10
  // Based on https://sdk.myinvois.hasil.gov.my/documents/invoice-v1-1/
14
11
 
@@ -49,7 +46,7 @@ export interface Supplier {
49
46
  registrationType: RegistrationType
50
47
  /**
51
48
  * Supplier's Registration / Identification Number / Passport Number.
52
- * Format depends on schemeID: NRIC (12), BRN (20), PASSPORT (12), ARMY (12).
49
+ * Format depends on schemeID: NRIC (12), BRN (20), PASSPORT (12)
53
50
  * @example BRN: 202001234567
54
51
  */
55
52
  registrationNumber: string
@@ -59,6 +56,16 @@ export interface Supplier {
59
56
  * @example +60123456789
60
57
  */
61
58
  contactNumber: string
59
+ /**
60
+ * Supplier's industry classification code. Max 10 chars.
61
+ * @example 41001
62
+ */
63
+ industryClassificationCode: MSICCode['code']
64
+ /**
65
+ * Supplier's industry classification description. Max 300 chars.
66
+ * @example Other retail sale in non-specialised stores
67
+ */
68
+ industryClassificationDescription: MSICCode['description']
62
69
  }
63
70
 
64
71
  /**
@@ -75,13 +82,13 @@ export interface Buyer {
75
82
  */
76
83
  tin: string
77
84
  /**
78
- * Buyer's Registration Type. NRIC, BRN, PASSPORT, ARMY
85
+ * Buyer's Registration Type. NRIC, BRN, PASSPORT
79
86
  * @example BRN
80
87
  */
81
88
  registrationType: RegistrationType
82
89
  /**
83
90
  * Buyer's Registration / Identification Number / Passport Number.
84
- * Format depends on schemeID: NRIC (12), BRN (20), PASSPORT (12), ARMY (12).
91
+ * Format depends on schemeID: NRIC (12), BRN (20), PASSPORT (12).
85
92
  * @example BRN: 202001234567
86
93
  */
87
94
  registrationNumber: string
@@ -81,8 +81,8 @@ export const generateCleanInvoiceObject = (
81
81
  // Industry Classification - required field
82
82
  IndustryClassificationCode: [
83
83
  {
84
- _: '47900', // Default to trading/general commerce
85
- name: 'Other retail sale in non-specialised stores',
84
+ _: invoice.supplier.industryClassificationCode,
85
+ name: invoice.supplier.industryClassificationDescription,
86
86
  },
87
87
  ],
88
88
 
@@ -238,6 +238,8 @@ describe('Dynamic Invoice Features', () => {
238
238
  state: '14',
239
239
  country: 'MYS',
240
240
  },
241
+ industryClassificationCode: '41001',
242
+ industryClassificationDescription: 'Test Industry',
241
243
  },
242
244
 
243
245
  buyer: {
@@ -44,6 +44,8 @@ const createMinimalTestInvoice = (): InvoiceV1_1 => {
44
44
  state: '14', // Wilayah Persekutuan Kuala Lumpur
45
45
  country: 'MYS',
46
46
  },
47
+ industryClassificationCode: '41001',
48
+ industryClassificationDescription: 'Test Industry',
47
49
  },
48
50
 
49
51
  // === BUYER (using consolidated buyer for testing) ===
@@ -44,6 +44,8 @@ describe('Signature Diagnostics', () => {
44
44
  state: '14',
45
45
  country: 'MYS',
46
46
  },
47
+ industryClassificationCode: '41001',
48
+ industryClassificationDescription: 'Test Industry',
47
49
  },
48
50
 
49
51
  buyer: {