Buchungskalender: Abgleich – gleichzeitige Zweitzahlung wird erstattet
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
f01e6def59
commit
95cbd473d0
2 files changed
+19
-1
No files matched your search
@@ -384,6 +384,20 @@ test('Zahlung nach Frist-Ablauf der Sitzung/Storno ueber Rueckkehr-Abgleich: ebe
|
||||
assert.equal(erstattungen('pi_sp2').length, 1)
|
||||
})
|
||||
|
||||
test('Gleichzeitige Zweitzahlung (beide lesen noch gebucht): genau eine wird gebucht, die andere erstattet', async () => {
|
||||
const f = await onlineGebucht('2026-11-10', '2026-11-12')
|
||||
st.setPaymentIntent(ACCOUNT, 'pi_x', { amount: 20000 })
|
||||
st.setPaymentIntent(ACCOUNT, 'pi_y', { amount: 20000 })
|
||||
await Promise.all([zahlung.verbucheZahlung(f.ctx, f.id, 'pi_x', { now: NOW }), zahlung.verbucheZahlung(f.ctx, f.id, 'pi_y', { now: NOW })])
|
||||
const a = await sp.ladeAnfrage(f.id)
|
||||
assert.equal(a.status, 'bezahlt')
|
||||
const gebucht = a.stripePaymentIntentId
|
||||
const andere = gebucht === 'pi_x' ? 'pi_y' : 'pi_x'
|
||||
assert.equal(erstattungen(gebucht).length, 0)
|
||||
assert.equal(erstattungen(andere).length, 1)
|
||||
assert.equal(erstattungen(andere)[0].metadata?.webklar ?? 'unterkunft', 'unterkunft')
|
||||
})
|
||||
|
||||
test('Zweite Zahlung auf bereits bezahlte Buchung (andere Zahlung): automatisch erstattet; dieselbe Zahlung nicht', async () => {
|
||||
const f = await onlineGebucht('2026-11-10', '2026-11-12')
|
||||
st.setPaymentIntent(ACCOUNT, 'pi_a', { amount: 20000 })
|
||||
|
||||
Reference in new issue
Block a user