Docs/FDC Real Verifyv1.0 · Coston2

05 / Cross-chain proof

FDC Real Verify

A real XRPL Testnet repayment attested by Flare Data Connector and verified on Coston2.

LAST UPDATED
14 AUG 2026

Current-Vault FDC XRPPayment Evidence on Coston2

Status: A real XRPL Testnet payment was attested through Flare FDC, verified by the live Coston2 FdcVerification contract, and closed loan 1 on the vault used by the frontend.

The earlier zero message-integrity code (MIC) request is retained only as a negative operational control. The request below was generated by Flare's verifier and contains a nonzero MIC.

End-to-end evidence

StageEvidence
Vault0x9a2E0476a02137116C8656786d323d937FaCfBCa
Loan drawCoston2 tx 0x96f2d2d728358e132c3da71e4a343bbf265ecf4f7861424a5ec2fcfe0e9beedb
LoanID 1, collateral 5 FXRP, principal 0.009 USDT0, principal quote 8,883 drops
Commitment0xc2d6031fec793217487f842273ab961025a7b0765e746788dd51e30438b7d0d7
XRPL paymentE43DB387E6BE299B442E20683AAC9C0D9E3A0A6CF684408B013FAC5E9A77E3FAtesSUCCESS, 100,000 drops
XRPL sourcerDWR3JTZjwnPhywxVrqgrrs3Tr4Q2sWujT
XRPL destinationrrpBcxxoHZuBWSTT2ZfCwHkQBBdfnLqgbK (protocol settlement account)
FDC requestCoston2 tx 0x6cedfc97dcdf915ff9d754cf8869e3a3dae442bf0d5768e36bc2549b3f023576
Finalized round1424121; IRelay.isFinalized(200, 1424121) == true
DA responseHTTP 200; raw proof in evidence/fdc/raw-proof-response.json
Live verifierFdcVerification.verifyXRPPayment(proof) == true
Vault closeCoston2 tx 0x65b24ffcdceb9ce26fb5c075c62680d802478b8b61f6efac82da0c983cd53ef8; state CLOSED, collateral released, SBT minted

Reproduce verification

bash
forge script script/FDC/VerifyXRPPayment.s.sol \
  --rpc-url https://coston2-api.flare.network/ext/C/rpc \
  --sig "run(string)" evidence/fdc/raw-proof-response.json

The submission script checks the on-chain loan state before broadcasting. Once a loan is CLOSED, it exits successfully without replaying the proof.

Root cause and prevention

Flare's verifier supplies the MIC-bearing abiEncodedRequest. A hand-encoded zero-MIC request can pay FdcHub fees yet not be indexed by providers. The retrieval driver rejects zero-MIC inputs and performs bounded post-finalization DA retries before reporting a provider indexing failure.