Direct USDC charge on EVM, EIP-3009 transferWithAuthorization only.
Settlement reuses MPP.Methods.EVM.Authorization. The nonce is the USDC
challenge binding from draft-usdc-charge-00, not the generic EVM
challengeHash. The server submits the authorization and pays gas.
Summary
Functions
Advertise chainId, decimals 6, and the authorization credential.
EIP-3009 payload type accepted by this profile.
Profile name evm.
Require an RPC URL, a known chain id, and a settlement key.
Verify an EIP-3009 USDC authorization and return the USDC receipt.
Functions
@spec challenge_details(MPP.Intents.Charge.t()) :: map()
Advertise chainId, decimals 6, and the authorization credential.
@spec credential_type() :: String.t()
EIP-3009 payload type accepted by this profile.
@spec name() :: String.t()
Profile name evm.
@spec validate_config!(map()) :: :ok
Require an RPC URL, a known chain id, and a settlement key.
@spec verify(map(), MPP.Intents.Charge.t()) :: {:ok, MPP.Receipt.t()} | {:error, MPP.Errors.t()}
Verify an EIP-3009 USDC authorization and return the USDC receipt.