multi_method_support

Created Diff never expires
4 removals
27 lines
27 additions
48 lines
mppx validate https://v0-starlink-payment-api.vercel.app
mppx validate https://v0-starlink-payment-api.vercel.app




Discovery (/openapi.json)
Discovery (/openapi.json)
✓ Document found and parseable
✓ Document found and parseable
✓ Valid OpenAPI structure
✓ Valid OpenAPI structure
✓ Paid endpoints found (1 endpoint(s))
✓ Paid endpoints found (1 endpoint(s))


POST /api/flight-starlink
POST /api/flight-starlink
Challenge
Challenge
✓ Returns 402 without credentials
✓ Returns 402 without credentials
✓ WWW-Authenticate header present (Payment scheme)
✓ WWW-Authenticate header present (Payment scheme)
✓ Challenge parseable (evm/charge)
✓ Challenge parseable (4 methods: evm/charge, solana/charge, tempo/charge, stripe/charge)
✓ Challenge has id
✓ Challenge has id
✓ Challenge has realm
✓ Challenge has realm
✓ Challenge expires in the future (5m from now)
✓ Challenge expires in the future (5m from now)
✓ Realm matches server hostname
✓ Realm matches server hostname
✓ [evm] Valid recipient address
✓ [evm] Valid currency address
✓ [evm] Amount is valid integer string
✓ [evm] Has chainId (8453)
✓ [tempo] Valid recipient address
✓ [tempo] Valid currency address (mainnet)
✓ [tempo] Amount is valid integer string
✓ [stripe] Amount is valid integer string
✓ [stripe] Valid currency code (USD)
✓ [stripe] Has networkId (profile_61UfVbHEBmn7)
✓ [stripe] Has paymentMethodTypes (card, link)
Error Handling
Error Handling
✓ Malformed credential returns 402 (not 500)
✓ Malformed credential returns 402 (not 500)
✓ Error response includes fresh challenge
✓ Error response includes fresh challenge
Payment
Payment
○ Payment: no configured method (Need evm/charge)
→ Run "mppx account create" to create a local wallet for payment testing. The wallet is stored on your machine and only used by mppx.


Summary: 12 passed, 1 skipped
▸ Pay $0.01 USDC.e on Tempo Mainnet. Continue? (y/N) y
✓ Payment [tempo]: submitted
✓ Payment: successful (HTTP 200)
✓ Payment-Receipt header present
✓ Receipt parseable
✓ Receipt status is "success"
✓ Receipt reference valid (0x493c4bc191b8aa3f4d...)
✓ Receipt timestamp recent (1s ago)
✓ Response body non-empty (application/json, 367B)
✓ Content-Type header set (application/json)
✓ On-chain transaction (https://explore.tempo.xyz/receipt/0x493c4bc191b8aa3f4d9400f116ca0f4086b851ebada4bab7e43195a622a8730b)

Summary: 33 passed


Tip: validate a testnet server too for free. This CLI automatically provisions and funds a testnet wallet for testing.
Tip: validate a testnet server too for free. This CLI automatically provisions and funds a testnet wallet for testing.