check status to payment retries

This commit is contained in:
2026-01-16 18:08:07 -03:00
parent 61c01956b5
commit f593b21a73
4 changed files with 98 additions and 78 deletions

View File

@@ -36,8 +36,14 @@ def payment_retries(
with dyn.transact_writer() as transact:
transact.condition(
key=KeyPair(order_id, '0'),
cond_expr='attribute_exists(sk) AND installments = :installments',
cond_expr='attribute_exists(sk) \
AND installments = :installments \
AND #status = :pending',
expr_attr_names={
'#status': 'status',
},
expr_attr_values={
':pending': 'PENDING',
':installments': installments,
},
exc_cls=OrderConflictError,

View File

@@ -28,7 +28,7 @@
// Seeds for Order
// file: tests/routes/orders/test_payment_retries.py
{"id": "4b23f6f5-5377-476b-b1de-79427c0295f6", "sk": "0", "installments": 3}
{"id": "4b23f6f5-5377-476b-b1de-79427c0295f6", "sk": "0", "installments": 3, "status": "PENDING"}
{"id": "4b23f6f5-5377-476b-b1de-79427c0295f6", "sk": "INVOICE", "invoice_id": "123"}
{"id": "4b23f6f5-5377-476b-b1de-79427c0295f6", "sk": "TRANSACTION#STATS", "last_attempt_succeeded": false}