@factpulse/sdk 3.0.5 → 3.0.6

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 (365) hide show
  1. package/.openapi-generator/FILES +66 -4
  2. package/.openapi-generator/VERSION +1 -1
  3. package/CHANGELOG.md +3 -3
  4. package/api/document-conversion-api.ts +485 -0
  5. package/api/invoice-processing-api.ts +34 -34
  6. package/api.ts +1 -0
  7. package/dist/api/document-conversion-api.d.ts +226 -0
  8. package/dist/api/document-conversion-api.js +464 -0
  9. package/dist/api/invoice-processing-api.d.ts +33 -33
  10. package/dist/api/invoice-processing-api.js +16 -16
  11. package/dist/api.d.ts +1 -0
  12. package/dist/api.js +1 -0
  13. package/dist/esm/api/document-conversion-api.d.ts +226 -0
  14. package/dist/esm/api/document-conversion-api.js +454 -0
  15. package/dist/esm/api/invoice-processing-api.d.ts +33 -33
  16. package/dist/esm/api/invoice-processing-api.js +16 -16
  17. package/dist/esm/api.d.ts +1 -0
  18. package/dist/esm/api.js +1 -0
  19. package/dist/esm/models/additional-document.d.ts +24 -0
  20. package/dist/esm/models/additional-document.js +14 -0
  21. package/dist/esm/models/allowance-charge.d.ts +31 -0
  22. package/dist/esm/models/allowance-charge.js +14 -0
  23. package/dist/esm/models/{apiprofile.d.ts → allowance-total-amount.d.ts} +3 -8
  24. package/dist/esm/models/allowance-total-amount.js +14 -0
  25. package/dist/esm/models/amount-due.d.ts +1 -1
  26. package/dist/{models/apiprofile.d.ts → esm/models/amount.d.ts} +3 -8
  27. package/dist/esm/models/amount.js +14 -0
  28. package/dist/esm/models/base-amount.d.ts +16 -0
  29. package/dist/esm/models/base-amount.js +14 -0
  30. package/dist/esm/models/charge-total-amount.d.ts +16 -0
  31. package/dist/esm/models/charge-total-amount.js +14 -0
  32. package/dist/esm/models/contact.d.ts +20 -0
  33. package/dist/esm/models/contact.js +14 -0
  34. package/dist/esm/models/convert-error-response.d.ts +27 -0
  35. package/dist/esm/models/convert-error-response.js +14 -0
  36. package/dist/esm/models/convert-pending-input-response.d.ts +31 -0
  37. package/dist/esm/models/convert-pending-input-response.js +14 -0
  38. package/dist/esm/models/convert-resume-request.d.ts +22 -0
  39. package/dist/esm/models/convert-resume-request.js +14 -0
  40. package/dist/esm/models/{document-type.d.ts → convert-success-response.d.ts} +29 -19
  41. package/dist/esm/models/convert-success-response.js +14 -0
  42. package/dist/{models/document-type.d.ts → esm/models/convert-validation-failed-response.d.ts} +25 -20
  43. package/dist/esm/models/convert-validation-failed-response.js +14 -0
  44. package/dist/esm/models/delivery-party.d.ts +22 -0
  45. package/dist/esm/models/delivery-party.js +14 -0
  46. package/dist/esm/models/document-type-info.d.ts +28 -0
  47. package/dist/esm/models/document-type-info.js +14 -0
  48. package/dist/esm/models/extraction-info.d.ts +32 -0
  49. package/dist/esm/models/extraction-info.js +14 -0
  50. package/dist/esm/models/factur-xinvoice.d.ts +19 -0
  51. package/dist/esm/models/factur-xprofile.d.ts +21 -0
  52. package/{models/apiprofile.ts → dist/esm/models/factur-xprofile.js} +5 -14
  53. package/dist/esm/models/facture-electronique-rest-api-schemas-chorus-pro-chorus-pro-credentials.d.ts +4 -4
  54. package/dist/esm/models/file-info.d.ts +21 -0
  55. package/dist/esm/models/file-info.js +14 -0
  56. package/dist/esm/models/files-info.d.ts +19 -0
  57. package/dist/esm/models/files-info.js +14 -0
  58. package/dist/esm/models/generate-certificate-request.d.ts +5 -5
  59. package/dist/esm/models/get-chorus-pro-id-request.d.ts +1 -1
  60. package/dist/esm/models/get-invoice-request.d.ts +1 -1
  61. package/dist/esm/models/get-structure-request.d.ts +2 -2
  62. package/dist/esm/models/global-allowance-amount.d.ts +1 -1
  63. package/dist/esm/models/gross-unit-price.d.ts +16 -0
  64. package/dist/esm/models/gross-unit-price.js +14 -0
  65. package/dist/esm/models/incoming-invoice.d.ts +2 -2
  66. package/dist/esm/models/index.d.ts +32 -2
  67. package/dist/esm/models/index.js +32 -2
  68. package/dist/esm/models/invoice-line-allowance-amount.d.ts +1 -1
  69. package/dist/esm/models/invoice-line.d.ts +40 -6
  70. package/dist/esm/models/invoice-references.d.ts +20 -1
  71. package/dist/esm/models/invoice-totals-prepayment.d.ts +1 -1
  72. package/dist/esm/models/invoice-totals.d.ts +10 -2
  73. package/dist/esm/models/line-net-amount.d.ts +1 -1
  74. package/dist/esm/models/line-total-amount.d.ts +16 -0
  75. package/dist/esm/models/line-total-amount.js +14 -0
  76. package/dist/esm/models/manual-rate.d.ts +1 -1
  77. package/dist/esm/models/manual-vat-rate.d.ts +1 -1
  78. package/dist/esm/models/missing-field.d.ts +34 -0
  79. package/dist/esm/models/missing-field.js +14 -0
  80. package/dist/esm/models/payee.d.ts +2 -0
  81. package/dist/esm/models/payment-card.d.ts +18 -0
  82. package/dist/esm/models/payment-card.js +14 -0
  83. package/dist/esm/models/pdpcredentials.d.ts +5 -5
  84. package/dist/esm/models/percentage.d.ts +16 -0
  85. package/dist/esm/models/percentage.js +14 -0
  86. package/dist/esm/models/postal-address.d.ts +3 -1
  87. package/dist/esm/models/price-allowance-amount.d.ts +16 -0
  88. package/dist/esm/models/price-allowance-amount.js +14 -0
  89. package/dist/esm/models/price-basis-quantity.d.ts +16 -0
  90. package/dist/esm/models/price-basis-quantity.js +14 -0
  91. package/dist/esm/models/processing-options.d.ts +3 -3
  92. package/dist/esm/models/product-characteristic.d.ts +24 -0
  93. package/dist/esm/models/product-characteristic.js +14 -0
  94. package/dist/esm/models/product-classification.d.ts +22 -0
  95. package/dist/esm/models/product-classification.js +14 -0
  96. package/dist/esm/models/quantity.d.ts +1 -1
  97. package/dist/esm/models/recipient.d.ts +5 -1
  98. package/dist/esm/models/rounding-amount.d.ts +16 -0
  99. package/dist/esm/models/rounding-amount.js +14 -0
  100. package/dist/esm/models/scheme-id.d.ts +11 -5
  101. package/dist/esm/models/scheme-id.js +11 -5
  102. package/dist/esm/models/search-flow-request.d.ts +7 -7
  103. package/dist/esm/models/search-structure-request.d.ts +4 -4
  104. package/dist/esm/models/submit-flow-request.d.ts +6 -6
  105. package/dist/esm/models/submit-invoice-request.d.ts +13 -13
  106. package/dist/esm/models/supplier.d.ts +10 -1
  107. package/dist/esm/models/tax-representative.d.ts +29 -0
  108. package/dist/esm/models/tax-representative.js +14 -0
  109. package/dist/esm/models/taxable-amount.d.ts +1 -1
  110. package/dist/esm/models/total-gross-amount.d.ts +1 -1
  111. package/dist/esm/models/total-net-amount.d.ts +1 -1
  112. package/dist/esm/models/total-vatamount.d.ts +1 -1
  113. package/dist/esm/models/unit-net-price.d.ts +1 -1
  114. package/dist/esm/models/validation-info.d.ts +38 -0
  115. package/dist/esm/models/validation-info.js +14 -0
  116. package/dist/esm/models/vat-rate.d.ts +16 -0
  117. package/dist/esm/models/vat-rate.js +14 -0
  118. package/dist/esm/models/vatamount.d.ts +1 -1
  119. package/dist/esm/models/vatline.d.ts +3 -1
  120. package/dist/esm/models/vatpoint-date-code.d.ts +20 -0
  121. package/dist/esm/models/{apiprofile.js → vatpoint-date-code.js} +5 -6
  122. package/dist/models/additional-document.d.ts +24 -0
  123. package/dist/models/{apiprofile.js → additional-document.js} +0 -10
  124. package/dist/models/allowance-charge.d.ts +31 -0
  125. package/dist/models/allowance-charge.js +15 -0
  126. package/dist/models/allowance-total-amount.d.ts +16 -0
  127. package/dist/models/allowance-total-amount.js +15 -0
  128. package/dist/models/amount-due.d.ts +1 -1
  129. package/dist/models/amount.d.ts +16 -0
  130. package/dist/models/amount.js +15 -0
  131. package/dist/models/base-amount.d.ts +16 -0
  132. package/dist/models/base-amount.js +15 -0
  133. package/dist/models/charge-total-amount.d.ts +16 -0
  134. package/dist/models/charge-total-amount.js +15 -0
  135. package/dist/models/contact.d.ts +20 -0
  136. package/dist/models/contact.js +15 -0
  137. package/dist/models/convert-error-response.d.ts +27 -0
  138. package/dist/models/convert-error-response.js +15 -0
  139. package/dist/models/convert-pending-input-response.d.ts +31 -0
  140. package/dist/models/convert-pending-input-response.js +15 -0
  141. package/dist/models/convert-resume-request.d.ts +22 -0
  142. package/dist/models/convert-resume-request.js +15 -0
  143. package/dist/models/convert-success-response.d.ts +47 -0
  144. package/dist/models/convert-success-response.js +15 -0
  145. package/dist/models/{document-type.js → convert-validation-failed-response.d.ts} +25 -24
  146. package/dist/models/convert-validation-failed-response.js +15 -0
  147. package/dist/models/delivery-party.d.ts +22 -0
  148. package/dist/models/delivery-party.js +15 -0
  149. package/dist/models/document-type-info.d.ts +28 -0
  150. package/dist/models/document-type-info.js +15 -0
  151. package/dist/models/extraction-info.d.ts +32 -0
  152. package/dist/models/extraction-info.js +15 -0
  153. package/dist/models/factur-xinvoice.d.ts +19 -0
  154. package/dist/models/factur-xprofile.d.ts +21 -0
  155. package/dist/models/factur-xprofile.js +25 -0
  156. package/dist/models/facture-electronique-rest-api-schemas-chorus-pro-chorus-pro-credentials.d.ts +4 -4
  157. package/dist/models/file-info.d.ts +21 -0
  158. package/dist/models/file-info.js +15 -0
  159. package/dist/models/files-info.d.ts +19 -0
  160. package/dist/models/files-info.js +15 -0
  161. package/dist/models/generate-certificate-request.d.ts +5 -5
  162. package/dist/models/get-chorus-pro-id-request.d.ts +1 -1
  163. package/dist/models/get-invoice-request.d.ts +1 -1
  164. package/dist/models/get-structure-request.d.ts +2 -2
  165. package/dist/models/global-allowance-amount.d.ts +1 -1
  166. package/dist/models/gross-unit-price.d.ts +16 -0
  167. package/dist/models/gross-unit-price.js +15 -0
  168. package/dist/models/incoming-invoice.d.ts +2 -2
  169. package/dist/models/index.d.ts +32 -2
  170. package/dist/models/index.js +32 -2
  171. package/dist/models/invoice-line-allowance-amount.d.ts +1 -1
  172. package/dist/models/invoice-line.d.ts +40 -6
  173. package/dist/models/invoice-references.d.ts +20 -1
  174. package/dist/models/invoice-totals-prepayment.d.ts +1 -1
  175. package/dist/models/invoice-totals.d.ts +10 -2
  176. package/dist/models/line-net-amount.d.ts +1 -1
  177. package/dist/models/line-total-amount.d.ts +16 -0
  178. package/dist/models/line-total-amount.js +15 -0
  179. package/dist/models/manual-rate.d.ts +1 -1
  180. package/dist/models/manual-vat-rate.d.ts +1 -1
  181. package/dist/models/missing-field.d.ts +34 -0
  182. package/dist/models/missing-field.js +15 -0
  183. package/dist/models/payee.d.ts +2 -0
  184. package/dist/models/payment-card.d.ts +18 -0
  185. package/dist/models/payment-card.js +15 -0
  186. package/dist/models/pdpcredentials.d.ts +5 -5
  187. package/dist/models/percentage.d.ts +16 -0
  188. package/dist/models/percentage.js +15 -0
  189. package/dist/models/postal-address.d.ts +3 -1
  190. package/dist/models/price-allowance-amount.d.ts +16 -0
  191. package/dist/models/price-allowance-amount.js +15 -0
  192. package/dist/models/price-basis-quantity.d.ts +16 -0
  193. package/dist/models/price-basis-quantity.js +15 -0
  194. package/dist/models/processing-options.d.ts +3 -3
  195. package/dist/models/product-characteristic.d.ts +24 -0
  196. package/dist/models/product-characteristic.js +15 -0
  197. package/dist/models/product-classification.d.ts +22 -0
  198. package/dist/models/product-classification.js +15 -0
  199. package/dist/models/quantity.d.ts +1 -1
  200. package/dist/models/recipient.d.ts +5 -1
  201. package/dist/models/rounding-amount.d.ts +16 -0
  202. package/dist/models/rounding-amount.js +15 -0
  203. package/dist/models/scheme-id.d.ts +11 -5
  204. package/dist/models/scheme-id.js +11 -5
  205. package/dist/models/search-flow-request.d.ts +7 -7
  206. package/dist/models/search-structure-request.d.ts +4 -4
  207. package/dist/models/submit-flow-request.d.ts +6 -6
  208. package/dist/models/submit-invoice-request.d.ts +13 -13
  209. package/dist/models/supplier.d.ts +10 -1
  210. package/dist/models/tax-representative.d.ts +29 -0
  211. package/dist/models/tax-representative.js +15 -0
  212. package/dist/models/taxable-amount.d.ts +1 -1
  213. package/dist/models/total-gross-amount.d.ts +1 -1
  214. package/dist/models/total-net-amount.d.ts +1 -1
  215. package/dist/models/total-vatamount.d.ts +1 -1
  216. package/dist/models/unit-net-price.d.ts +1 -1
  217. package/dist/models/validation-info.d.ts +38 -0
  218. package/dist/models/validation-info.js +15 -0
  219. package/dist/models/vat-rate.d.ts +16 -0
  220. package/dist/models/vat-rate.js +15 -0
  221. package/dist/models/vatamount.d.ts +1 -1
  222. package/dist/models/vatline.d.ts +3 -1
  223. package/dist/models/vatpoint-date-code.d.ts +20 -0
  224. package/dist/models/vatpoint-date-code.js +24 -0
  225. package/docs/AdditionalDocument.md +29 -0
  226. package/docs/AllowanceCharge.md +35 -0
  227. package/docs/AllowanceTotalAmount.md +19 -0
  228. package/docs/Amount.md +19 -0
  229. package/docs/AmountDue.md +1 -1
  230. package/docs/BaseAmount.md +19 -0
  231. package/docs/ChargeTotalAmount.md +19 -0
  232. package/docs/Contact.md +27 -0
  233. package/docs/ConvertErrorResponse.md +29 -0
  234. package/docs/ConvertPendingInputResponse.md +35 -0
  235. package/docs/ConvertResumeRequest.md +21 -0
  236. package/docs/ConvertSuccessResponse.md +39 -0
  237. package/docs/ConvertValidationFailedResponse.md +37 -0
  238. package/docs/DeliveryParty.md +27 -0
  239. package/docs/DocumentConversionApi.md +297 -0
  240. package/docs/DocumentTypeInfo.md +25 -0
  241. package/docs/ExtractionInfo.md +27 -0
  242. package/docs/FacturXInvoice.md +28 -0
  243. package/docs/{APIProfile.md → FacturXProfile.md} +2 -2
  244. package/docs/FactureElectroniqueRestApiSchemasChorusProChorusProCredentials.md +8 -8
  245. package/docs/FileInfo.md +23 -0
  246. package/docs/FilesInfo.md +23 -0
  247. package/docs/GenerateCertificateRequest.md +10 -10
  248. package/docs/GetChorusProIdRequest.md +2 -2
  249. package/docs/GetInvoiceRequest.md +2 -2
  250. package/docs/GetStructureRequest.md +4 -4
  251. package/docs/GlobalAllowanceAmount.md +1 -1
  252. package/docs/GrossUnitPrice.md +19 -0
  253. package/docs/IncomingInvoice.md +1 -1
  254. package/docs/InvoiceLine.md +48 -14
  255. package/docs/InvoiceLineAllowanceAmount.md +1 -1
  256. package/docs/InvoiceProcessingApi.md +8 -8
  257. package/docs/InvoiceReferences.md +25 -5
  258. package/docs/InvoiceTotals.md +11 -3
  259. package/docs/InvoiceTotalsPrepayment.md +1 -1
  260. package/docs/LineNetAmount.md +1 -1
  261. package/docs/LineTotalAmount.md +19 -0
  262. package/docs/ManualRate.md +1 -1
  263. package/docs/ManualVatRate.md +1 -1
  264. package/docs/MissingField.md +31 -0
  265. package/docs/PDPCredentials.md +10 -10
  266. package/docs/Payee.md +4 -0
  267. package/docs/PaymentCard.md +23 -0
  268. package/docs/Percentage.md +19 -0
  269. package/docs/PostalAddress.md +5 -1
  270. package/docs/PriceAllowanceAmount.md +19 -0
  271. package/docs/PriceBasisQuantity.md +19 -0
  272. package/docs/ProcessingOptions.md +3 -3
  273. package/docs/ProductCharacteristic.md +23 -0
  274. package/docs/ProductClassification.md +25 -0
  275. package/docs/Quantity.md +1 -1
  276. package/docs/Recipient.md +7 -1
  277. package/docs/RoundingAmount.md +19 -0
  278. package/docs/SchemeID.md +17 -5
  279. package/docs/SearchFlowRequest.md +14 -14
  280. package/docs/SearchStructureRequest.md +8 -8
  281. package/docs/SubmitFlowRequest.md +12 -12
  282. package/docs/SubmitInvoiceRequest.md +26 -26
  283. package/docs/Supplier.md +17 -1
  284. package/docs/TaxRepresentative.md +25 -0
  285. package/docs/TaxableAmount.md +1 -1
  286. package/docs/TotalGrossAmount.md +1 -1
  287. package/docs/TotalNetAmount.md +1 -1
  288. package/docs/TotalVATAmount.md +1 -1
  289. package/docs/UnitNetPrice.md +1 -1
  290. package/docs/VATAmount.md +1 -1
  291. package/docs/VATLine.md +3 -1
  292. package/docs/VATPointDateCode.md +13 -0
  293. package/docs/ValidationInfo.md +31 -0
  294. package/docs/VatRate.md +19 -0
  295. package/models/additional-document.ts +30 -0
  296. package/models/{document-type.ts → allowance-charge.ts} +25 -27
  297. package/models/allowance-total-amount.ts +22 -0
  298. package/models/amount-due.ts +1 -1
  299. package/models/amount.ts +22 -0
  300. package/models/base-amount.ts +22 -0
  301. package/models/charge-total-amount.ts +22 -0
  302. package/models/contact.ts +26 -0
  303. package/models/convert-error-response.ts +33 -0
  304. package/models/convert-pending-input-response.ts +39 -0
  305. package/models/convert-resume-request.ts +26 -0
  306. package/models/convert-success-response.ts +59 -0
  307. package/models/convert-validation-failed-response.ts +52 -0
  308. package/models/delivery-party.ts +32 -0
  309. package/models/document-type-info.ts +34 -0
  310. package/models/extraction-info.ts +38 -0
  311. package/models/factur-xinvoice.ts +29 -0
  312. package/models/factur-xprofile.ts +31 -0
  313. package/models/facture-electronique-rest-api-schemas-chorus-pro-chorus-pro-credentials.ts +4 -4
  314. package/models/file-info.ts +27 -0
  315. package/models/files-info.ts +27 -0
  316. package/models/generate-certificate-request.ts +5 -5
  317. package/models/get-chorus-pro-id-request.ts +1 -1
  318. package/models/get-invoice-request.ts +1 -1
  319. package/models/get-structure-request.ts +2 -2
  320. package/models/global-allowance-amount.ts +1 -1
  321. package/models/gross-unit-price.ts +22 -0
  322. package/models/incoming-invoice.ts +4 -4
  323. package/models/index.ts +32 -2
  324. package/models/invoice-line-allowance-amount.ts +1 -1
  325. package/models/invoice-line.ts +56 -6
  326. package/models/invoice-references.ts +20 -1
  327. package/models/invoice-totals-prepayment.ts +1 -1
  328. package/models/invoice-totals.ts +18 -2
  329. package/models/line-net-amount.ts +1 -1
  330. package/models/line-total-amount.ts +22 -0
  331. package/models/manual-rate.ts +1 -1
  332. package/models/manual-vat-rate.ts +1 -1
  333. package/models/missing-field.ts +40 -0
  334. package/models/payee.ts +2 -0
  335. package/models/payment-card.ts +24 -0
  336. package/models/pdpcredentials.ts +5 -5
  337. package/models/percentage.ts +22 -0
  338. package/models/postal-address.ts +3 -1
  339. package/models/price-allowance-amount.ts +22 -0
  340. package/models/price-basis-quantity.ts +22 -0
  341. package/models/processing-options.ts +3 -3
  342. package/models/product-characteristic.ts +30 -0
  343. package/models/product-classification.ts +28 -0
  344. package/models/quantity.ts +1 -1
  345. package/models/recipient.ts +7 -1
  346. package/models/rounding-amount.ts +22 -0
  347. package/models/scheme-id.ts +11 -5
  348. package/models/search-flow-request.ts +7 -7
  349. package/models/search-structure-request.ts +4 -4
  350. package/models/submit-flow-request.ts +6 -6
  351. package/models/submit-invoice-request.ts +13 -13
  352. package/models/supplier.ts +12 -1
  353. package/models/tax-representative.ts +37 -0
  354. package/models/taxable-amount.ts +1 -1
  355. package/models/total-gross-amount.ts +1 -1
  356. package/models/total-net-amount.ts +1 -1
  357. package/models/total-vatamount.ts +1 -1
  358. package/models/unit-net-price.ts +1 -1
  359. package/{dist/esm/models/document-type.js → models/validation-info.ts} +28 -20
  360. package/models/vat-rate.ts +22 -0
  361. package/models/vatamount.ts +1 -1
  362. package/models/vatline.ts +5 -1
  363. package/models/vatpoint-date-code.ts +30 -0
  364. package/package.json +1 -1
  365. package/docs/DocumentType.md +0 -17
@@ -0,0 +1,454 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * FactPulse REST API
5
+ * REST API for electronic invoicing in France: Factur-X, AFNOR PDP/PA, electronic signatures. ## 🎯 Main Features ### 📄 Factur-X Invoice Generation - **Formats**: XML only or PDF/A-3 with embedded XML - **Profiles**: MINIMUM, BASIC, EN16931, EXTENDED - **Standards**: EN 16931 (EU directive 2014/55), ISO 19005-3 (PDF/A-3), CII (UN/CEFACT) - **🆕 Simplified Format**: Generation from SIRET + auto-enrichment (Chorus Pro API + Business Search) ### ✅ Validation and Compliance - **XML Validation**: Schematron (45 to 210+ rules depending on profile) - **PDF Validation**: PDF/A-3, Factur-X XMP metadata, electronic signatures - **VeraPDF**: Strict PDF/A validation (146+ ISO 19005-3 rules) - **Asynchronous Processing**: Celery support for heavy validations (VeraPDF) ### 📡 AFNOR PDP/PA Integration (XP Z12-013) - **Flow Submission**: Send invoices to Partner Dematerialization Platforms - **Flow Search**: View submitted invoices - **Download**: Retrieve PDF/A-3 with XML - **Directory Service**: Company search (SIREN/SIRET) - **Multi-client**: Support for multiple PDP configs per user (stored credentials or zero-storage) ### ✍️ PDF Electronic Signature - **Standards**: PAdES-B-B, PAdES-B-T (RFC 3161 timestamping), PAdES-B-LT (long-term archival) - **eIDAS Levels**: SES (self-signed), AdES (commercial CA), QES (QTSP) - **Validation**: Cryptographic integrity and certificate verification - **Certificate Generation**: Self-signed X.509 certificates for testing ### 🔄 Asynchronous Processing - **Celery**: Asynchronous generation, validation and signing - **Polling**: Status tracking via `/tasks/{task_id}/status` - **No timeout**: Ideal for large files or heavy validations ## 🔒 Authentication All requests require a **JWT token** in the Authorization header: ``` Authorization: Bearer YOUR_JWT_TOKEN ``` ### How to obtain a JWT token? #### 🔑 Method 1: `/api/token/` API (Recommended) **URL:** `https://www.factpulse.fr/api/token/` This method is **recommended** for integration in your applications and CI/CD workflows. **Prerequisites:** Having set a password on your account **For users registered via email/password:** - You already have a password, use it directly **For users registered via OAuth (Google/GitHub):** - You must first set a password at: https://www.factpulse.fr/accounts/password/set/ - Once the password is created, you can use the API **Request example:** ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d \'{ \"username\": \"your_email@example.com\", \"password\": \"your_password\" }\' ``` **Optional `client_uid` parameter:** To select credentials for a specific client (PA/PDP, Chorus Pro, signing certificates), add `client_uid`: ```bash curl -X POST https://www.factpulse.fr/api/token/ \\ -H \"Content-Type: application/json\" \\ -d \'{ \"username\": \"your_email@example.com\", \"password\": \"your_password\", \"client_uid\": \"550e8400-e29b-41d4-a716-446655440000\" }\' ``` The `client_uid` will be included in the JWT and allow the API to automatically use: - AFNOR/PDP credentials configured for this client - Chorus Pro credentials configured for this client - Electronic signature certificates configured for this client **Response:** ```json { \"access\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\", // Access token (validity: 30 min) \"refresh\": \"eyJ0eXAiOiJKV1QiLCJhbGc...\" // Refresh token (validity: 7 days) } ``` **Advantages:** - ✅ Full automation (CI/CD, scripts) - ✅ Programmatic token management - ✅ Refresh token support for automatic access renewal - ✅ Easy integration in any language/tool #### 🖥️ Method 2: Dashboard Generation (Alternative) **URL:** https://www.factpulse.fr/dashboard/ This method is suitable for quick tests or occasional use via the graphical interface. **How it works:** - Log in to the dashboard - Use the \"Generate Test Token\" or \"Generate Production Token\" buttons - Works for **all** users (OAuth and email/password), without requiring a password **Token types:** - **Test Token**: 24h validity, 1000 calls/day quota (free) - **Production Token**: 7 days validity, quota based on your plan **Advantages:** - ✅ Quick for API testing - ✅ No password required - ✅ Simple visual interface **Disadvantages:** - ❌ Requires manual action - ❌ No refresh token - ❌ Less suited for automation ### 📚 Full Documentation For more information on authentication and API usage: https://www.factpulse.fr/documentation-api/
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ import globalAxios from 'axios';
24
+ // Some imports not used depending on template conditions
25
+ // @ts-ignore
26
+ import { DUMMY_BASE_URL, assertParamExists, setBearerAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../common';
27
+ // @ts-ignore
28
+ import { BASE_PATH, BaseAPI, operationServerMap } from '../base';
29
+ /**
30
+ * DocumentConversionApi - axios parameter creator
31
+ */
32
+ export const DocumentConversionApiAxiosParamCreator = function (configuration) {
33
+ return {
34
+ /**
35
+ * Convertit un document (PDF, DOCX, XLSX, image) en Factur-X conforme. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Extraction OCR + Classification** : Mistral OCR extrait les données et classifie le document en un seul appel 3. **Enrichissement** : Les données sont enrichies via SIRENE (SIRET → raison sociale) 4. **Validation** : Les règles Schematron sont appliquées 5. **Génération** : Le Factur-X PDF/A-3 est généré ## Réponses possibles - **200** : Conversion réussie, fichiers disponibles - **202** : Données manquantes, complétion requise - **422** : Validation échouée, corrections nécessaires - **400** : Fichier invalide - **429** : Quota dépassé
36
+ * @summary Convertir un document en Factur-X
37
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
38
+ * @param {string} [output] Format de sortie: pdf, xml, both
39
+ * @param {string | null} [callbackUrl]
40
+ * @param {*} [options] Override http request option.
41
+ * @throws {RequiredError}
42
+ */
43
+ convertDocumentApiV1ConvertPost: (file_1, output_1, callbackUrl_1, ...args_1) => __awaiter(this, [file_1, output_1, callbackUrl_1, ...args_1], void 0, function* (file, output, callbackUrl, options = {}) {
44
+ // verify required parameter 'file' is not null or undefined
45
+ assertParamExists('convertDocumentApiV1ConvertPost', 'file', file);
46
+ const localVarPath = `/api/v1/convert`;
47
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
48
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
49
+ let baseOptions;
50
+ if (configuration) {
51
+ baseOptions = configuration.baseOptions;
52
+ }
53
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
54
+ const localVarHeaderParameter = {};
55
+ const localVarQueryParameter = {};
56
+ const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)();
57
+ // authentication HTTPBearer required
58
+ // http bearer authentication required
59
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
60
+ if (file !== undefined) {
61
+ localVarFormParams.append('file', file);
62
+ }
63
+ if (output !== undefined) {
64
+ localVarFormParams.append('output', output);
65
+ }
66
+ if (callbackUrl !== undefined) {
67
+ localVarFormParams.append('callback_url', callbackUrl);
68
+ }
69
+ localVarHeaderParameter['Content-Type'] = 'multipart/form-data';
70
+ localVarHeaderParameter['Accept'] = 'application/json';
71
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
72
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
73
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
74
+ localVarRequestOptions.data = localVarFormParams;
75
+ return {
76
+ url: toPathString(localVarUrlObj),
77
+ options: localVarRequestOptions,
78
+ };
79
+ }),
80
+ /**
81
+ * Lance une conversion asynchrone via Celery. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Task Celery** : La tâche est mise en file d\'attente 3. **Callback** : Notification par webhook à la fin ## Réponses possibles - **202** : Tâche acceptée, en cours de traitement - **400** : Fichier invalide
82
+ * @summary Convertir un document en Factur-X (mode asynchrone)
83
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
84
+ * @param {string} [output] Format de sortie: pdf, xml, both
85
+ * @param {string | null} [callbackUrl]
86
+ * @param {*} [options] Override http request option.
87
+ * @throws {RequiredError}
88
+ */
89
+ convertDocumentAsyncApiV1ConvertAsyncPost: (file_1, output_1, callbackUrl_1, ...args_1) => __awaiter(this, [file_1, output_1, callbackUrl_1, ...args_1], void 0, function* (file, output, callbackUrl, options = {}) {
90
+ // verify required parameter 'file' is not null or undefined
91
+ assertParamExists('convertDocumentAsyncApiV1ConvertAsyncPost', 'file', file);
92
+ const localVarPath = `/api/v1/convert/async`;
93
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
94
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
95
+ let baseOptions;
96
+ if (configuration) {
97
+ baseOptions = configuration.baseOptions;
98
+ }
99
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
100
+ const localVarHeaderParameter = {};
101
+ const localVarQueryParameter = {};
102
+ const localVarFormParams = new ((configuration && configuration.formDataCtor) || FormData)();
103
+ // authentication HTTPBearer required
104
+ // http bearer authentication required
105
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
106
+ if (file !== undefined) {
107
+ localVarFormParams.append('file', file);
108
+ }
109
+ if (output !== undefined) {
110
+ localVarFormParams.append('output', output);
111
+ }
112
+ if (callbackUrl !== undefined) {
113
+ localVarFormParams.append('callback_url', callbackUrl);
114
+ }
115
+ localVarHeaderParameter['Content-Type'] = 'multipart/form-data';
116
+ localVarHeaderParameter['Accept'] = 'application/json';
117
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
118
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
119
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
120
+ localVarRequestOptions.data = localVarFormParams;
121
+ return {
122
+ url: toPathString(localVarUrlObj),
123
+ options: localVarRequestOptions,
124
+ };
125
+ }),
126
+ /**
127
+ * Télécharge le fichier Factur-X PDF ou XML généré. ## Fichiers disponibles - `facturx.pdf` : PDF/A-3 avec XML embarqué - `facturx.xml` : XML CII seul (Cross Industry Invoice) Les fichiers sont disponibles pendant 24 heures après génération.
128
+ * @summary Télécharger un fichier généré
129
+ * @param {string} conversionId
130
+ * @param {string} filename
131
+ * @param {*} [options] Override http request option.
132
+ * @throws {RequiredError}
133
+ */
134
+ downloadFileApiV1ConvertConversionIdDownloadFilenameGet: (conversionId_1, filename_1, ...args_1) => __awaiter(this, [conversionId_1, filename_1, ...args_1], void 0, function* (conversionId, filename, options = {}) {
135
+ // verify required parameter 'conversionId' is not null or undefined
136
+ assertParamExists('downloadFileApiV1ConvertConversionIdDownloadFilenameGet', 'conversionId', conversionId);
137
+ // verify required parameter 'filename' is not null or undefined
138
+ assertParamExists('downloadFileApiV1ConvertConversionIdDownloadFilenameGet', 'filename', filename);
139
+ const localVarPath = `/api/v1/convert/{conversion_id}/download/{filename}`
140
+ .replace(`{${"conversion_id"}}`, encodeURIComponent(String(conversionId)))
141
+ .replace(`{${"filename"}}`, encodeURIComponent(String(filename)));
142
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
143
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
144
+ let baseOptions;
145
+ if (configuration) {
146
+ baseOptions = configuration.baseOptions;
147
+ }
148
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
149
+ const localVarHeaderParameter = {};
150
+ const localVarQueryParameter = {};
151
+ // authentication HTTPBearer required
152
+ // http bearer authentication required
153
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
154
+ localVarHeaderParameter['Accept'] = 'application/json';
155
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
156
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
157
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
158
+ return {
159
+ url: toPathString(localVarUrlObj),
160
+ options: localVarRequestOptions,
161
+ };
162
+ }),
163
+ /**
164
+ * Retourne le statut actuel d\'une conversion asynchrone.
165
+ * @summary Vérifier le statut d\'une conversion
166
+ * @param {string} conversionId
167
+ * @param {*} [options] Override http request option.
168
+ * @throws {RequiredError}
169
+ */
170
+ getConversionStatusApiV1ConvertConversionIdStatusGet: (conversionId_1, ...args_1) => __awaiter(this, [conversionId_1, ...args_1], void 0, function* (conversionId, options = {}) {
171
+ // verify required parameter 'conversionId' is not null or undefined
172
+ assertParamExists('getConversionStatusApiV1ConvertConversionIdStatusGet', 'conversionId', conversionId);
173
+ const localVarPath = `/api/v1/convert/{conversion_id}/status`
174
+ .replace(`{${"conversion_id"}}`, encodeURIComponent(String(conversionId)));
175
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
176
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
177
+ let baseOptions;
178
+ if (configuration) {
179
+ baseOptions = configuration.baseOptions;
180
+ }
181
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'GET' }, baseOptions), options);
182
+ const localVarHeaderParameter = {};
183
+ const localVarQueryParameter = {};
184
+ // authentication HTTPBearer required
185
+ // http bearer authentication required
186
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
187
+ localVarHeaderParameter['Accept'] = 'application/json';
188
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
189
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
190
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
191
+ return {
192
+ url: toPathString(localVarUrlObj),
193
+ options: localVarRequestOptions,
194
+ };
195
+ }),
196
+ /**
197
+ * Reprend une conversion après complétion des données manquantes ou correction des erreurs. L\'extraction OCR est conservée, les données sont mises à jour avec les corrections, puis une nouvelle validation Schematron est effectuée.
198
+ * @summary Reprendre une conversion avec corrections
199
+ * @param {string} conversionId
200
+ * @param {ConvertResumeRequest} convertResumeRequest
201
+ * @param {*} [options] Override http request option.
202
+ * @throws {RequiredError}
203
+ */
204
+ resumeConversionApiV1ConvertConversionIdResumePost: (conversionId_1, convertResumeRequest_1, ...args_1) => __awaiter(this, [conversionId_1, convertResumeRequest_1, ...args_1], void 0, function* (conversionId, convertResumeRequest, options = {}) {
205
+ // verify required parameter 'conversionId' is not null or undefined
206
+ assertParamExists('resumeConversionApiV1ConvertConversionIdResumePost', 'conversionId', conversionId);
207
+ // verify required parameter 'convertResumeRequest' is not null or undefined
208
+ assertParamExists('resumeConversionApiV1ConvertConversionIdResumePost', 'convertResumeRequest', convertResumeRequest);
209
+ const localVarPath = `/api/v1/convert/{conversion_id}/resume`
210
+ .replace(`{${"conversion_id"}}`, encodeURIComponent(String(conversionId)));
211
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
212
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
213
+ let baseOptions;
214
+ if (configuration) {
215
+ baseOptions = configuration.baseOptions;
216
+ }
217
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
218
+ const localVarHeaderParameter = {};
219
+ const localVarQueryParameter = {};
220
+ // authentication HTTPBearer required
221
+ // http bearer authentication required
222
+ yield setBearerAuthToObject(localVarHeaderParameter, configuration);
223
+ localVarHeaderParameter['Content-Type'] = 'application/json';
224
+ localVarHeaderParameter['Accept'] = 'application/json';
225
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
226
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
227
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
228
+ localVarRequestOptions.data = serializeDataIfNeeded(convertResumeRequest, localVarRequestOptions, configuration);
229
+ return {
230
+ url: toPathString(localVarUrlObj),
231
+ options: localVarRequestOptions,
232
+ };
233
+ }),
234
+ };
235
+ };
236
+ /**
237
+ * DocumentConversionApi - functional programming interface
238
+ */
239
+ export const DocumentConversionApiFp = function (configuration) {
240
+ const localVarAxiosParamCreator = DocumentConversionApiAxiosParamCreator(configuration);
241
+ return {
242
+ /**
243
+ * Convertit un document (PDF, DOCX, XLSX, image) en Factur-X conforme. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Extraction OCR + Classification** : Mistral OCR extrait les données et classifie le document en un seul appel 3. **Enrichissement** : Les données sont enrichies via SIRENE (SIRET → raison sociale) 4. **Validation** : Les règles Schematron sont appliquées 5. **Génération** : Le Factur-X PDF/A-3 est généré ## Réponses possibles - **200** : Conversion réussie, fichiers disponibles - **202** : Données manquantes, complétion requise - **422** : Validation échouée, corrections nécessaires - **400** : Fichier invalide - **429** : Quota dépassé
244
+ * @summary Convertir un document en Factur-X
245
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
246
+ * @param {string} [output] Format de sortie: pdf, xml, both
247
+ * @param {string | null} [callbackUrl]
248
+ * @param {*} [options] Override http request option.
249
+ * @throws {RequiredError}
250
+ */
251
+ convertDocumentApiV1ConvertPost(file, output, callbackUrl, options) {
252
+ return __awaiter(this, void 0, void 0, function* () {
253
+ var _a, _b, _c;
254
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.convertDocumentApiV1ConvertPost(file, output, callbackUrl, options);
255
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
256
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['DocumentConversionApi.convertDocumentApiV1ConvertPost']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
257
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
258
+ });
259
+ },
260
+ /**
261
+ * Lance une conversion asynchrone via Celery. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Task Celery** : La tâche est mise en file d\'attente 3. **Callback** : Notification par webhook à la fin ## Réponses possibles - **202** : Tâche acceptée, en cours de traitement - **400** : Fichier invalide
262
+ * @summary Convertir un document en Factur-X (mode asynchrone)
263
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
264
+ * @param {string} [output] Format de sortie: pdf, xml, both
265
+ * @param {string | null} [callbackUrl]
266
+ * @param {*} [options] Override http request option.
267
+ * @throws {RequiredError}
268
+ */
269
+ convertDocumentAsyncApiV1ConvertAsyncPost(file, output, callbackUrl, options) {
270
+ return __awaiter(this, void 0, void 0, function* () {
271
+ var _a, _b, _c;
272
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.convertDocumentAsyncApiV1ConvertAsyncPost(file, output, callbackUrl, options);
273
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
274
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['DocumentConversionApi.convertDocumentAsyncApiV1ConvertAsyncPost']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
275
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
276
+ });
277
+ },
278
+ /**
279
+ * Télécharge le fichier Factur-X PDF ou XML généré. ## Fichiers disponibles - `facturx.pdf` : PDF/A-3 avec XML embarqué - `facturx.xml` : XML CII seul (Cross Industry Invoice) Les fichiers sont disponibles pendant 24 heures après génération.
280
+ * @summary Télécharger un fichier généré
281
+ * @param {string} conversionId
282
+ * @param {string} filename
283
+ * @param {*} [options] Override http request option.
284
+ * @throws {RequiredError}
285
+ */
286
+ downloadFileApiV1ConvertConversionIdDownloadFilenameGet(conversionId, filename, options) {
287
+ return __awaiter(this, void 0, void 0, function* () {
288
+ var _a, _b, _c;
289
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.downloadFileApiV1ConvertConversionIdDownloadFilenameGet(conversionId, filename, options);
290
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
291
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['DocumentConversionApi.downloadFileApiV1ConvertConversionIdDownloadFilenameGet']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
292
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
293
+ });
294
+ },
295
+ /**
296
+ * Retourne le statut actuel d\'une conversion asynchrone.
297
+ * @summary Vérifier le statut d\'une conversion
298
+ * @param {string} conversionId
299
+ * @param {*} [options] Override http request option.
300
+ * @throws {RequiredError}
301
+ */
302
+ getConversionStatusApiV1ConvertConversionIdStatusGet(conversionId, options) {
303
+ return __awaiter(this, void 0, void 0, function* () {
304
+ var _a, _b, _c;
305
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.getConversionStatusApiV1ConvertConversionIdStatusGet(conversionId, options);
306
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
307
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['DocumentConversionApi.getConversionStatusApiV1ConvertConversionIdStatusGet']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
308
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
309
+ });
310
+ },
311
+ /**
312
+ * Reprend une conversion après complétion des données manquantes ou correction des erreurs. L\'extraction OCR est conservée, les données sont mises à jour avec les corrections, puis une nouvelle validation Schematron est effectuée.
313
+ * @summary Reprendre une conversion avec corrections
314
+ * @param {string} conversionId
315
+ * @param {ConvertResumeRequest} convertResumeRequest
316
+ * @param {*} [options] Override http request option.
317
+ * @throws {RequiredError}
318
+ */
319
+ resumeConversionApiV1ConvertConversionIdResumePost(conversionId, convertResumeRequest, options) {
320
+ return __awaiter(this, void 0, void 0, function* () {
321
+ var _a, _b, _c;
322
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.resumeConversionApiV1ConvertConversionIdResumePost(conversionId, convertResumeRequest, options);
323
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
324
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['DocumentConversionApi.resumeConversionApiV1ConvertConversionIdResumePost']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
325
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
326
+ });
327
+ },
328
+ };
329
+ };
330
+ /**
331
+ * DocumentConversionApi - factory interface
332
+ */
333
+ export const DocumentConversionApiFactory = function (configuration, basePath, axios) {
334
+ const localVarFp = DocumentConversionApiFp(configuration);
335
+ return {
336
+ /**
337
+ * Convertit un document (PDF, DOCX, XLSX, image) en Factur-X conforme. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Extraction OCR + Classification** : Mistral OCR extrait les données et classifie le document en un seul appel 3. **Enrichissement** : Les données sont enrichies via SIRENE (SIRET → raison sociale) 4. **Validation** : Les règles Schematron sont appliquées 5. **Génération** : Le Factur-X PDF/A-3 est généré ## Réponses possibles - **200** : Conversion réussie, fichiers disponibles - **202** : Données manquantes, complétion requise - **422** : Validation échouée, corrections nécessaires - **400** : Fichier invalide - **429** : Quota dépassé
338
+ * @summary Convertir un document en Factur-X
339
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
340
+ * @param {string} [output] Format de sortie: pdf, xml, both
341
+ * @param {string | null} [callbackUrl]
342
+ * @param {*} [options] Override http request option.
343
+ * @throws {RequiredError}
344
+ */
345
+ convertDocumentApiV1ConvertPost(file, output, callbackUrl, options) {
346
+ return localVarFp.convertDocumentApiV1ConvertPost(file, output, callbackUrl, options).then((request) => request(axios, basePath));
347
+ },
348
+ /**
349
+ * Lance une conversion asynchrone via Celery. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Task Celery** : La tâche est mise en file d\'attente 3. **Callback** : Notification par webhook à la fin ## Réponses possibles - **202** : Tâche acceptée, en cours de traitement - **400** : Fichier invalide
350
+ * @summary Convertir un document en Factur-X (mode asynchrone)
351
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
352
+ * @param {string} [output] Format de sortie: pdf, xml, both
353
+ * @param {string | null} [callbackUrl]
354
+ * @param {*} [options] Override http request option.
355
+ * @throws {RequiredError}
356
+ */
357
+ convertDocumentAsyncApiV1ConvertAsyncPost(file, output, callbackUrl, options) {
358
+ return localVarFp.convertDocumentAsyncApiV1ConvertAsyncPost(file, output, callbackUrl, options).then((request) => request(axios, basePath));
359
+ },
360
+ /**
361
+ * Télécharge le fichier Factur-X PDF ou XML généré. ## Fichiers disponibles - `facturx.pdf` : PDF/A-3 avec XML embarqué - `facturx.xml` : XML CII seul (Cross Industry Invoice) Les fichiers sont disponibles pendant 24 heures après génération.
362
+ * @summary Télécharger un fichier généré
363
+ * @param {string} conversionId
364
+ * @param {string} filename
365
+ * @param {*} [options] Override http request option.
366
+ * @throws {RequiredError}
367
+ */
368
+ downloadFileApiV1ConvertConversionIdDownloadFilenameGet(conversionId, filename, options) {
369
+ return localVarFp.downloadFileApiV1ConvertConversionIdDownloadFilenameGet(conversionId, filename, options).then((request) => request(axios, basePath));
370
+ },
371
+ /**
372
+ * Retourne le statut actuel d\'une conversion asynchrone.
373
+ * @summary Vérifier le statut d\'une conversion
374
+ * @param {string} conversionId
375
+ * @param {*} [options] Override http request option.
376
+ * @throws {RequiredError}
377
+ */
378
+ getConversionStatusApiV1ConvertConversionIdStatusGet(conversionId, options) {
379
+ return localVarFp.getConversionStatusApiV1ConvertConversionIdStatusGet(conversionId, options).then((request) => request(axios, basePath));
380
+ },
381
+ /**
382
+ * Reprend une conversion après complétion des données manquantes ou correction des erreurs. L\'extraction OCR est conservée, les données sont mises à jour avec les corrections, puis une nouvelle validation Schematron est effectuée.
383
+ * @summary Reprendre une conversion avec corrections
384
+ * @param {string} conversionId
385
+ * @param {ConvertResumeRequest} convertResumeRequest
386
+ * @param {*} [options] Override http request option.
387
+ * @throws {RequiredError}
388
+ */
389
+ resumeConversionApiV1ConvertConversionIdResumePost(conversionId, convertResumeRequest, options) {
390
+ return localVarFp.resumeConversionApiV1ConvertConversionIdResumePost(conversionId, convertResumeRequest, options).then((request) => request(axios, basePath));
391
+ },
392
+ };
393
+ };
394
+ /**
395
+ * DocumentConversionApi - object-oriented interface
396
+ */
397
+ export class DocumentConversionApi extends BaseAPI {
398
+ /**
399
+ * Convertit un document (PDF, DOCX, XLSX, image) en Factur-X conforme. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Extraction OCR + Classification** : Mistral OCR extrait les données et classifie le document en un seul appel 3. **Enrichissement** : Les données sont enrichies via SIRENE (SIRET → raison sociale) 4. **Validation** : Les règles Schematron sont appliquées 5. **Génération** : Le Factur-X PDF/A-3 est généré ## Réponses possibles - **200** : Conversion réussie, fichiers disponibles - **202** : Données manquantes, complétion requise - **422** : Validation échouée, corrections nécessaires - **400** : Fichier invalide - **429** : Quota dépassé
400
+ * @summary Convertir un document en Factur-X
401
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
402
+ * @param {string} [output] Format de sortie: pdf, xml, both
403
+ * @param {string | null} [callbackUrl]
404
+ * @param {*} [options] Override http request option.
405
+ * @throws {RequiredError}
406
+ */
407
+ convertDocumentApiV1ConvertPost(file, output, callbackUrl, options) {
408
+ return DocumentConversionApiFp(this.configuration).convertDocumentApiV1ConvertPost(file, output, callbackUrl, options).then((request) => request(this.axios, this.basePath));
409
+ }
410
+ /**
411
+ * Lance une conversion asynchrone via Celery. ## Workflow 1. **Upload** : Le document est envoyé en multipart/form-data 2. **Task Celery** : La tâche est mise en file d\'attente 3. **Callback** : Notification par webhook à la fin ## Réponses possibles - **202** : Tâche acceptée, en cours de traitement - **400** : Fichier invalide
412
+ * @summary Convertir un document en Factur-X (mode asynchrone)
413
+ * @param {File} file Document à convertir (PDF, DOCX, XLSX, JPG, PNG)
414
+ * @param {string} [output] Format de sortie: pdf, xml, both
415
+ * @param {string | null} [callbackUrl]
416
+ * @param {*} [options] Override http request option.
417
+ * @throws {RequiredError}
418
+ */
419
+ convertDocumentAsyncApiV1ConvertAsyncPost(file, output, callbackUrl, options) {
420
+ return DocumentConversionApiFp(this.configuration).convertDocumentAsyncApiV1ConvertAsyncPost(file, output, callbackUrl, options).then((request) => request(this.axios, this.basePath));
421
+ }
422
+ /**
423
+ * Télécharge le fichier Factur-X PDF ou XML généré. ## Fichiers disponibles - `facturx.pdf` : PDF/A-3 avec XML embarqué - `facturx.xml` : XML CII seul (Cross Industry Invoice) Les fichiers sont disponibles pendant 24 heures après génération.
424
+ * @summary Télécharger un fichier généré
425
+ * @param {string} conversionId
426
+ * @param {string} filename
427
+ * @param {*} [options] Override http request option.
428
+ * @throws {RequiredError}
429
+ */
430
+ downloadFileApiV1ConvertConversionIdDownloadFilenameGet(conversionId, filename, options) {
431
+ return DocumentConversionApiFp(this.configuration).downloadFileApiV1ConvertConversionIdDownloadFilenameGet(conversionId, filename, options).then((request) => request(this.axios, this.basePath));
432
+ }
433
+ /**
434
+ * Retourne le statut actuel d\'une conversion asynchrone.
435
+ * @summary Vérifier le statut d\'une conversion
436
+ * @param {string} conversionId
437
+ * @param {*} [options] Override http request option.
438
+ * @throws {RequiredError}
439
+ */
440
+ getConversionStatusApiV1ConvertConversionIdStatusGet(conversionId, options) {
441
+ return DocumentConversionApiFp(this.configuration).getConversionStatusApiV1ConvertConversionIdStatusGet(conversionId, options).then((request) => request(this.axios, this.basePath));
442
+ }
443
+ /**
444
+ * Reprend une conversion après complétion des données manquantes ou correction des erreurs. L\'extraction OCR est conservée, les données sont mises à jour avec les corrections, puis une nouvelle validation Schematron est effectuée.
445
+ * @summary Reprendre une conversion avec corrections
446
+ * @param {string} conversionId
447
+ * @param {ConvertResumeRequest} convertResumeRequest
448
+ * @param {*} [options] Override http request option.
449
+ * @throws {RequiredError}
450
+ */
451
+ resumeConversionApiV1ConvertConversionIdResumePost(conversionId, convertResumeRequest, options) {
452
+ return DocumentConversionApiFp(this.configuration).resumeConversionApiV1ConvertConversionIdResumePost(conversionId, convertResumeRequest, options).then((request) => request(this.axios, this.basePath));
453
+ }
454
+ }