night-owl-mw2e4m2b251@example.com charged $64.00 twice for cart cart-29737

Status
Needs you
At risk
$64.00
Detected (detector clock)
2026-12-01 17:29

Diagnosis

AI agent (anthropic/claude-haiku-5.5)

Your customer night-owl-mw2e4m2b251@example.com was charged $64.00 twice for the same box (cart-29737), 20 seconds apart, on November 4. PayPal shows both payments as completed, and neither order has been shipped. If nothing is done, the customer will see two charges on their card and is likely to file a dispute, and you would pay for it.

Decisions

The agent proposes, the policy gate decides, the executor calls PayPal.

Ask the owner

Waiting for you

Agent proposed

Both orders are unshipped, so the refund and the choice of which order to fulfil both need the owner's decision.

Note: Customer night-owl-mw2e4m2b251@example.com was charged $64.00 twice for cart-29737: capture 1HD58269ND587632F (order 9HY61647ED317240C, 17:28:48) and capture 7SP25361G7651073R (order 38J03569L33365716, 17:29:08). Neither order has shipped. Do you want to

Policy said

Needs approval
  • The agent asked for a human decision.

PayPal returned

No PayPal call for this action.

Refund capture

$64.007SP25361G7651073RWaiting for you

Agent proposed

The second capture is an exact duplicate of the first for the same cart, so refunding it returns the extra $64.00 to the customer and prevents a dispute.

Note: Hi, we noticed you were charged twice for the same box. We are refunding the duplicate $64.00 charge.

Policy said

Needs approval
  • Refunds send money back to the buyer and cannot be reversed, so the owner approves every one.

PayPal returned

Not called yet.

Exact API call (PayPal-Request-Id ns-55ecb46631bd5d95905aaef9140dbab8)
POST /v2/payments/captures/7SP25361G7651073R/refund
{
  "amount": {
    "currency_code": "USD",
    "value": "64.00"
  },
  "note_to_payer": "Hi, we noticed you were charged twice for the same box. We are refunding the duplicate $64.00 charge."
}

Edited amounts go back through the policy gate before anything is sent to PayPal.

Evidence

Captures 1HD58269ND587632F (order 9HY61647ED317240C) and 7SP25361G7651073R (order 38J03569L33365716) charged the same payer $64.00 for the same cart reference cart-29737 20 seconds apart. A buyer who sees two charges files a dispute.

payer
night-owl-mw2e4m2b251@example.com
cart ref
cart-29737
amount
$64.00
first capture id
1HD58269ND587632F
first order id
9HY61647ED317240C
first captured at
2026-11-04T17:28:48.000Z
duplicate capture id
7SP25361G7651073R
duplicate order id
38J03569L33365716
duplicate captured at
2026-11-04T17:29:08.000Z
seconds apart
20
same cart reference
true
order9HY61647ED317240Ccapture1HD58269ND587632Forder38J03569L33365716capture7SP25361G7651073R

All ids are real PayPal sandbox objects; GET them with your sandbox credentials to check.

Audit trail

Detected, diagnosed, decided, executed. Live.

Detected: night-owl-mw2e4m2b251@example.com charged $64.00 twice for cart cart-29737
Detector
Captures 1HD58269ND587632F (order 9HY61647ED317240C) and 7SP25361G7651073R (order 38J03569L33365716) charged the same payer $64.00 for the same cart reference cart-29737 20 seconds apart. A buyer who sees two charges files a dispute.
Agent started triage
Agent
Agent read ledger_lookup
Agent
ledger_lookupNightshift ledgerok
args { "order_id": "38J03569L33365716" }
Result
{"order":{"id":"38J03569L33365716","intent":"CAPTURE","status":"COMPLETED","amountCents":6400,"currency":"USD","payer":"night-owl-mw2e4m2b251@example.com","cartRef":"cart-29737","description":"Roaster's Choice box, monthly","fulfillment":"unfulfilled","shippedAt":null,"createdAt":"2026-11-04T17:29:08.000Z","updatedAt":"2026-11-04T17:29:14.049Z","source":"scenario","scenario":"lab_mw2e3kyb"},"buyer_note_untrusted":null,"authorizations":[],"captures":[{"id":"7SP25361G7651073R","orderId":"38J03569L33365716","authorizationId":null,"status":"COMPLETED","statusReason":null,"amountCents":6400,"currency":"USD","finalCapture":true,"createdAt":"2026-11-04T17:29:08.000Z","updatedAt":"2026-11-04T17:29:14.052Z"}],"refunds":[],"failed_capture_attempts":[]}
Agent read get_capture
Agent
get_capturevia Nightshift REST clientok
args { "capture_id": "7SP25361G7651073R" }
Result
{"id":"7SP25361G7651073R","amount":{"currency_code":"USD","value":"64.00"},"final_capture":true,"seller_protection":{"status":"NOT_ELIGIBLE"},"seller_receivable_breakdown":{"gross_amount":{"currency_code":"USD","value":"64.00"},"paypal_fee":{"currency_code":"USD","value":"2.80"},"net_amount":{"currency_code":"USD","value":"61.20"}},"custom_id":"cart-29737","status":"COMPLETED","supplementary_data":{"related_ids":{"order_id":"38J03569L33365716"}},"payee":{"email_address":"sb-djk8i53501233@business.example.com","merchant_id":"D8M8MT98DPNNG"},"create_time":"2026-11-04T17:29:08Z","update_time":"2026-11-04T17:29:08Z","links":[{"href":"https://api.sandbox.paypal.com/v2/payments/captures/7SP25361G7651073R","rel":"self","method":"GET"},{"href":"https://api.sandbox.paypal.com/v2/payments/captures/7SP25361G7651073R/refund","rel":"refund","method":"POST"},{"href":"https://api.sandbox.paypal.com/v2/checkout/orders/38J03569L33365716","rel":"up","method":"GET"}]}
Agent read ledger_lookup
Agent
ledger_lookupNightshift ledgerok
args { "order_id": "9HY61647ED317240C" }
Result
{"order":{"id":"9HY61647ED317240C","intent":"CAPTURE","status":"COMPLETED","amountCents":6400,"currency":"USD","payer":"night-owl-mw2e4m2b251@example.com","cartRef":"cart-29737","description":"Roaster's Choice box, monthly","fulfillment":"unfulfilled","shippedAt":null,"createdAt":"2026-11-04T17:28:48.000Z","updatedAt":"2026-11-04T17:28:54.449Z","source":"scenario","scenario":"lab_mw2e3kyb"},"buyer_note_untrusted":null,"authorizations":[],"captures":[{"id":"1HD58269ND587632F","orderId":"9HY61647ED317240C","authorizationId":null,"status":"COMPLETED","statusReason":null,"amountCents":6400,"currency":"USD","finalCapture":true,"createdAt":"2026-11-04T17:28:48.000Z","updatedAt":"2026-11-04T17:28:54.452Z"}],"refunds":[],"failed_capture_attempts":[]}
Agent diagnosis
Agent
Your customer night-owl-mw2e4m2b251@example.com was charged $64.00 twice for the same box (cart-29737), 20 seconds apart, on November 4. PayPal shows both payments as completed, and neither order has been shipped. If nothing is done, the customer will see two charges on their card and is likely to file a dispute, and you would pay for it.
Agent proposed: Ask the owner
Agent
Both orders are unshipped, so the refund and the choice of which order to fulfil both need the owner's decision.
Policy said: needs the owner's approval
Policy gate
  • The agent asked for a human decision.
Agent proposed: Refund capture $64.00
Agent
The second capture is an exact duplicate of the first for the same cart, so refunding it returns the extra $64.00 to the customer and prevents a dispute.
Policy said: needs the owner's approval
Policy gate
  • Refunds send money back to the buyer and cannot be reversed, so the owner approves every one.