pi-spi-sdk 0.1.3 → 0.2.0

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 (218) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/README.md +23 -1
  3. package/dist/chunk-7W56NW2S.mjs +2066 -0
  4. package/dist/generated-FM5EVVHH.mjs +84 -0
  5. package/dist/index.cjs +4754 -0
  6. package/dist/index.d.cts +4940 -0
  7. package/dist/index.d.ts +4937 -12
  8. package/dist/index.mjs +2359 -0
  9. package/dist/index.umd.js +2 -0
  10. package/dist/qrcode/index.cjs +757 -0
  11. package/dist/qrcode/index.d.cts +68 -0
  12. package/dist/qrcode/index.d.ts +20 -14
  13. package/dist/qrcode/index.mjs +712 -0
  14. package/package.json +24 -8
  15. package/dist/config.d.ts +0 -35
  16. package/dist/config.js +0 -5
  17. package/dist/error-handler.d.ts +0 -7
  18. package/dist/error-handler.js +0 -55
  19. package/dist/errors.d.ts +0 -25
  20. package/dist/errors.js +0 -48
  21. package/dist/examples.d.ts +0 -8
  22. package/dist/examples.js +0 -93
  23. package/dist/generated/core/ApiError.d.ts +0 -10
  24. package/dist/generated/core/ApiError.js +0 -15
  25. package/dist/generated/core/ApiRequestOptions.d.ts +0 -13
  26. package/dist/generated/core/ApiRequestOptions.js +0 -2
  27. package/dist/generated/core/ApiResult.d.ts +0 -7
  28. package/dist/generated/core/ApiResult.js +0 -2
  29. package/dist/generated/core/CancelablePromise.d.ts +0 -20
  30. package/dist/generated/core/CancelablePromise.js +0 -116
  31. package/dist/generated/core/OpenAPI.d.ts +0 -16
  32. package/dist/generated/core/OpenAPI.js +0 -14
  33. package/dist/generated/core/request.d.ts +0 -34
  34. package/dist/generated/core/request.js +0 -292
  35. package/dist/generated/index.d.ts +0 -78
  36. package/dist/generated/index.js +0 -86
  37. package/dist/generated/models/AliasCreationReponse.d.ts +0 -22
  38. package/dist/generated/models/AliasCreationReponse.js +0 -2
  39. package/dist/generated/models/AliasCreationRequest.d.ts +0 -11
  40. package/dist/generated/models/AliasCreationRequest.js +0 -2
  41. package/dist/generated/models/AliasReponseListe.d.ts +0 -26
  42. package/dist/generated/models/AliasReponseListe.js +0 -2
  43. package/dist/generated/models/AnnulationStatut.d.ts +0 -13
  44. package/dist/generated/models/AnnulationStatut.js +0 -21
  45. package/dist/generated/models/Champs.d.ts +0 -1
  46. package/dist/generated/models/Champs.js +0 -2
  47. package/dist/generated/models/CompteOperation.d.ts +0 -72
  48. package/dist/generated/models/CompteOperation.js +0 -27
  49. package/dist/generated/models/CompteOperationListe.d.ts +0 -18
  50. package/dist/generated/models/CompteOperationListe.js +0 -2
  51. package/dist/generated/models/CompteSolde.d.ts +0 -129
  52. package/dist/generated/models/CompteSolde.js +0 -74
  53. package/dist/generated/models/CompteTransfertIntraReponse.d.ts +0 -33
  54. package/dist/generated/models/CompteTransfertIntraReponse.js +0 -15
  55. package/dist/generated/models/CompteTransfertIntraRequest.d.ts +0 -9
  56. package/dist/generated/models/CompteTransfertIntraRequest.js +0 -2
  57. package/dist/generated/models/DemandePaiementConfirmationAnnulationRaison.d.ts +0 -14
  58. package/dist/generated/models/DemandePaiementConfirmationAnnulationRaison.js +0 -22
  59. package/dist/generated/models/DemandePaiementConfirmationReponse.d.ts +0 -41
  60. package/dist/generated/models/DemandePaiementConfirmationReponse.js +0 -16
  61. package/dist/generated/models/DemandePaiementConfirmationRequest.d.ts +0 -3
  62. package/dist/generated/models/DemandePaiementConfirmationRequest.js +0 -2
  63. package/dist/generated/models/DemandePaiementConfirmationRequestAccepter.d.ts +0 -9
  64. package/dist/generated/models/DemandePaiementConfirmationRequestAccepter.js +0 -2
  65. package/dist/generated/models/DemandePaiementConfirmationRequestRejeter.d.ts +0 -9
  66. package/dist/generated/models/DemandePaiementConfirmationRequestRejeter.js +0 -2
  67. package/dist/generated/models/DemandePaiementConsultationReponse.d.ts +0 -151
  68. package/dist/generated/models/DemandePaiementConsultationReponse.js +0 -30
  69. package/dist/generated/models/DemandePaiementEnMasseConfirmationRequest.d.ts +0 -3
  70. package/dist/generated/models/DemandePaiementEnMasseConfirmationRequest.js +0 -2
  71. package/dist/generated/models/DemandePaiementEnMasseConfirmationRequestAccepter.d.ts +0 -9
  72. package/dist/generated/models/DemandePaiementEnMasseConfirmationRequestAccepter.js +0 -2
  73. package/dist/generated/models/DemandePaiementEnMasseConfirmationRequestRejeter.d.ts +0 -9
  74. package/dist/generated/models/DemandePaiementEnMasseConfirmationRequestRejeter.js +0 -2
  75. package/dist/generated/models/DemandePaiementEnMasseRequest.d.ts +0 -74
  76. package/dist/generated/models/DemandePaiementEnMasseRequest.js +0 -2
  77. package/dist/generated/models/DemandePaiementEnMasseStatutReponse.d.ts +0 -98
  78. package/dist/generated/models/DemandePaiementEnMasseStatutReponse.js +0 -23
  79. package/dist/generated/models/DemandePaiementListe.d.ts +0 -26
  80. package/dist/generated/models/DemandePaiementListe.js +0 -2
  81. package/dist/generated/models/DemandePaiementListeItem.d.ts +0 -163
  82. package/dist/generated/models/DemandePaiementListeItem.js +0 -30
  83. package/dist/generated/models/DemandePaiementReponse.d.ts +0 -129
  84. package/dist/generated/models/DemandePaiementReponse.js +0 -2
  85. package/dist/generated/models/DemandePaiementReponseRequest.d.ts +0 -21
  86. package/dist/generated/models/DemandePaiementReponseRequest.js +0 -14
  87. package/dist/generated/models/DemandePaiementRequest.d.ts +0 -98
  88. package/dist/generated/models/DemandePaiementRequest.js +0 -10
  89. package/dist/generated/models/DemandePaiementRequestBase.d.ts +0 -42
  90. package/dist/generated/models/DemandePaiementRequestBase.js +0 -2
  91. package/dist/generated/models/DemandePaiementRequestCategorie.d.ts +0 -12
  92. package/dist/generated/models/DemandePaiementRequestCategorie.js +0 -20
  93. package/dist/generated/models/DemandePaiementStatut.d.ts +0 -13
  94. package/dist/generated/models/DemandePaiementStatut.js +0 -21
  95. package/dist/generated/models/DemandePaiementStatutRaison.d.ts +0 -46
  96. package/dist/generated/models/DemandePaiementStatutRaison.js +0 -54
  97. package/dist/generated/models/ListeMeta.d.ts +0 -14
  98. package/dist/generated/models/ListeMeta.js +0 -2
  99. package/dist/generated/models/Paiement.d.ts +0 -156
  100. package/dist/generated/models/Paiement.js +0 -31
  101. package/dist/generated/models/PaiementAnnulationMotif.d.ts +0 -17
  102. package/dist/generated/models/PaiementAnnulationMotif.js +0 -25
  103. package/dist/generated/models/PaiementAnnulationReponseRequest.d.ts +0 -11
  104. package/dist/generated/models/PaiementAnnulationReponseRequest.js +0 -2
  105. package/dist/generated/models/PaiementAnnulationReponseRequestAccepter.d.ts +0 -9
  106. package/dist/generated/models/PaiementAnnulationReponseRequestAccepter.js +0 -2
  107. package/dist/generated/models/PaiementAnnulationReponseRequestRejeter.d.ts +0 -9
  108. package/dist/generated/models/PaiementAnnulationReponseRequestRejeter.js +0 -2
  109. package/dist/generated/models/PaiementAnnulationRequest.d.ts +0 -4
  110. package/dist/generated/models/PaiementAnnulationRequest.js +0 -2
  111. package/dist/generated/models/PaiementAnnulationStatutRaison.d.ts +0 -21
  112. package/dist/generated/models/PaiementAnnulationStatutRaison.js +0 -29
  113. package/dist/generated/models/PaiementEnMasseConfirmationRequest.d.ts +0 -3
  114. package/dist/generated/models/PaiementEnMasseConfirmationRequest.js +0 -2
  115. package/dist/generated/models/PaiementEnMasseConfirmationRequestAccepter.d.ts +0 -9
  116. package/dist/generated/models/PaiementEnMasseConfirmationRequestAccepter.js +0 -2
  117. package/dist/generated/models/PaiementEnMasseConfirmationRequestRejeter.d.ts +0 -9
  118. package/dist/generated/models/PaiementEnMasseConfirmationRequestRejeter.js +0 -2
  119. package/dist/generated/models/PaiementEnMasseReponseStatut.d.ts +0 -97
  120. package/dist/generated/models/PaiementEnMasseReponseStatut.js +0 -23
  121. package/dist/generated/models/PaiementEnMasseRequest.d.ts +0 -54
  122. package/dist/generated/models/PaiementEnMasseRequest.js +0 -2
  123. package/dist/generated/models/PaiementImmediatConfirmationReponse.d.ts +0 -31
  124. package/dist/generated/models/PaiementImmediatConfirmationReponse.js +0 -10
  125. package/dist/generated/models/PaiementImmediatConfirmationRequest.d.ts +0 -3
  126. package/dist/generated/models/PaiementImmediatConfirmationRequest.js +0 -2
  127. package/dist/generated/models/PaiementImmediatConfirmationRequestAccepter.d.ts +0 -9
  128. package/dist/generated/models/PaiementImmediatConfirmationRequestAccepter.js +0 -2
  129. package/dist/generated/models/PaiementImmediatConfirmationRequestRejeter.d.ts +0 -9
  130. package/dist/generated/models/PaiementImmediatConfirmationRequestRejeter.js +0 -2
  131. package/dist/generated/models/PaiementImmediatReponse.d.ts +0 -98
  132. package/dist/generated/models/PaiementImmediatReponse.js +0 -10
  133. package/dist/generated/models/PaiementImmediatRequest.d.ts +0 -13
  134. package/dist/generated/models/PaiementImmediatRequest.js +0 -2
  135. package/dist/generated/models/PaiementListe.d.ts +0 -6
  136. package/dist/generated/models/PaiementListe.js +0 -2
  137. package/dist/generated/models/PaiementRequest.d.ts +0 -33
  138. package/dist/generated/models/PaiementRequest.js +0 -2
  139. package/dist/generated/models/PaiementStatut.d.ts +0 -13
  140. package/dist/generated/models/PaiementStatut.js +0 -21
  141. package/dist/generated/models/PaiementStatutRaison.d.ts +0 -56
  142. package/dist/generated/models/PaiementStatutRaison.js +0 -64
  143. package/dist/generated/models/Problem7807.d.ts +0 -31
  144. package/dist/generated/models/Problem7807.js +0 -2
  145. package/dist/generated/models/RefDocType.d.ts +0 -38
  146. package/dist/generated/models/RefDocType.js +0 -46
  147. package/dist/generated/models/RetourStatut.d.ts +0 -13
  148. package/dist/generated/models/RetourStatut.js +0 -21
  149. package/dist/generated/models/RetourStatutRaison.d.ts +0 -25
  150. package/dist/generated/models/RetourStatutRaison.js +0 -33
  151. package/dist/generated/models/WebhookCreationRequest.d.ts +0 -14
  152. package/dist/generated/models/WebhookCreationRequest.js +0 -2
  153. package/dist/generated/models/WebhookCreationResponse.d.ts +0 -12
  154. package/dist/generated/models/WebhookCreationResponse.js +0 -2
  155. package/dist/generated/models/WebhookData.d.ts +0 -8
  156. package/dist/generated/models/WebhookData.js +0 -2
  157. package/dist/generated/models/WebhookEvent.d.ts +0 -191
  158. package/dist/generated/models/WebhookEvent.js +0 -45
  159. package/dist/generated/models/WebhookEventsList.d.ts +0 -13
  160. package/dist/generated/models/WebhookEventsList.js +0 -2
  161. package/dist/generated/models/WebhookList.d.ts +0 -13
  162. package/dist/generated/models/WebhookList.js +0 -2
  163. package/dist/generated/models/WebhookModificationRequest.d.ts +0 -4
  164. package/dist/generated/models/WebhookModificationRequest.js +0 -2
  165. package/dist/generated/models/WebhooksEvents.d.ts +0 -12
  166. package/dist/generated/models/WebhooksEvents.js +0 -20
  167. package/dist/generated/services/AliasService.d.ts +0 -63
  168. package/dist/generated/services/AliasService.js +0 -88
  169. package/dist/generated/services/ComptesService.d.ts +0 -64
  170. package/dist/generated/services/ComptesService.js +0 -90
  171. package/dist/generated/services/DemandeAnnulationService.d.ts +0 -84
  172. package/dist/generated/services/DemandeAnnulationService.js +0 -103
  173. package/dist/generated/services/DemandesDePaiementEnMasseService.d.ts +0 -161
  174. package/dist/generated/services/DemandesDePaiementEnMasseService.js +0 -193
  175. package/dist/generated/services/DemandesDePaiementService.d.ts +0 -123
  176. package/dist/generated/services/DemandesDePaiementService.js +0 -165
  177. package/dist/generated/services/NotificationService.d.ts +0 -80
  178. package/dist/generated/services/NotificationService.js +0 -136
  179. package/dist/generated/services/PaiementEnMasseService.d.ts +0 -159
  180. package/dist/generated/services/PaiementEnMasseService.js +0 -191
  181. package/dist/generated/services/PaiementImmediatService.d.ts +0 -135
  182. package/dist/generated/services/PaiementImmediatService.js +0 -180
  183. package/dist/generated/services/RetoursdeFondsService.d.ts +0 -28
  184. package/dist/generated/services/RetoursdeFondsService.js +0 -41
  185. package/dist/index.js +0 -72
  186. package/dist/qrcode/index.js +0 -541
  187. package/dist/qrcode/logo.d.ts +0 -3
  188. package/dist/qrcode/logo.js +0 -142
  189. package/dist/query-builder.d.ts +0 -91
  190. package/dist/query-builder.js +0 -191
  191. package/dist/sdk.d.ts +0 -104
  192. package/dist/sdk.js +0 -147
  193. package/dist/services/alias.d.ts +0 -76
  194. package/dist/services/alias.js +0 -80
  195. package/dist/services/base.d.ts +0 -20
  196. package/dist/services/base.js +0 -67
  197. package/dist/services/comptes.d.ts +0 -149
  198. package/dist/services/comptes.js +0 -162
  199. package/dist/services/demandes-annulation.d.ts +0 -97
  200. package/dist/services/demandes-annulation.js +0 -108
  201. package/dist/services/demandes-paiement-en-masse.d.ts +0 -33
  202. package/dist/services/demandes-paiement-en-masse.js +0 -44
  203. package/dist/services/demandes-paiement.d.ts +0 -148
  204. package/dist/services/demandes-paiement.js +0 -153
  205. package/dist/services/paiements-en-masse.d.ts +0 -152
  206. package/dist/services/paiements-en-masse.js +0 -157
  207. package/dist/services/paiements.d.ts +0 -135
  208. package/dist/services/paiements.js +0 -139
  209. package/dist/services/retours-fonds.d.ts +0 -94
  210. package/dist/services/retours-fonds.js +0 -104
  211. package/dist/services/webhooks.d.ts +0 -131
  212. package/dist/services/webhooks.js +0 -146
  213. package/dist/types/alias.d.ts +0 -64
  214. package/dist/types/alias.js +0 -78
  215. package/dist/utils/constants.d.ts +0 -93
  216. package/dist/utils/constants.js +0 -96
  217. package/dist/utils/index.d.ts +0 -60
  218. package/dist/utils/index.js +0 -126
@@ -1,135 +0,0 @@
1
- import type { Paiement } from '../models/Paiement';
2
- import type { PaiementImmediatConfirmationReponse } from '../models/PaiementImmediatConfirmationReponse';
3
- import type { PaiementImmediatConfirmationRequest } from '../models/PaiementImmediatConfirmationRequest';
4
- import type { PaiementImmediatReponse } from '../models/PaiementImmediatReponse';
5
- import type { PaiementImmediatRequest } from '../models/PaiementImmediatRequest';
6
- import type { PaiementListe } from '../models/PaiementListe';
7
- import type { CancelablePromise } from '../core/CancelablePromise';
8
- export declare class PaiementImmediatService {
9
- /**
10
- * Envoyer un paiement
11
- * Ce point de terminaison permet au business d'effectuer des paiements.
12
- *
13
- * Le destinataire du paiement est identifié par son alias de compte.
14
- *
15
- * Le business peut définir le champ `confirmation` à `true` pour demander une validation en deux étapes : le PSP retournera d'abord le résultat de la recherche d'alias (avec le nom et le pays du bénéficiaire), puis attendra une confirmation explicite avant d'exécuter le paiement via l'endpoint `PUT /paiements/{txId}/confirmations`.
16
- *
17
- * **Timeout de confirmation** : Si le business demande une confirmation, il dispose de **24 heures** pour confirmer. Passé ce délai, la demande expire automatiquement.
18
- *
19
- * @returns PaiementImmediatReponse Paiement traité. Le champ `statut` indique le résultat :
20
- * - `INITIE` : En attente de confirmation (si `confirmation: true`)
21
- * - `ENVOYE` : Paiement envoyé avec succès (si `confirmation: false`)
22
- * - `REJETE` : Paiement rejeté. Le champ `statutRaison` contient le code d'erreur :
23
- * - `DU03` : txId dupliqué (déjà utilisé)
24
- * - `BE23` : Alias bénéficiaire invalide
25
- * - Autres codes ISO 20022
26
- *
27
- * @throws ApiError
28
- */
29
- static paiementCreer({ requestBody, }: {
30
- /**
31
- * Pour effectuer le transfert, le client doit fournir l'alias du destinataire ainsi que le montant du transfert à effectuer.
32
- */
33
- requestBody: PaiementImmediatRequest;
34
- }): CancelablePromise<PaiementImmediatReponse>;
35
- /**
36
- * Lister les paiements
37
- * Ce point de terminaison permet de lister les paiements effectués par le client.
38
- * @returns PaiementListe Succès de l'opération
39
- * @throws ApiError
40
- */
41
- static paiementLister({ payeAlias, payeCompte, payeurAlias, payeurCompte, dateEnvoi, dateIrrevocabilite, statut, categorie, montantAchat, montantRetrait, motif, refDocType, instructionId, txId, annulationStatut, annulationMotif, retourStatut, page, size, sort, fields, }: {
42
- payeAlias?: string;
43
- payeCompte?: string;
44
- payeurAlias?: string;
45
- payeurCompte?: string;
46
- dateEnvoi?: string;
47
- dateIrrevocabilite?: string;
48
- statut?: 'INITIE' | 'ENVOYE' | 'IRREVOCABLE' | 'REJETE';
49
- categorie?: '631' | '000' | '400' | '733' | '300' | '999' | '500' | '521' | '401';
50
- montantAchat?: number;
51
- montantRetrait?: number;
52
- motif?: string;
53
- refDocType?: string;
54
- instructionId?: string;
55
- txId?: string;
56
- annulationStatut?: string;
57
- annulationMotif?: string;
58
- retourStatut?: string;
59
- page?: string;
60
- size?: string;
61
- sort?: string;
62
- fields?: any;
63
- }): CancelablePromise<PaiementListe>;
64
- /**
65
- * Détails d'un paiement
66
- * Cet point de terminaison permet de consulter les details d'un paiement.
67
- *
68
- * @returns Paiement Opération effectuée avec succès
69
- * @throws ApiError
70
- */
71
- static paiementRecuperer({ txId, }: {
72
- /**
73
- * L'identifiant de la transaction dans le SI du client
74
- */
75
- txId: string;
76
- }): CancelablePromise<Paiement>;
77
- /**
78
- * Confirmer le paiement
79
- * Ce point de terminaison permet d'envoyer la confirmation de l'envoi d'un paiement immédiat
80
- * après vérification du nom et du pays du bénéficiaire.
81
- *
82
- * **Idempotence** : Cet endpoint est idempotent.
83
- * - Premier appel avec `decision: true` → Lance le paiement, retourne `200 OK {statut: "ENVOYE"}`
84
- * - Appels suivants avec `decision: true` → Retourne `200 OK` avec l'état actuel (ENVOYE, IRREVOCABLE, ou REJETE) - idempotent
85
- * - Premier appel avec `decision: false` → Annule, retourne `200 OK {statut: "ANNULE"}`
86
- * - Appels suivants avec `decision: false` → Retourne `200 OK {statut: "ANNULE"}` (idempotent)
87
- * - `decision: true` après `decision: false` → Retourne `403 Forbidden` (déjà annulé)
88
- * - `decision: false` après `decision: true` → Retourne `403 Forbidden` (déjà confirmé)
89
- *
90
- * **Timeout** : La confirmation doit être envoyée dans les **24 heures** suivant la création de la demande. Passé ce délai, la demande expire automatiquement et ne peut plus être confirmée.
91
- *
92
- * **Changement de décision** : Une fois une décision prise, elle est définitive. Impossible de confirmer après avoir annulé, et vice-versa.
93
- *
94
- * @returns PaiementImmediatConfirmationReponse Paiement en cours d'envoi
95
- * @throws ApiError
96
- */
97
- static paiementConfirmer({ txId, requestBody, }: {
98
- /**
99
- * L'identifiant de la transaction dans le SI du payé
100
- */
101
- txId: string;
102
- /**
103
- * Le client envoie oui ou non s'il confirme l'envoi du paiement.
104
- */
105
- requestBody: PaiementImmediatConfirmationRequest;
106
- }): CancelablePromise<PaiementImmediatConfirmationReponse>;
107
- /**
108
- * Vérifier un paiement
109
- * Ce point de terminaison permet de vérifier la réception d’un paiement à partir de l’`end2endId`.
110
- *
111
- * Dans certains cas, le **client business** peut ne pas avoir reçu la notification de paiement.
112
- * Le **client payeur** peut alors lui communiquer l’`end2endId` afin qu’il puisse vérifier manuellement le statut du paiement.
113
- *
114
- * Le **participant** doit, dans ce cas, vérifier dans sa base de données et s'il ne trouve pas le paiement, il doit interroger l’endpoint de PI-SPI permettant de **récupérer le statut d’un paiement**, puis **retourner ce statut** dans sa réponse.
115
- *
116
- * Le statut retourné doit être soit :
117
- * - `IRREVOCABLE` (paiement irrévocable), ou
118
- * - `REJETE` (paiement rejeté).
119
- *
120
- * Un transfert **ne peut pas** être signalé comme « en cours de traitement » dans ce contexte.
121
- *
122
- * ⚠️ **Remarques :**
123
- * - La vérification ne doit concerner que les paiements réalisés depuis **moins de 3 mois (90 jours)** afin de garantir la disponibilité de la réponse.
124
- * - La garantie de réponse n’est assurée qu’à partir de **20 secondes après l’envoi du transfert**.
125
- *
126
- * @returns Paiement Opération effectuée avec succès
127
- * @throws ApiError
128
- */
129
- static paiementVerifier({ end2EndId, }: {
130
- /**
131
- * L'identifiant de bout en bout de la transaction
132
- */
133
- end2EndId: string;
134
- }): CancelablePromise<Paiement>;
135
- }
@@ -1,180 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PaiementImmediatService = void 0;
4
- const OpenAPI_1 = require("../core/OpenAPI");
5
- const request_1 = require("../core/request");
6
- class PaiementImmediatService {
7
- /**
8
- * Envoyer un paiement
9
- * Ce point de terminaison permet au business d'effectuer des paiements.
10
- *
11
- * Le destinataire du paiement est identifié par son alias de compte.
12
- *
13
- * Le business peut définir le champ `confirmation` à `true` pour demander une validation en deux étapes : le PSP retournera d'abord le résultat de la recherche d'alias (avec le nom et le pays du bénéficiaire), puis attendra une confirmation explicite avant d'exécuter le paiement via l'endpoint `PUT /paiements/{txId}/confirmations`.
14
- *
15
- * **Timeout de confirmation** : Si le business demande une confirmation, il dispose de **24 heures** pour confirmer. Passé ce délai, la demande expire automatiquement.
16
- *
17
- * @returns PaiementImmediatReponse Paiement traité. Le champ `statut` indique le résultat :
18
- * - `INITIE` : En attente de confirmation (si `confirmation: true`)
19
- * - `ENVOYE` : Paiement envoyé avec succès (si `confirmation: false`)
20
- * - `REJETE` : Paiement rejeté. Le champ `statutRaison` contient le code d'erreur :
21
- * - `DU03` : txId dupliqué (déjà utilisé)
22
- * - `BE23` : Alias bénéficiaire invalide
23
- * - Autres codes ISO 20022
24
- *
25
- * @throws ApiError
26
- */
27
- static paiementCreer({ requestBody, }) {
28
- return (0, request_1.request)(OpenAPI_1.OpenAPI, {
29
- method: 'POST',
30
- url: '/paiements',
31
- body: requestBody,
32
- mediaType: 'application/json',
33
- errors: {
34
- 400: `La requête est malformée`,
35
- 401: `Autorisations manquantes`,
36
- 403: `Interdiction d'effectuer le paiement (erreurs métier non-retriables)`,
37
- 429: `Erreur inattendue`,
38
- 503: `Erreur inattendue du serveur`,
39
- },
40
- });
41
- }
42
- /**
43
- * Lister les paiements
44
- * Ce point de terminaison permet de lister les paiements effectués par le client.
45
- * @returns PaiementListe Succès de l'opération
46
- * @throws ApiError
47
- */
48
- static paiementLister({ payeAlias, payeCompte, payeurAlias, payeurCompte, dateEnvoi, dateIrrevocabilite, statut, categorie, montantAchat, montantRetrait, motif, refDocType, instructionId, txId, annulationStatut, annulationMotif, retourStatut, page, size, sort, fields, }) {
49
- return (0, request_1.request)(OpenAPI_1.OpenAPI, {
50
- method: 'GET',
51
- url: '/paiements',
52
- query: {
53
- 'payeAlias': payeAlias,
54
- 'payeCompte': payeCompte,
55
- 'payeurAlias': payeurAlias,
56
- 'payeurCompte': payeurCompte,
57
- 'dateEnvoi': dateEnvoi,
58
- 'dateIrrevocabilite': dateIrrevocabilite,
59
- 'statut': statut,
60
- 'categorie': categorie,
61
- 'montantAchat': montantAchat,
62
- 'montantRetrait': montantRetrait,
63
- 'motif': motif,
64
- 'refDocType': refDocType,
65
- 'instructionId': instructionId,
66
- 'txId': txId,
67
- 'annulationStatut': annulationStatut,
68
- 'annulationMotif': annulationMotif,
69
- 'retourStatut': retourStatut,
70
- 'page': page,
71
- 'size': size,
72
- 'sort': sort,
73
- 'fields': fields,
74
- },
75
- errors: {
76
- 401: `Autorisations manquantes`,
77
- 429: `Erreur inattendue`,
78
- 503: `Erreur inattendue du serveur`,
79
- },
80
- });
81
- }
82
- /**
83
- * Détails d'un paiement
84
- * Cet point de terminaison permet de consulter les details d'un paiement.
85
- *
86
- * @returns Paiement Opération effectuée avec succès
87
- * @throws ApiError
88
- */
89
- static paiementRecuperer({ txId, }) {
90
- return (0, request_1.request)(OpenAPI_1.OpenAPI, {
91
- method: 'GET',
92
- url: '/paiements/{txId}',
93
- path: {
94
- 'txId': txId,
95
- },
96
- errors: {
97
- 401: `Autorisations manquantes`,
98
- 404: `La ressource n'existe pas dans le système`,
99
- 429: `Erreur inattendue`,
100
- 503: `Erreur inattendue du serveur`,
101
- },
102
- });
103
- }
104
- /**
105
- * Confirmer le paiement
106
- * Ce point de terminaison permet d'envoyer la confirmation de l'envoi d'un paiement immédiat
107
- * après vérification du nom et du pays du bénéficiaire.
108
- *
109
- * **Idempotence** : Cet endpoint est idempotent.
110
- * - Premier appel avec `decision: true` → Lance le paiement, retourne `200 OK {statut: "ENVOYE"}`
111
- * - Appels suivants avec `decision: true` → Retourne `200 OK` avec l'état actuel (ENVOYE, IRREVOCABLE, ou REJETE) - idempotent
112
- * - Premier appel avec `decision: false` → Annule, retourne `200 OK {statut: "ANNULE"}`
113
- * - Appels suivants avec `decision: false` → Retourne `200 OK {statut: "ANNULE"}` (idempotent)
114
- * - `decision: true` après `decision: false` → Retourne `403 Forbidden` (déjà annulé)
115
- * - `decision: false` après `decision: true` → Retourne `403 Forbidden` (déjà confirmé)
116
- *
117
- * **Timeout** : La confirmation doit être envoyée dans les **24 heures** suivant la création de la demande. Passé ce délai, la demande expire automatiquement et ne peut plus être confirmée.
118
- *
119
- * **Changement de décision** : Une fois une décision prise, elle est définitive. Impossible de confirmer après avoir annulé, et vice-versa.
120
- *
121
- * @returns PaiementImmediatConfirmationReponse Paiement en cours d'envoi
122
- * @throws ApiError
123
- */
124
- static paiementConfirmer({ txId, requestBody, }) {
125
- return (0, request_1.request)(OpenAPI_1.OpenAPI, {
126
- method: 'PUT',
127
- url: '/paiements/{txId}/confirmations',
128
- path: {
129
- 'txId': txId,
130
- },
131
- body: requestBody,
132
- mediaType: 'application/json',
133
- errors: {
134
- 401: `Autorisations manquantes`,
135
- 403: `Opération interdite`,
136
- 404: `La ressource n'existe pas dans le système`,
137
- 429: `Erreur inattendue`,
138
- 503: `Erreur inattendue du serveur`,
139
- },
140
- });
141
- }
142
- /**
143
- * Vérifier un paiement
144
- * Ce point de terminaison permet de vérifier la réception d’un paiement à partir de l’`end2endId`.
145
- *
146
- * Dans certains cas, le **client business** peut ne pas avoir reçu la notification de paiement.
147
- * Le **client payeur** peut alors lui communiquer l’`end2endId` afin qu’il puisse vérifier manuellement le statut du paiement.
148
- *
149
- * Le **participant** doit, dans ce cas, vérifier dans sa base de données et s'il ne trouve pas le paiement, il doit interroger l’endpoint de PI-SPI permettant de **récupérer le statut d’un paiement**, puis **retourner ce statut** dans sa réponse.
150
- *
151
- * Le statut retourné doit être soit :
152
- * - `IRREVOCABLE` (paiement irrévocable), ou
153
- * - `REJETE` (paiement rejeté).
154
- *
155
- * Un transfert **ne peut pas** être signalé comme « en cours de traitement » dans ce contexte.
156
- *
157
- * ⚠️ **Remarques :**
158
- * - La vérification ne doit concerner que les paiements réalisés depuis **moins de 3 mois (90 jours)** afin de garantir la disponibilité de la réponse.
159
- * - La garantie de réponse n’est assurée qu’à partir de **20 secondes après l’envoi du transfert**.
160
- *
161
- * @returns Paiement Opération effectuée avec succès
162
- * @throws ApiError
163
- */
164
- static paiementVerifier({ end2EndId, }) {
165
- return (0, request_1.request)(OpenAPI_1.OpenAPI, {
166
- method: 'GET',
167
- url: '/paiements/{end2endId}/statuts',
168
- path: {
169
- 'end2endId': end2EndId,
170
- },
171
- errors: {
172
- 401: `Autorisations manquantes`,
173
- 404: `Ce paiement n'a pas été trouvé`,
174
- 429: `Erreur inattendue`,
175
- 503: `Erreur inattendue du serveur`,
176
- },
177
- });
178
- }
179
- }
180
- exports.PaiementImmediatService = PaiementImmediatService;
@@ -1,28 +0,0 @@
1
- import type { Paiement } from '../models/Paiement';
2
- import type { CancelablePromise } from '../core/CancelablePromise';
3
- export declare class RetoursdeFondsService {
4
- /**
5
- * Retourner les fonds
6
- * Ce point de terminaison permet au business de retourner les fonds d'un paiement reçu.
7
- *
8
- * **Idempotence** : Cet endpoint est idempotent. Plusieurs appels avec le même `end2endId` produiront le même résultat.
9
- * Si le retour de fonds a déjà été envoyé et irrévocable, le champ `retourStatut` de la réponse sera `IRREVOCABLE`.
10
- * Si le retour de fonds a été envoyé et rejeté, le retour de fonds sera envoyé à nouveau.
11
- * Si le retour de fonds est en cours d'envoi, le champ `retourStatut` de la réponse sera `INITIE`.
12
- *
13
- * **Notifications webhook** : Après envoi du retour de fonds, si le business a souscrit au service de webhook, il recevra :
14
- * - Une notification `RETOUR_ENVOYE` en cas de succès du retour de fonds
15
- * - Une notification `RETOUR_REJETE` en cas de rejet de la demande
16
- *
17
- * **Vérification du statut** : Pour obtenir le statut d'un retour de fonds envoyé, vous pouvez invoquer l'endpoint `GET /paiements/{end2endId}` et le champ `retourStatut` de la réponse indiquera l'état du retour de fonds.
18
- *
19
- * @returns Paiement Retour de fonds enregistré avec succès
20
- * @throws ApiError
21
- */
22
- static retourFondsEnvoyer({ end2EndId, }: {
23
- /**
24
- * L'identifiant unique de bout en bout de la transaction
25
- */
26
- end2EndId: string;
27
- }): CancelablePromise<Paiement>;
28
- }
@@ -1,41 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RetoursdeFondsService = void 0;
4
- const OpenAPI_1 = require("../core/OpenAPI");
5
- const request_1 = require("../core/request");
6
- class RetoursdeFondsService {
7
- /**
8
- * Retourner les fonds
9
- * Ce point de terminaison permet au business de retourner les fonds d'un paiement reçu.
10
- *
11
- * **Idempotence** : Cet endpoint est idempotent. Plusieurs appels avec le même `end2endId` produiront le même résultat.
12
- * Si le retour de fonds a déjà été envoyé et irrévocable, le champ `retourStatut` de la réponse sera `IRREVOCABLE`.
13
- * Si le retour de fonds a été envoyé et rejeté, le retour de fonds sera envoyé à nouveau.
14
- * Si le retour de fonds est en cours d'envoi, le champ `retourStatut` de la réponse sera `INITIE`.
15
- *
16
- * **Notifications webhook** : Après envoi du retour de fonds, si le business a souscrit au service de webhook, il recevra :
17
- * - Une notification `RETOUR_ENVOYE` en cas de succès du retour de fonds
18
- * - Une notification `RETOUR_REJETE` en cas de rejet de la demande
19
- *
20
- * **Vérification du statut** : Pour obtenir le statut d'un retour de fonds envoyé, vous pouvez invoquer l'endpoint `GET /paiements/{end2endId}` et le champ `retourStatut` de la réponse indiquera l'état du retour de fonds.
21
- *
22
- * @returns Paiement Retour de fonds enregistré avec succès
23
- * @throws ApiError
24
- */
25
- static retourFondsEnvoyer({ end2EndId, }) {
26
- return (0, request_1.request)(OpenAPI_1.OpenAPI, {
27
- method: 'PUT',
28
- url: '/paiements/{end2endId}/retours',
29
- path: {
30
- 'end2endId': end2EndId,
31
- },
32
- errors: {
33
- 401: `Autorisations manquantes`,
34
- 403: `Interdiction d'effectuer le retour de fonds`,
35
- 429: `Erreur inattendue`,
36
- 503: `Erreur inattendue du serveur`,
37
- },
38
- });
39
- }
40
- }
41
- exports.RetoursdeFondsService = RetoursdeFondsService;
package/dist/index.js DELETED
@@ -1,72 +0,0 @@
1
- "use strict";
2
- /**
3
- * Main entry point for PI-SPI SDK
4
- *
5
- * @module pi-spi-sdk
6
- */
7
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
- if (k2 === undefined) k2 = k;
9
- var desc = Object.getOwnPropertyDescriptor(m, k);
10
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
- desc = { enumerable: true, get: function() { return m[k]; } };
12
- }
13
- Object.defineProperty(o, k2, desc);
14
- }) : (function(o, m, k, k2) {
15
- if (k2 === undefined) k2 = k;
16
- o[k2] = m[k];
17
- }));
18
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.WEBHOOK_EVENTS = exports.DEFAULT_LIMITS = exports.CURRENCY = exports.UEMOA_COUNTRIES = exports.CLIENT_TYPE = exports.ACCOUNT_TYPE = exports.ACCOUNT_STATUS = exports.PAYMENT_STATUS = exports.PI_SPI_ENDPOINTS = exports.retryWithBackoff = exports.sleep = exports.getCountryFromAccount = exports.isValidPhoneNumber = exports.isValidShidAlias = exports.isValidAccountNumber = exports.centimesToXof = exports.xofToCentimes = exports.formatAmount = exports.getAvailableAliasTypes = exports.isValidAliasType = exports.ALIAS_TYPES = exports.AliasType = exports.handleApiError = exports.QueryBuilder = exports.PiSpiRateLimitError = exports.PiSpiNotFoundError = exports.PiSpiAuthError = exports.PiSpiValidationError = exports.PiSpiError = exports.PiSpiSDK = void 0;
23
- // Export main SDK class
24
- var sdk_1 = require("./sdk");
25
- Object.defineProperty(exports, "PiSpiSDK", { enumerable: true, get: function () { return sdk_1.PiSpiSDK; } });
26
- // Export QR Code types and utilities
27
- __exportStar(require("./qrcode"), exports);
28
- // Export error classes
29
- var errors_1 = require("./errors");
30
- Object.defineProperty(exports, "PiSpiError", { enumerable: true, get: function () { return errors_1.PiSpiError; } });
31
- Object.defineProperty(exports, "PiSpiValidationError", { enumerable: true, get: function () { return errors_1.PiSpiValidationError; } });
32
- Object.defineProperty(exports, "PiSpiAuthError", { enumerable: true, get: function () { return errors_1.PiSpiAuthError; } });
33
- Object.defineProperty(exports, "PiSpiNotFoundError", { enumerable: true, get: function () { return errors_1.PiSpiNotFoundError; } });
34
- Object.defineProperty(exports, "PiSpiRateLimitError", { enumerable: true, get: function () { return errors_1.PiSpiRateLimitError; } });
35
- // Export query builder
36
- var query_builder_1 = require("./query-builder");
37
- Object.defineProperty(exports, "QueryBuilder", { enumerable: true, get: function () { return query_builder_1.QueryBuilder; } });
38
- // Export error handler for advanced use cases
39
- var error_handler_1 = require("./error-handler");
40
- Object.defineProperty(exports, "handleApiError", { enumerable: true, get: function () { return error_handler_1.handleApiError; } });
41
- // Export alias types and utilities
42
- var alias_1 = require("./types/alias");
43
- Object.defineProperty(exports, "AliasType", { enumerable: true, get: function () { return alias_1.AliasType; } });
44
- Object.defineProperty(exports, "ALIAS_TYPES", { enumerable: true, get: function () { return alias_1.ALIAS_TYPES; } });
45
- Object.defineProperty(exports, "isValidAliasType", { enumerable: true, get: function () { return alias_1.isValidAliasType; } });
46
- Object.defineProperty(exports, "getAvailableAliasTypes", { enumerable: true, get: function () { return alias_1.getAvailableAliasTypes; } });
47
- // Export utility functions
48
- var utils_1 = require("./utils");
49
- Object.defineProperty(exports, "formatAmount", { enumerable: true, get: function () { return utils_1.formatAmount; } });
50
- Object.defineProperty(exports, "xofToCentimes", { enumerable: true, get: function () { return utils_1.xofToCentimes; } });
51
- Object.defineProperty(exports, "centimesToXof", { enumerable: true, get: function () { return utils_1.centimesToXof; } });
52
- Object.defineProperty(exports, "isValidAccountNumber", { enumerable: true, get: function () { return utils_1.isValidAccountNumber; } });
53
- Object.defineProperty(exports, "isValidShidAlias", { enumerable: true, get: function () { return utils_1.isValidShidAlias; } });
54
- Object.defineProperty(exports, "isValidPhoneNumber", { enumerable: true, get: function () { return utils_1.isValidPhoneNumber; } });
55
- Object.defineProperty(exports, "getCountryFromAccount", { enumerable: true, get: function () { return utils_1.getCountryFromAccount; } });
56
- Object.defineProperty(exports, "sleep", { enumerable: true, get: function () { return utils_1.sleep; } });
57
- Object.defineProperty(exports, "retryWithBackoff", { enumerable: true, get: function () { return utils_1.retryWithBackoff; } });
58
- // Export constants
59
- var constants_1 = require("./utils/constants");
60
- Object.defineProperty(exports, "PI_SPI_ENDPOINTS", { enumerable: true, get: function () { return constants_1.PI_SPI_ENDPOINTS; } });
61
- Object.defineProperty(exports, "PAYMENT_STATUS", { enumerable: true, get: function () { return constants_1.PAYMENT_STATUS; } });
62
- Object.defineProperty(exports, "ACCOUNT_STATUS", { enumerable: true, get: function () { return constants_1.ACCOUNT_STATUS; } });
63
- Object.defineProperty(exports, "ACCOUNT_TYPE", { enumerable: true, get: function () { return constants_1.ACCOUNT_TYPE; } });
64
- Object.defineProperty(exports, "CLIENT_TYPE", { enumerable: true, get: function () { return constants_1.CLIENT_TYPE; } });
65
- Object.defineProperty(exports, "UEMOA_COUNTRIES", { enumerable: true, get: function () { return constants_1.UEMOA_COUNTRIES; } });
66
- Object.defineProperty(exports, "CURRENCY", { enumerable: true, get: function () { return constants_1.CURRENCY; } });
67
- Object.defineProperty(exports, "DEFAULT_LIMITS", { enumerable: true, get: function () { return constants_1.DEFAULT_LIMITS; } });
68
- Object.defineProperty(exports, "WEBHOOK_EVENTS", { enumerable: true, get: function () { return constants_1.WEBHOOK_EVENTS; } });
69
- // Note: ALIAS_TYPES is exported from './types/alias' above
70
- // Re-export generated types and services (available after running generate)
71
- // These will be available once the OpenAPI codegen is run
72
- __exportStar(require("./generated"), exports);