No. 01 PayPal AI Hackathon · kwitansi

JaminanPasporPayPal hold $100.00

The deposit that remembers the dent was already there.

recorded run R-JUDGE-9001 · PayPal sandbox · claim answers scripted
capture $18.00 final_capture=true → 201 COMPLETED
read back the authorization → 200 CAPTURED · $82.00 released
capture again → 422 AUTHORIZATION_ALREADY_CAPTURED
Sewa · Rental
R-JUDGE-9001
Demo scooter 1
B 0000 JMN · 1 day
Rental fee$15.00 captured from the hold · final_capture=false · PayPal: PARTIALLY_CAPTURED
Mirror housing — crack$18.00 new since pickup — priced from the tariff
Side panel — dent— visible at pickup — cannot be charged
Jaminan kerusakan · Damage deposit
$100.00
held on PayPal — not charged$18.00 captured
$82.00 released
$100.00 released
$18.00 invoiced
DilepasReleasedPayPal: CAPTURED
  1. Recorded run R-JUDGE-9001, PayPal sandbox: one capture of $18.00 with final_capture=true → read-back CAPTURED; the other $82.00 released by the same call. Evidence
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 01 / 12

No. 02 Jaminan means deposit

In Bali, the scooter deposit is often your passport.

JaminanPasporPayPal hold $100.00

Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 02 / 12

No. 03 The return counter

At return, whoever holds the passport wins.

The shop
points at a dent
The renter
says it was already there
A record both saw
none
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 03 / 12

No. 04 Aturan

The owner points. The shared baseline answers.

1The shop taps a mark, named from the tariff.
2The model answers only what pickup photos show.
3The hold pays only the lines the renter accepts.
visible at pickupcannot be charged
pickup photo can't show itcannot be charged
no mark at returncannot be charged
not the kind namedcan't be paid from the hold
clearly new since pickuptariff · $18.00
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 04 / 12

No. 05 The settle · recorded sandbox run, claim answers scripted

One red stamp. One green stamp.

capture again → 422 AUTHORIZATION_ALREADY_CAPTURED
debug f5799404eea63 · no further capture on this authorization; $82.00 released
Sewa · Rental
R-JUDGE-9001
Demo scooter 1
B 0000 JMN · 1 day
Rental fee$15.00 captured from the hold · final_capture=false · PayPal: PARTIALLY_CAPTURED
Mirror housing — crack$18.00 new since pickup — priced from the tariff
Side panel — dent— visible at pickup — cannot be charged
Jaminan kerusakan · Damage deposit
$100.00
held on PayPal — not charged$18.00 captured
$82.00 released
$100.00 released
$18.00 invoiced
DilepasReleasedPayPal: CAPTURED
  1. Recorded run R-JUDGE-9001, PayPal sandbox: one capture of $18.00 with final_capture=true → read-back CAPTURED; the other $82.00 released by the same call. Evidence
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 05 / 12

No. 06 Uang · the money · recorded sandbox run, claim answers scripted

One authorization carries the whole rental.

UTCCall · recorded run R-JUDGE-9001PayPal saysms
16:29:30authorize fee + deposit · $115.00201 COMPLETED2,487
16:29:32capture fee · $15.00 · final_capture=false201 COMPLETED2,079
16:29:33write the handover (tracking)201 COMPLETED1,470
16:29:34read back200 PARTIALLY_CAPTURED860
16:29:37capture line · $18.00 · final_capture=true201 COMPLETED2,283
16:29:37read back200 CAPTURED484
16:29:38capture again · $1.00422 AUTHORIZATION_ALREADY_CAPTURED671
16:29:38read back200 CAPTURED489
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 06 / 12

No. 07 Aplikasi · jaminan.edycu.dev/app

Two phones. One rental.

Jaminan — the judge page: the hold is live and PayPal reads back PARTIALLY_CAPTURED 123
1the hold, stamped HELD2PayPal's own read-back3one tap releases it
Jaminan — the renter's receipt: released, PayPal VOIDED, with PayPal's ids
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 07 / 12

No. 08 Cara kerja · how it is built

Arithmetic says no first. PayPal says yes last.

FASTAPI · VERCEL PYTHON FUNCTIONS /api/* Renter phoneShop phone Frame gatePointed claim decide_claimState machinepaypal.py Upstash Redis · jaminan:* Qwen on DashScopePayPal sandbox English · PWABahasa · PWA blur · glare · 1280 pxJSON schema answer + published tariffstamps on read-back19 REST endpoints answers, never pricesOrders · Payments v2Vault · Invoicing image + narrow question answer REST webhooks · signature checked
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 08 / 12

No. 09 Measured, with the file that proves it

Proof you can re-run.

243
tests passing, 8 against the PayPal sandbox API
evidence/test-run.txt
18/18
live end-to-end checks on the deployed app, two phones at 375 px
evidence/e2e-live.txt
19
PayPal REST endpoints in a hand-written client
evidence/README.md
23,040
input combinations swept: chargeable only when every answer says new since pickup
tests/test_invariants.py
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 09 / 12

No. 10 AI-generated test images (not photographs)

The model read both claims wrong. Nothing was priced.

AI-generated test images (not photographs): the pickup image of a white scooter, front-left view, both mirrors on, a grey scuff on the front fairingC1C2
At pickup · AI-generated test images (not photographs)
AI-generated test images (not photographs): the return image of a white scooter, front-left view, edited so both rear-view mirrors are goneC1C2
At return · AI-generated test images (not photographs)
C1 front fairing — dent
True answer: old: the same scuff is in the pickup image. Model read: new since pickup (wrong in all 3 calls).
not priced
C2 mirror — missing part
True answer: new: both mirrors are missing at return. Model read: a mark at return, but not this part and class (wrong in all 3 calls).
not priced
No model is benchmarked yet, so no line can be priced
Recorded answers, not a benchmark. Pinned without the bench, the rules would have priced C1, an old scuff, at $45.00. evidence/generated-pair
qwen3-vl-plus
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 10 / 12

No. 11 Batas

What it does not do yet.

Sandbox only.No live money moved.
Wallet path only.No card payments.
No vision accuracy claim.Partial public-photo check: FAIL.
Non-return is out of scope.Damage and fines.
Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 11 / 12

No. 12 Your turn

Open the judge path. Release the hold yourself.

What the shared baseline can't show, nobody can charge.

/judge · no login

Jaminan · PayPal AI Hackathonv0.4.1 · built from 8cf0ee3 · 12 / 12
Turn your phone sideways, or open the PDF
← → move · Esc overview · P notes