Commit e5e6b18
fix(stripe-a-posteriori): demande l'email du restaurant avant /v1/accounts
La page « Stripe Connect a posteriori » hardcodait `email: ""` dans le
prefill du compte Stripe Connect (commentaire : « Stripe Express collecte
l'email du gérant pendant le KYC »). C'est faux : Stripe REJETTE un email
vide sur `POST /v1/accounts` avec « Invalid email address: ». Le wizard
s'en sortait parce que `prospect.email` existait à l'étape 1 ; pour un
tenant créé hors wizard (a posteriori), il n'y a pas de prospect, donc
pas de source d'email.
Fix : ajout d'un champ « Email du restaurant » dans la view (Input
contrôlé via `email` + `onEmailChange` props), avec validation regex
client. Le bouton « Générer un lien Stripe Connect » reste désactivé
tant que la syntaxe email est invalide.
Comportement Régénérer : préserve le UX existant — `/v1/account_links`
ne recrée pas le compte, donc l'email n'est pas relu. Le bouton
« Régénérer » est enabled même avec `email = ""` (cf. test pinned).
Tests : +6 cases pinning la nouvelle logique (email input rendu /
masqué selon `hasAccount`, validation regex, callback `onEmailChange`,
disable/enable du bouton, regenerate sans email). 22/22 green.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent f8fffa4 commit e5e6b18
3 files changed
Lines changed: 140 additions & 8 deletions
File tree
- apps/admin/src/app/(app)/t/[tenantId]/parametres/stripe
Lines changed: 12 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
99 | 103 | | |
100 | 104 | | |
101 | 105 | | |
| |||
127 | 131 | | |
128 | 132 | | |
129 | 133 | | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
136 | 140 | | |
137 | 141 | | |
138 | 142 | | |
| |||
165 | 169 | | |
166 | 170 | | |
167 | 171 | | |
| 172 | + | |
| 173 | + | |
168 | 174 | | |
169 | 175 | | |
170 | 176 | | |
| |||
Lines changed: 82 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
196 | 196 | | |
197 | 197 | | |
198 | 198 | | |
| 199 | + | |
| 200 | + | |
199 | 201 | | |
200 | 202 | | |
201 | 203 | | |
| |||
327 | 329 | | |
328 | 330 | | |
329 | 331 | | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
330 | 412 | | |
331 | 413 | | |
332 | 414 | | |
| |||
Lines changed: 46 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
73 | 83 | | |
74 | 84 | | |
75 | 85 | | |
| |||
179 | 189 | | |
180 | 190 | | |
181 | 191 | | |
| 192 | + | |
| 193 | + | |
182 | 194 | | |
183 | 195 | | |
184 | 196 | | |
185 | 197 | | |
186 | 198 | | |
| 199 | + | |
| 200 | + | |
187 | 201 | | |
188 | 202 | | |
189 | 203 | | |
| |||
196 | 210 | | |
197 | 211 | | |
198 | 212 | | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
199 | 219 | | |
200 | 220 | | |
201 | 221 | | |
| |||
251 | 271 | | |
252 | 272 | | |
253 | 273 | | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
254 | 298 | | |
255 | 299 | | |
256 | 300 | | |
| |||
259 | 303 | | |
260 | 304 | | |
261 | 305 | | |
262 | | - | |
| 306 | + | |
263 | 307 | | |
264 | 308 | | |
265 | 309 | | |
| |||
270 | 314 | | |
271 | 315 | | |
272 | 316 | | |
273 | | - | |
| 317 | + | |
274 | 318 | | |
275 | 319 | | |
276 | 320 | | |
| |||
0 commit comments