tupay 0.9.0 → 0.11.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.
- package/dist/cjs/errors.d.ts +36 -0
- package/dist/cjs/errors.d.ts.map +1 -1
- package/dist/cjs/errors.js +49 -19
- package/dist/cjs/errors.js.map +1 -1
- package/dist/cjs/index.d.ts +38 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +47 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/resources/checkout-sessions.d.ts +85 -0
- package/dist/cjs/resources/checkout-sessions.d.ts.map +1 -0
- package/dist/cjs/resources/checkout-sessions.js +69 -0
- package/dist/cjs/resources/checkout-sessions.js.map +1 -0
- package/dist/cjs/resources/customers.d.ts +80 -0
- package/dist/cjs/resources/customers.d.ts.map +1 -0
- package/dist/cjs/resources/customers.js +77 -0
- package/dist/cjs/resources/customers.js.map +1 -0
- package/dist/cjs/resources/payment-intents.d.ts +27 -0
- package/dist/cjs/resources/payment-intents.d.ts.map +1 -1
- package/dist/cjs/resources/payment-intents.js.map +1 -1
- package/dist/cjs/resources/payment-links.d.ts +26 -1
- package/dist/cjs/resources/payment-links.d.ts.map +1 -1
- package/dist/cjs/resources/payment-links.js.map +1 -1
- package/dist/cjs/resources/payment-methods.d.ts +76 -0
- package/dist/cjs/resources/payment-methods.d.ts.map +1 -0
- package/dist/cjs/resources/payment-methods.js +77 -0
- package/dist/cjs/resources/payment-methods.js.map +1 -0
- package/dist/cjs/resources/prices.d.ts +73 -0
- package/dist/cjs/resources/prices.d.ts.map +1 -0
- package/dist/cjs/resources/prices.js +78 -0
- package/dist/cjs/resources/prices.js.map +1 -0
- package/dist/cjs/resources/products.d.ts +56 -0
- package/dist/cjs/resources/products.d.ts.map +1 -0
- package/dist/cjs/resources/products.js +70 -0
- package/dist/cjs/resources/products.js.map +1 -0
- package/dist/cjs/resources/receipts.d.ts +40 -0
- package/dist/cjs/resources/receipts.d.ts.map +1 -0
- package/dist/cjs/resources/receipts.js +49 -0
- package/dist/cjs/resources/receipts.js.map +1 -0
- package/dist/cjs/resources/setup-intents.d.ts +46 -0
- package/dist/cjs/resources/setup-intents.d.ts.map +1 -0
- package/dist/cjs/resources/setup-intents.js +62 -0
- package/dist/cjs/resources/setup-intents.js.map +1 -0
- package/dist/cjs/resources/subscriptions.d.ts +55 -0
- package/dist/cjs/resources/subscriptions.d.ts.map +1 -0
- package/dist/cjs/resources/subscriptions.js +61 -0
- package/dist/cjs/resources/subscriptions.js.map +1 -0
- package/dist/cjs/resources/transactions.d.ts +7 -0
- package/dist/cjs/resources/transactions.d.ts.map +1 -1
- package/dist/cjs/resources/transactions.js +1 -0
- package/dist/cjs/resources/transactions.js.map +1 -1
- package/dist/cjs/types.d.ts +351 -0
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/esm/errors.d.ts +36 -0
- package/dist/esm/errors.d.ts.map +1 -1
- package/dist/esm/errors.js +47 -18
- package/dist/esm/errors.js.map +1 -1
- package/dist/esm/index.d.ts +38 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +38 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/resources/checkout-sessions.d.ts +85 -0
- package/dist/esm/resources/checkout-sessions.d.ts.map +1 -0
- package/dist/esm/resources/checkout-sessions.js +65 -0
- package/dist/esm/resources/checkout-sessions.js.map +1 -0
- package/dist/esm/resources/customers.d.ts +80 -0
- package/dist/esm/resources/customers.d.ts.map +1 -0
- package/dist/esm/resources/customers.js +73 -0
- package/dist/esm/resources/customers.js.map +1 -0
- package/dist/esm/resources/payment-intents.d.ts +27 -0
- package/dist/esm/resources/payment-intents.d.ts.map +1 -1
- package/dist/esm/resources/payment-intents.js.map +1 -1
- package/dist/esm/resources/payment-links.d.ts +26 -1
- package/dist/esm/resources/payment-links.d.ts.map +1 -1
- package/dist/esm/resources/payment-links.js.map +1 -1
- package/dist/esm/resources/payment-methods.d.ts +76 -0
- package/dist/esm/resources/payment-methods.d.ts.map +1 -0
- package/dist/esm/resources/payment-methods.js +73 -0
- package/dist/esm/resources/payment-methods.js.map +1 -0
- package/dist/esm/resources/prices.d.ts +73 -0
- package/dist/esm/resources/prices.d.ts.map +1 -0
- package/dist/esm/resources/prices.js +74 -0
- package/dist/esm/resources/prices.js.map +1 -0
- package/dist/esm/resources/products.d.ts +56 -0
- package/dist/esm/resources/products.d.ts.map +1 -0
- package/dist/esm/resources/products.js +66 -0
- package/dist/esm/resources/products.js.map +1 -0
- package/dist/esm/resources/receipts.d.ts +40 -0
- package/dist/esm/resources/receipts.d.ts.map +1 -0
- package/dist/esm/resources/receipts.js +45 -0
- package/dist/esm/resources/receipts.js.map +1 -0
- package/dist/esm/resources/setup-intents.d.ts +46 -0
- package/dist/esm/resources/setup-intents.d.ts.map +1 -0
- package/dist/esm/resources/setup-intents.js +58 -0
- package/dist/esm/resources/setup-intents.js.map +1 -0
- package/dist/esm/resources/subscriptions.d.ts +55 -0
- package/dist/esm/resources/subscriptions.d.ts.map +1 -0
- package/dist/esm/resources/subscriptions.js +57 -0
- package/dist/esm/resources/subscriptions.js.map +1 -0
- package/dist/esm/resources/transactions.d.ts +7 -0
- package/dist/esm/resources/transactions.d.ts.map +1 -1
- package/dist/esm/resources/transactions.js +1 -0
- package/dist/esm/resources/transactions.js.map +1 -1
- package/dist/esm/types.d.ts +351 -0
- package/dist/esm/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cjs/types.d.ts
CHANGED
|
@@ -23,6 +23,32 @@ export interface Transaction {
|
|
|
23
23
|
status: TransactionStatus;
|
|
24
24
|
paymentIntentId: string;
|
|
25
25
|
paymentLinkId: string | null;
|
|
26
|
+
/** Carte enregistrée débitée, `null` si le porteur a saisi la sienne. */
|
|
27
|
+
paymentMethodId: string | null;
|
|
28
|
+
paymentMethod?: PaymentMethod;
|
|
29
|
+
/** Le porteur n'était pas devant son écran. */
|
|
30
|
+
offSession: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Sur un échec : la raison, en code machine stable puis en français.
|
|
33
|
+
*
|
|
34
|
+
* ⚠️ `authentication_required` n'est **pas** un refus.
|
|
35
|
+
*/
|
|
36
|
+
failureCode: FailureCode | null;
|
|
37
|
+
failureMessage: string | null;
|
|
38
|
+
/**
|
|
39
|
+
* Client rattaché, `null` pour un encaissement de passage.
|
|
40
|
+
*
|
|
41
|
+
* `expand: ['customer']` ajoute l'objet complet sous `customer`, sans
|
|
42
|
+
* retirer cet identifiant.
|
|
43
|
+
*/
|
|
44
|
+
customerId: string | null;
|
|
45
|
+
/**
|
|
46
|
+
* Présent uniquement si vous avez demandé `expand: ['customer']`.
|
|
47
|
+
*
|
|
48
|
+
* Peut porter `deleted: true` : un paiement passé continue de désigner
|
|
49
|
+
* un client depuis supprimé, et votre historique ne se réécrit pas.
|
|
50
|
+
*/
|
|
51
|
+
customer?: Customer;
|
|
26
52
|
livemode: boolean;
|
|
27
53
|
/**
|
|
28
54
|
* Cumul remboursé. **C'est ce champ qui fait foi**, pas `status` :
|
|
@@ -51,17 +77,342 @@ export interface PaymentLink {
|
|
|
51
77
|
/** URL publique à transmettre au client. */
|
|
52
78
|
url: string;
|
|
53
79
|
returnUrl: string | null;
|
|
80
|
+
/**
|
|
81
|
+
* Tarif dont ce lien hérite, `null` pour un montant libre.
|
|
82
|
+
*
|
|
83
|
+
* `expand: ['price']` le développe sous `price`. `amountXpf` reste
|
|
84
|
+
* servi : si vous le lisez déjà, vous n'avez rien à changer.
|
|
85
|
+
*/
|
|
86
|
+
priceId: string | null;
|
|
87
|
+
price?: Price;
|
|
54
88
|
metadata: Record<string, string>;
|
|
55
89
|
active: boolean;
|
|
56
90
|
livemode: boolean;
|
|
57
91
|
createdAt: string;
|
|
58
92
|
updatedAt: string;
|
|
59
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* Une fiche du carnet d'adresses du marchand.
|
|
96
|
+
*
|
|
97
|
+
* Tous les champs d'identité sont facultatifs : un commerçant de
|
|
98
|
+
* comptoir ne connaît parfois qu'un prénom.
|
|
99
|
+
*/
|
|
100
|
+
export interface Customer {
|
|
101
|
+
id: string;
|
|
102
|
+
object: 'customer';
|
|
103
|
+
/**
|
|
104
|
+
* Secondes Unix. Même instant que `createdAt`, exprimé autrement.
|
|
105
|
+
*
|
|
106
|
+
* C'est le champ CANONIQUE de l'enveloppe : les ressources le portent
|
|
107
|
+
* à l'identique. `createdAt` reste servi au minimum douze mois, puis
|
|
108
|
+
* sera retiré par une version d'API datée.
|
|
109
|
+
*/
|
|
110
|
+
created: number;
|
|
111
|
+
email: string | null;
|
|
112
|
+
name: string | null;
|
|
113
|
+
phone: string | null;
|
|
114
|
+
metadata: Record<string, string>;
|
|
115
|
+
/**
|
|
116
|
+
* Vrai après `customers.del()`. **Toujours présent**, y compris à
|
|
117
|
+
* `false` : une ressource a une seule forme, et distinguer « absent »
|
|
118
|
+
* de « faux » est un piège inutile.
|
|
119
|
+
*
|
|
120
|
+
* Un client supprimé reste lisible et garde ses données. Il quitte la
|
|
121
|
+
* liste et refuse la modification, rien de plus.
|
|
122
|
+
*/
|
|
123
|
+
deleted: boolean;
|
|
124
|
+
livemode: boolean;
|
|
125
|
+
createdAt: string;
|
|
126
|
+
updatedAt: string;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Une carte enregistrée.
|
|
130
|
+
*
|
|
131
|
+
* ⚠️ **Cette forme est le périmètre PCI-DSS.** Elle ne porte que des
|
|
132
|
+
* attributs d'affichage : ni numéro, ni cryptogramme, ni titulaire — ni
|
|
133
|
+
* même le jeton du prestataire, qui ne sort jamais de chez Tupay.
|
|
134
|
+
*/
|
|
135
|
+
export interface PaymentMethod {
|
|
136
|
+
id: string;
|
|
137
|
+
object: 'payment_method';
|
|
138
|
+
/** Secondes Unix. Même instant que `createdAt`. */
|
|
139
|
+
created: number;
|
|
140
|
+
/** Client rattaché. `expand: ['customer']` le développe sous `customer`. */
|
|
141
|
+
customerId: string;
|
|
142
|
+
customer?: Customer;
|
|
143
|
+
/** `visa`, `mastercard`, `amex`… tel que le prestataire le nomme. */
|
|
144
|
+
brand: string;
|
|
145
|
+
/** Les quatre derniers chiffres. Jamais plus. */
|
|
146
|
+
last4: string;
|
|
147
|
+
expMonth: number;
|
|
148
|
+
expYear: number;
|
|
149
|
+
/**
|
|
150
|
+
* Utilisé quand un paiement ne précise aucun moyen. **Toujours
|
|
151
|
+
* présent**, y compris à `false`.
|
|
152
|
+
*/
|
|
153
|
+
default: boolean;
|
|
154
|
+
/**
|
|
155
|
+
* Vrai après `del()`. Le moyen n'est plus utilisable, mais reste
|
|
156
|
+
* lisible et garde ses attributs d'affichage : vos paiements passés le
|
|
157
|
+
* désignent.
|
|
158
|
+
*/
|
|
159
|
+
detached: boolean;
|
|
160
|
+
metadata: Record<string, string>;
|
|
161
|
+
livemode: boolean;
|
|
162
|
+
createdAt: string;
|
|
163
|
+
updatedAt: string;
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Les raisons d'échec d'un enregistrement ou d'un débit.
|
|
167
|
+
*
|
|
168
|
+
* ⚠️ `authentication_required` n'est **pas** un refus : la banque exige
|
|
169
|
+
* une authentification forte que le porteur n'a pas menée à son terme.
|
|
170
|
+
* Rejouer n'y changera rien — ramenez-le devant son écran.
|
|
171
|
+
*/
|
|
172
|
+
export type FailureCode = 'card_declined' | 'expired_card' | 'incorrect_cvc' | 'insufficient_funds' | 'processing_error' | 'authentication_required';
|
|
173
|
+
/**
|
|
174
|
+
* Une intention d'ENREGISTREMENT de carte.
|
|
175
|
+
*
|
|
176
|
+
* Elle ne porte aucun montant, et n'en acceptera jamais : aucun débit ne
|
|
177
|
+
* peut venir de cet objet.
|
|
178
|
+
*/
|
|
179
|
+
export interface SetupIntent {
|
|
180
|
+
id: string;
|
|
181
|
+
object: 'setup_intent';
|
|
182
|
+
/** Secondes Unix. Même instant que `createdAt`. */
|
|
183
|
+
created: number;
|
|
184
|
+
customerId: string;
|
|
185
|
+
customer?: Customer;
|
|
186
|
+
status: 'pending' | 'succeeded' | 'failed' | 'canceled';
|
|
187
|
+
/** Le moyen créé quand l'enregistrement aboutit, `null` avant. */
|
|
188
|
+
paymentMethodId: string | null;
|
|
189
|
+
payment_method?: PaymentMethod;
|
|
190
|
+
/** Code machine STABLE. C'est lui qu'on teste, jamais le message. */
|
|
191
|
+
failureCode: FailureCode | null;
|
|
192
|
+
/** Phrase française, montrable telle quelle au porteur. */
|
|
193
|
+
failureMessage: string | null;
|
|
194
|
+
metadata: Record<string, string>;
|
|
195
|
+
livemode: boolean;
|
|
196
|
+
createdAt: string;
|
|
197
|
+
updatedAt: string;
|
|
198
|
+
}
|
|
199
|
+
/** Ce que rend `setupIntents.create()` — le seul endroit où le secret sort. */
|
|
200
|
+
export interface SetupIntentWithSecret extends SetupIntent {
|
|
201
|
+
/**
|
|
202
|
+
* À transmettre au navigateur du porteur pour qu'il y saisisse sa
|
|
203
|
+
* carte, chez le prestataire. **Servi une seule fois.**
|
|
204
|
+
*/
|
|
205
|
+
clientSecret: string;
|
|
206
|
+
}
|
|
207
|
+
export type RecurringInterval = 'day' | 'week' | 'month' | 'year';
|
|
208
|
+
/**
|
|
209
|
+
* Un prix attaché à un article.
|
|
210
|
+
*
|
|
211
|
+
* ⚠️ **Immuable dès sa création** : montant, devise, périodicité et
|
|
212
|
+
* article ne changent pas. Pour changer un prix, créez-en un nouveau et
|
|
213
|
+
* désactivez l'ancien.
|
|
214
|
+
*/
|
|
215
|
+
/** Où en est l'envoi d'un reçu. */
|
|
216
|
+
export type ReceiptStatus = 'pending' | 'succeeded' | 'failed' | 'exhausted';
|
|
217
|
+
/**
|
|
218
|
+
* La trace d'un reçu envoyé à votre client.
|
|
219
|
+
*
|
|
220
|
+
* Le sujet et le corps de l'email ne sont pas rendus : le reçu s'adresse
|
|
221
|
+
* à votre client, cet objet vous dit ce qui lui est arrivé.
|
|
222
|
+
*/
|
|
223
|
+
export interface Receipt {
|
|
224
|
+
id: string;
|
|
225
|
+
object: 'receipt';
|
|
226
|
+
/** Secondes Unix. Même instant que `createdAt`. */
|
|
227
|
+
created: number;
|
|
228
|
+
/**
|
|
229
|
+
* `exhausted` = les sept tentatives sont épuisées, ou le fournisseur a
|
|
230
|
+
* refusé définitivement. Rien ne repartira sans `resend()`.
|
|
231
|
+
*/
|
|
232
|
+
status: ReceiptStatus;
|
|
233
|
+
/**
|
|
234
|
+
* L'adresse **figée au moment du paiement**. Corriger ou supprimer la
|
|
235
|
+
* fiche client ensuite ne la change pas.
|
|
236
|
+
*/
|
|
237
|
+
email: string;
|
|
238
|
+
transactionId: string;
|
|
239
|
+
transaction?: Transaction;
|
|
240
|
+
attempts: number;
|
|
241
|
+
/** Secondes Unix. `null` quand plus rien n'est prévu. */
|
|
242
|
+
nextRetryAt: number | null;
|
|
243
|
+
/** Secondes Unix. */
|
|
244
|
+
sentAt: number | null;
|
|
245
|
+
/**
|
|
246
|
+
* Qui a traité l'envoi. `resend` = parti. **`journal` = consigné, pas
|
|
247
|
+
* expédié** — un environnement sans email configuré, ce qui n'arrive
|
|
248
|
+
* pas en production.
|
|
249
|
+
*/
|
|
250
|
+
provider: string | null;
|
|
251
|
+
lastError: string | null;
|
|
252
|
+
livemode: boolean;
|
|
253
|
+
/** @deprecated Doublon de `created`. Lisez `created`. */
|
|
254
|
+
createdAt: string;
|
|
255
|
+
}
|
|
256
|
+
export type CheckoutSessionStatus = 'open' | 'complete' | 'expired';
|
|
257
|
+
/**
|
|
258
|
+
* Comment la fiche client a été obtenue au règlement d'une session.
|
|
259
|
+
*
|
|
260
|
+
* | Valeur | Ce qui s'est passé |
|
|
261
|
+
* |---|---|
|
|
262
|
+
* | `provided` | vous aviez fourni `customer` |
|
|
263
|
+
* | `created` | l'email était inconnu, une fiche a été créée |
|
|
264
|
+
* | `unique` | **une seule** fiche vivante portait cet email |
|
|
265
|
+
* | `ambiguous` | **plusieurs** la portaient — une fiche NEUVE a été créée |
|
|
266
|
+
*
|
|
267
|
+
* `ambiguous` est le seul cas qui demande une action : nous ne
|
|
268
|
+
* rattachons jamais « à la plus récente », cela ferait entrer l'achat
|
|
269
|
+
* d'une personne dans l'historique d'une autre.
|
|
270
|
+
*/
|
|
271
|
+
export type CheckoutCustomerMatch = 'provided' | 'created' | 'unique' | 'ambiguous';
|
|
272
|
+
/** Une ligne du récapitulatif, telle qu'elle a été figée. */
|
|
273
|
+
export interface CheckoutSessionLineItem {
|
|
274
|
+
/** `null` pour une ligne à montant libre. */
|
|
275
|
+
priceId: string | null;
|
|
276
|
+
description: string;
|
|
277
|
+
unitAmountXpf: number;
|
|
278
|
+
quantity: number;
|
|
279
|
+
/** `unitAmountXpf` × `quantity`. */
|
|
280
|
+
amountXpf: number;
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Une page de paiement hébergée par Tupay.
|
|
284
|
+
*
|
|
285
|
+
* Le total est figé à la création : il ne suit plus le catalogue.
|
|
286
|
+
*/
|
|
287
|
+
export interface CheckoutSession {
|
|
288
|
+
id: string;
|
|
289
|
+
object: 'checkout_session';
|
|
290
|
+
/** Secondes Unix. Même instant que `createdAt`. */
|
|
291
|
+
created: number;
|
|
292
|
+
/**
|
|
293
|
+
* `open` tant qu'elle est payable, `complete` une fois **l'argent
|
|
294
|
+
* reçu**, `expired` passé l'échéance.
|
|
295
|
+
*
|
|
296
|
+
* Une session ne quitte jamais `complete`. Elle peut en revanche
|
|
297
|
+
* passer d'`expired` à `complete` : un paiement lancé avant l'échéance
|
|
298
|
+
* et confirmé après elle a bel et bien eu lieu.
|
|
299
|
+
*/
|
|
300
|
+
status: CheckoutSessionStatus;
|
|
301
|
+
/** La page hébergée. C'est là qu'on envoie le client. */
|
|
302
|
+
url: string;
|
|
303
|
+
/** Total figé, somme des lignes. Entier XPF. */
|
|
304
|
+
amountXpf: number;
|
|
305
|
+
currency: 'XPF';
|
|
306
|
+
lineItems: CheckoutSessionLineItem[];
|
|
307
|
+
successUrl: string;
|
|
308
|
+
cancelUrl: string | null;
|
|
309
|
+
customerId: string | null;
|
|
310
|
+
customer?: Customer;
|
|
311
|
+
customerEmail: string | null;
|
|
312
|
+
/** `null` tant que la session n'est pas réglée. */
|
|
313
|
+
customerMatch: CheckoutCustomerMatch | null;
|
|
314
|
+
/**
|
|
315
|
+
* Le paiement en cours tant que la session est `open` — il en interdit
|
|
316
|
+
* un second — puis celui qui l'a réglée.
|
|
317
|
+
*/
|
|
318
|
+
transactionId: string | null;
|
|
319
|
+
transaction?: Transaction;
|
|
320
|
+
/** Secondes Unix. Entre 30 minutes et 24 heures après `created`. */
|
|
321
|
+
expiresAt: number;
|
|
322
|
+
metadata: Record<string, string>;
|
|
323
|
+
livemode: boolean;
|
|
324
|
+
/** @deprecated Doublon de `created`. Lisez `created`. */
|
|
325
|
+
createdAt: string;
|
|
326
|
+
updatedAt: string;
|
|
327
|
+
}
|
|
328
|
+
export type SubscriptionStatus = 'active' | 'paused' | 'canceled';
|
|
329
|
+
/** Un client lié à un tarif récurrent. */
|
|
330
|
+
export interface Subscription {
|
|
331
|
+
id: string;
|
|
332
|
+
object: 'subscription';
|
|
333
|
+
/** Secondes Unix. Même instant que `createdAt`. */
|
|
334
|
+
created: number;
|
|
335
|
+
status: SubscriptionStatus;
|
|
336
|
+
customerId: string;
|
|
337
|
+
customer?: Customer;
|
|
338
|
+
priceId: string;
|
|
339
|
+
price?: Price;
|
|
340
|
+
/**
|
|
341
|
+
* La carte retenue à la souscription.
|
|
342
|
+
*
|
|
343
|
+
* **Non développable** : elle porte les quatre derniers chiffres d'une
|
|
344
|
+
* carte, et une liste d'abonnements n'a pas à les faire défiler.
|
|
345
|
+
* Lisez-la par `tupay.paymentMethods.retrieve()`.
|
|
346
|
+
*/
|
|
347
|
+
paymentMethodId: string;
|
|
348
|
+
/** Secondes Unix. */
|
|
349
|
+
currentPeriodStart: number;
|
|
350
|
+
/**
|
|
351
|
+
* Secondes Unix. Fin de la période courante, **donc la prochaine
|
|
352
|
+
* échéance**. Il n'y a pas de second champ pour cet instant : deux
|
|
353
|
+
* champs pour une même date finiraient par diverger.
|
|
354
|
+
*/
|
|
355
|
+
currentPeriodEnd: number;
|
|
356
|
+
metadata: Record<string, string>;
|
|
357
|
+
livemode: boolean;
|
|
358
|
+
/** @deprecated Doublon de `created`. Lisez `created`. */
|
|
359
|
+
createdAt: string;
|
|
360
|
+
updatedAt: string;
|
|
361
|
+
}
|
|
362
|
+
export interface Price {
|
|
363
|
+
id: string;
|
|
364
|
+
object: 'price';
|
|
365
|
+
/** Secondes Unix. Même instant que `createdAt`. */
|
|
366
|
+
created: number;
|
|
367
|
+
productId: string;
|
|
368
|
+
product?: Product;
|
|
369
|
+
/** Entier XPF. Le franc pacifique n'a pas de centimes. */
|
|
370
|
+
amountXpf: number;
|
|
371
|
+
currency: 'XPF';
|
|
372
|
+
/** `null` pour un tarif ponctuel. */
|
|
373
|
+
recurring: {
|
|
374
|
+
interval: RecurringInterval;
|
|
375
|
+
intervalCount: number;
|
|
376
|
+
} | null;
|
|
377
|
+
nickname: string | null;
|
|
378
|
+
/** Un tarif désactivé n'est plus proposé, mais honore les liens existants. */
|
|
379
|
+
active: boolean;
|
|
380
|
+
metadata: Record<string, string>;
|
|
381
|
+
livemode: boolean;
|
|
382
|
+
createdAt: string;
|
|
383
|
+
updatedAt: string;
|
|
384
|
+
}
|
|
385
|
+
/** Un article du catalogue. */
|
|
386
|
+
export interface Product {
|
|
387
|
+
id: string;
|
|
388
|
+
object: 'product';
|
|
389
|
+
/** Secondes Unix. Même instant que `createdAt`. */
|
|
390
|
+
created: number;
|
|
391
|
+
name: string;
|
|
392
|
+
description: string | null;
|
|
393
|
+
/**
|
|
394
|
+
* Un article désactivé n'apparaît plus dans les nouvelles ventes, mais
|
|
395
|
+
* ses tarifs existants continuent de fonctionner. **Réversible** — ce
|
|
396
|
+
* n'est pas une suppression.
|
|
397
|
+
*/
|
|
398
|
+
active: boolean;
|
|
399
|
+
metadata: Record<string, string>;
|
|
400
|
+
livemode: boolean;
|
|
401
|
+
createdAt: string;
|
|
402
|
+
updatedAt: string;
|
|
403
|
+
}
|
|
60
404
|
export interface PaymentIntent {
|
|
61
405
|
intentId: string;
|
|
62
406
|
/** Identifiant Tupay — à conserver : remboursements, webhooks, export. */
|
|
63
407
|
transactionId: string;
|
|
64
408
|
clientSecret: string | null;
|
|
409
|
+
/** Client rattaché, `null` pour un encaissement de passage. */
|
|
410
|
+
customerId: string | null;
|
|
411
|
+
/**
|
|
412
|
+
* `pending` pour un paiement ordinaire, qui attend le navigateur.
|
|
413
|
+
* `succeeded` pour un débit sur carte enregistrée, abouti dans l'appel.
|
|
414
|
+
*/
|
|
415
|
+
status?: TransactionStatus;
|
|
65
416
|
amountXpf: number;
|
|
66
417
|
amountEurCents: number;
|
|
67
418
|
livemode: boolean;
|
package/dist/cjs/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/errors.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { FailureCode } from './types.js';
|
|
1
2
|
/**
|
|
2
3
|
* Hiérarchie d'erreurs du SDK.
|
|
3
4
|
*
|
|
@@ -81,6 +82,39 @@ export declare class TupayConnectionError extends TupayError {
|
|
|
81
82
|
export declare class TupaySignatureVerificationError extends TupayError {
|
|
82
83
|
constructor(message: string);
|
|
83
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* 402 — la banque a REFUSÉ le débit d'une carte enregistrée.
|
|
87
|
+
*
|
|
88
|
+
* Distincte de `TupayBaasError`, dont elle hérite : celle-ci dit « le
|
|
89
|
+
* prestataire n'a pas répondu », un incident dont on se relève en
|
|
90
|
+
* retentant. Celle-là dit « il a répondu, et la réponse est non ».
|
|
91
|
+
* Retenter à l'identique reproduira le refus.
|
|
92
|
+
*
|
|
93
|
+
* ⚠️ `failureCode === 'authentication_required'` n'est **pas** un refus
|
|
94
|
+
* bancaire : le porteur est solvable, il lui manque une authentification
|
|
95
|
+
* forte. Ramenez-le devant son écran plutôt que de lui demander une
|
|
96
|
+
* autre carte.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* try {
|
|
100
|
+
* await tupay.paymentIntents.create({ …, offSession: true })
|
|
101
|
+
* } catch (err) {
|
|
102
|
+
* if (err instanceof TupayPaymentDeclinedError) {
|
|
103
|
+
* if (err.failureCode === 'authentication_required') ramenerLeClient()
|
|
104
|
+
* else demanderUneAutreCarte(err.message)
|
|
105
|
+
* }
|
|
106
|
+
* }
|
|
107
|
+
*/
|
|
108
|
+
export declare class TupayPaymentDeclinedError extends TupayBaasError {
|
|
109
|
+
/** La raison, en code machine stable. */
|
|
110
|
+
readonly failureCode?: FailureCode;
|
|
111
|
+
/** La transaction refusée. Elle EXISTE, et porte la même raison. */
|
|
112
|
+
readonly transactionId?: string;
|
|
113
|
+
constructor(message: string, options: TupayErrorOptions & {
|
|
114
|
+
failureCode?: FailureCode;
|
|
115
|
+
transactionId?: string;
|
|
116
|
+
});
|
|
117
|
+
}
|
|
84
118
|
/**
|
|
85
119
|
* Construit l'erreur typée correspondant à une réponse HTTP.
|
|
86
120
|
*
|
|
@@ -99,5 +133,7 @@ export declare function errorFromResponse(status: number, body: {
|
|
|
99
133
|
error?: string;
|
|
100
134
|
message?: string;
|
|
101
135
|
type?: string;
|
|
136
|
+
failureCode?: FailureCode;
|
|
137
|
+
transactionId?: string;
|
|
102
138
|
} | null, requestId?: string): TupayError;
|
|
103
139
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/esm/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,qBAAa,UAAW,SAAQ,KAAK;IACnC,6CAA6C;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,iEAAiE;IACjE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,wEAAwE;IACxE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,kDAAkD;IAClD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;gBAEf,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB;CAQxD;AAED,+CAA+C;AAC/C,qBAAa,wBAAyB,SAAQ,UAAU;CAAG;AAE3D,6EAA6E;AAC7E,qBAAa,oBAAqB,SAAQ,UAAU;CAAG;AAEvD,kEAAkE;AAClE,qBAAa,kBAAmB,SAAQ,UAAU;CAAG;AAErD,6CAA6C;AAC7C,qBAAa,oBAAqB,SAAQ,UAAU;CAAG;AAEvD,uEAAuE;AACvE,qBAAa,kBAAmB,SAAQ,UAAU;CAAG;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,qBAAsB,SAAQ,kBAAkB;CAAG;AAEhE,gDAAgD;AAChD,qBAAa,mBAAoB,SAAQ,UAAU;CAAG;AAEtD,iCAAiC;AACjC,qBAAa,aAAc,SAAQ,UAAU;CAAG;AAEhD,0DAA0D;AAC1D,qBAAa,cAAe,SAAQ,UAAU;CAAG;AAEjD,8EAA8E;AAC9E,qBAAa,oBAAqB,SAAQ,UAAU;gBACtC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAG7C;AAED,0DAA0D;AAC1D,qBAAa,+BAAgC,SAAQ,UAAU;gBACjD,OAAO,EAAE,MAAM;CAG5B;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,qBAAa,UAAW,SAAQ,KAAK;IACnC,6CAA6C;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,iEAAiE;IACjE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,wEAAwE;IACxE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,kDAAkD;IAClD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;gBAEf,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB;CAQxD;AAED,+CAA+C;AAC/C,qBAAa,wBAAyB,SAAQ,UAAU;CAAG;AAE3D,6EAA6E;AAC7E,qBAAa,oBAAqB,SAAQ,UAAU;CAAG;AAEvD,kEAAkE;AAClE,qBAAa,kBAAmB,SAAQ,UAAU;CAAG;AAErD,6CAA6C;AAC7C,qBAAa,oBAAqB,SAAQ,UAAU;CAAG;AAEvD,uEAAuE;AACvE,qBAAa,kBAAmB,SAAQ,UAAU;CAAG;AAErD;;;;;;;;;;;GAWG;AACH,qBAAa,qBAAsB,SAAQ,kBAAkB;CAAG;AAEhE,gDAAgD;AAChD,qBAAa,mBAAoB,SAAQ,UAAU;CAAG;AAEtD,iCAAiC;AACjC,qBAAa,aAAc,SAAQ,UAAU;CAAG;AAEhD,0DAA0D;AAC1D,qBAAa,cAAe,SAAQ,UAAU;CAAG;AAEjD,8EAA8E;AAC9E,qBAAa,oBAAqB,SAAQ,UAAU;gBACtC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAG7C;AAED,0DAA0D;AAC1D,qBAAa,+BAAgC,SAAQ,UAAU;gBACjD,OAAO,EAAE,MAAM;CAG5B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,yBAA0B,SAAQ,cAAc;IAC3D,yCAAyC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAA;IAClC,oEAAoE;IACpE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;gBAG7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,GAAG;QAAE,WAAW,CAAC,EAAE,WAAW,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE;CAMrF;AAeD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;IACJ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,GAAG,IAAI,EACR,SAAS,CAAC,EAAE,MAAM,GACjB,UAAU,CAyCZ"}
|
package/dist/esm/errors.js
CHANGED
|
@@ -1,21 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Hiérarchie d'erreurs du SDK.
|
|
3
|
-
*
|
|
4
|
-
* Toutes héritent de `TupayError` : un `catch (err)` unique suffit, et
|
|
5
|
-
* `err instanceof TupayRateLimitError` permet d'affiner si besoin.
|
|
6
|
-
*
|
|
7
|
-
* `code` est le code machine renvoyé par l'API (`validation_error`,
|
|
8
|
-
* `livemode_mismatch`, …). C'est lui qu'il faut tester — le `message`
|
|
9
|
-
* est en français, destiné à un humain, et peut changer sans préavis.
|
|
10
|
-
*
|
|
11
|
-
* `type` est la CLASSE de l'erreur : `invalid_request`, `authentication`,
|
|
12
|
-
* `permission`, `not_found`, `conflict`, `idempotency`, `rate_limit`,
|
|
13
|
-
* `provider`, `api`. Elle permet de traiter une famille entière sans
|
|
14
|
-
* énumérer chaque code, et c'est elle qui choisit la sous-classe
|
|
15
|
-
* ci-dessous. Retirer ou renommer un code est un changement cassant,
|
|
16
|
-
* réservé à une version datée ; en ajouter un ne l'est pas, et un code
|
|
17
|
-
* inconnu se traite par sa classe.
|
|
18
|
-
*/
|
|
19
1
|
export class TupayError extends Error {
|
|
20
2
|
/** Code machine stable renvoyé par l'API. */
|
|
21
3
|
code;
|
|
@@ -84,6 +66,40 @@ export class TupaySignatureVerificationError extends TupayError {
|
|
|
84
66
|
super(message, { code: 'signature_verification_failed' });
|
|
85
67
|
}
|
|
86
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* 402 — la banque a REFUSÉ le débit d'une carte enregistrée.
|
|
71
|
+
*
|
|
72
|
+
* Distincte de `TupayBaasError`, dont elle hérite : celle-ci dit « le
|
|
73
|
+
* prestataire n'a pas répondu », un incident dont on se relève en
|
|
74
|
+
* retentant. Celle-là dit « il a répondu, et la réponse est non ».
|
|
75
|
+
* Retenter à l'identique reproduira le refus.
|
|
76
|
+
*
|
|
77
|
+
* ⚠️ `failureCode === 'authentication_required'` n'est **pas** un refus
|
|
78
|
+
* bancaire : le porteur est solvable, il lui manque une authentification
|
|
79
|
+
* forte. Ramenez-le devant son écran plutôt que de lui demander une
|
|
80
|
+
* autre carte.
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* try {
|
|
84
|
+
* await tupay.paymentIntents.create({ …, offSession: true })
|
|
85
|
+
* } catch (err) {
|
|
86
|
+
* if (err instanceof TupayPaymentDeclinedError) {
|
|
87
|
+
* if (err.failureCode === 'authentication_required') ramenerLeClient()
|
|
88
|
+
* else demanderUneAutreCarte(err.message)
|
|
89
|
+
* }
|
|
90
|
+
* }
|
|
91
|
+
*/
|
|
92
|
+
export class TupayPaymentDeclinedError extends TupayBaasError {
|
|
93
|
+
/** La raison, en code machine stable. */
|
|
94
|
+
failureCode;
|
|
95
|
+
/** La transaction refusée. Elle EXISTE, et porte la même raison. */
|
|
96
|
+
transactionId;
|
|
97
|
+
constructor(message, options) {
|
|
98
|
+
super(message, options);
|
|
99
|
+
this.failureCode = options.failureCode;
|
|
100
|
+
this.transactionId = options.transactionId;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
87
103
|
/** La classe d'erreur de l'API vers la sous-classe du SDK. */
|
|
88
104
|
const PAR_TYPE = {
|
|
89
105
|
invalid_request: TupayValidationError,
|
|
@@ -114,6 +130,19 @@ export function errorFromResponse(status, body, requestId) {
|
|
|
114
130
|
const code = body?.error ?? 'server_error';
|
|
115
131
|
const message = body?.message ?? `Requête échouée (HTTP ${status}).`;
|
|
116
132
|
const options = { code, type: body?.type, statusCode: status, requestId };
|
|
133
|
+
// ── Le CODE l'emporte sur le type, pour ce cas-là ────────────────
|
|
134
|
+
// `payment_declined` porte le type `provider`, comme `bad_gateway` :
|
|
135
|
+
// dans les deux cas la faute est chez le prestataire. Mais leurs
|
|
136
|
+
// reprises sont opposées — retenter pour l'un, ne surtout pas pour
|
|
137
|
+
// l'autre — et un client qui ne peut pas les distinguer boucle sur
|
|
138
|
+
// une carte qui ne passera jamais.
|
|
139
|
+
if (code === 'payment_declined') {
|
|
140
|
+
return new TupayPaymentDeclinedError(message, {
|
|
141
|
+
...options,
|
|
142
|
+
failureCode: body?.failureCode,
|
|
143
|
+
transactionId: body?.transactionId,
|
|
144
|
+
});
|
|
145
|
+
}
|
|
117
146
|
const parType = body?.type ? PAR_TYPE[body.type] : undefined;
|
|
118
147
|
if (parType)
|
|
119
148
|
return new parType(message, options);
|
package/dist/esm/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -16,6 +16,14 @@
|
|
|
16
16
|
import { type TupayOptions } from './client.js';
|
|
17
17
|
import { PaymentIntents } from './resources/payment-intents.js';
|
|
18
18
|
import { PaymentLinks } from './resources/payment-links.js';
|
|
19
|
+
import { Customers } from './resources/customers.js';
|
|
20
|
+
import { PaymentMethods } from './resources/payment-methods.js';
|
|
21
|
+
import { SetupIntents } from './resources/setup-intents.js';
|
|
22
|
+
import { Products } from './resources/products.js';
|
|
23
|
+
import { CheckoutSessions } from './resources/checkout-sessions.js';
|
|
24
|
+
import { Receipts } from './resources/receipts.js';
|
|
25
|
+
import { Prices } from './resources/prices.js';
|
|
26
|
+
import { Subscriptions } from './resources/subscriptions.js';
|
|
19
27
|
import { Transactions } from './resources/transactions.js';
|
|
20
28
|
import { Refunds } from './resources/refunds.js';
|
|
21
29
|
import { WebhookEndpoints } from './resources/webhook-endpoints.js';
|
|
@@ -29,6 +37,19 @@ export declare class Tupay {
|
|
|
29
37
|
readonly paymentIntents: PaymentIntents;
|
|
30
38
|
readonly paymentLinks: PaymentLinks;
|
|
31
39
|
readonly transactions: Transactions;
|
|
40
|
+
/** Le carnet d'adresses : reconnaître une personne d'un paiement à l'autre. */
|
|
41
|
+
readonly customers: Customers;
|
|
42
|
+
/** Les cartes enregistrées. Tupay ne reçoit jamais de numéro de carte. */
|
|
43
|
+
readonly paymentMethods: PaymentMethods;
|
|
44
|
+
/** Enregistrer une carte sans débiter, pour prélever plus tard. */
|
|
45
|
+
readonly setupIntents: SetupIntents;
|
|
46
|
+
/** Le catalogue : ce que vous vendez. */
|
|
47
|
+
readonly products: Products;
|
|
48
|
+
/** Les prix de votre catalogue. Immuables dès leur création. */
|
|
49
|
+
readonly checkoutSessions: CheckoutSessions;
|
|
50
|
+
readonly receipts: Receipts;
|
|
51
|
+
readonly prices: Prices;
|
|
52
|
+
readonly subscriptions: Subscriptions;
|
|
32
53
|
readonly refunds: Refunds;
|
|
33
54
|
readonly webhookEndpoints: WebhookEndpoints;
|
|
34
55
|
readonly merchants: Merchants;
|
|
@@ -72,11 +93,27 @@ export { TupayClient } from './client.js';
|
|
|
72
93
|
export type { TupayOptions, RequestOptions } from './client.js';
|
|
73
94
|
export { constructEvent, DEFAULT_TOLERANCE_SECONDS } from './webhooks.js';
|
|
74
95
|
export type { ConstructEventOptions } from './webhooks.js';
|
|
75
|
-
export { TupayError, TupayAuthenticationError, TupayPermissionError, TupayNotFoundError, TupayValidationError, TupayConflictError, TupayIdempotencyError, TupayRateLimitError, TupayApiError, TupayBaasError, TupayConnectionError, TupaySignatureVerificationError, } from './errors.js';
|
|
96
|
+
export { TupayError, TupayAuthenticationError, TupayPermissionError, TupayNotFoundError, TupayValidationError, TupayConflictError, TupayIdempotencyError, TupayRateLimitError, TupayApiError, TupayBaasError, TupayPaymentDeclinedError, TupayConnectionError, TupaySignatureVerificationError, } from './errors.js';
|
|
76
97
|
export type * from './types.js';
|
|
77
98
|
export type { CreatePaymentIntentParams } from './resources/payment-intents.js';
|
|
78
99
|
export type { CreatePaymentLinkParams } from './resources/payment-links.js';
|
|
79
100
|
export type { ListTransactionsParams } from './resources/transactions.js';
|
|
101
|
+
export type { CreateCustomerParams, UpdateCustomerParams, ListCustomersParams, } from './resources/customers.js';
|
|
102
|
+
export { Customers } from './resources/customers.js';
|
|
103
|
+
export type { CreatePaymentMethodParams, UpdatePaymentMethodParams, ListPaymentMethodsParams, } from './resources/payment-methods.js';
|
|
104
|
+
export { PaymentMethods } from './resources/payment-methods.js';
|
|
105
|
+
export type { CreateSetupIntentParams, ListSetupIntentsParams, } from './resources/setup-intents.js';
|
|
106
|
+
export { SetupIntents } from './resources/setup-intents.js';
|
|
107
|
+
export type { CreateProductParams, UpdateProductParams, ListProductsParams, } from './resources/products.js';
|
|
108
|
+
export { Products } from './resources/products.js';
|
|
109
|
+
export type { CreatePriceParams, UpdatePriceParams, ListPricesParams, } from './resources/prices.js';
|
|
110
|
+
export { Prices } from './resources/prices.js';
|
|
111
|
+
export type { CreateSubscriptionParams, ListSubscriptionsParams, } from './resources/subscriptions.js';
|
|
112
|
+
export { Subscriptions } from './resources/subscriptions.js';
|
|
113
|
+
export type { CheckoutLineItem, CreateCheckoutSessionParams, ListCheckoutSessionsParams, } from './resources/checkout-sessions.js';
|
|
114
|
+
export { CheckoutSessions } from './resources/checkout-sessions.js';
|
|
115
|
+
export type { ListReceiptsParams } from './resources/receipts.js';
|
|
116
|
+
export { Receipts } from './resources/receipts.js';
|
|
80
117
|
export type { CreateRefundParams, ListRefundsParams } from './resources/refunds.js';
|
|
81
118
|
export type { CreateWebhookEndpointParams, UpdateWebhookEndpointParams, ListDeliveriesParams, } from './resources/webhook-endpoints.js';
|
|
82
119
|
export type { ListEventsParams } from './resources/events.js';
|
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AACzD,OAAO,EAAkB,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,qBAAa,KAAK;;IAChB,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAA;IACvC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAA;IACnC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAA;IAC3C,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,8DAA8D;IAC9D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,sEAAsE;IACtE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IAEjC,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;gBAId,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|