Mechanisms

mechanisms/svm/exact/client

github.com/x402-foundation/x402/go/v2/mechanisms/svm/exact/client

import "github.com/x402-foundation/x402/go/v2/mechanisms/svm/exact/client"

Constants

Client error constants for the exact SVM (Solana) scheme (V2)

Source: mechanisms/svm/exact/client/errors.go:5

const (
	ErrUnsupportedNetwork           = "invalid_exact_solana_client_unsupported_network"
	ErrInvalidAssetAddress          = "invalid_exact_solana_client_invalid_asset_address"
	ErrFailedToGetMintAccount       = "invalid_exact_solana_client_failed_to_get_mint_account"
	ErrUnknownTokenProgram          = "invalid_exact_solana_client_unknown_token_program"
	ErrInvalidPayToAddress          = "invalid_exact_solana_client_invalid_payto_address"
	ErrFailedToDeriveSourceATA      = "invalid_exact_solana_client_failed_to_derive_source_ata"
	ErrFailedToDeriveDestinationATA = "invalid_exact_solana_client_failed_to_derive_destination_ata"
	ErrInvalidAmount                = "invalid_exact_solana_client_invalid_amount"
	ErrFeePayerRequired             = "invalid_exact_solana_client_fee_payer_required"
	ErrInvalidFeePayerAddress       = "invalid_exact_solana_client_invalid_fee_payer_address"
	ErrFailedToDecodeMintData       = "invalid_exact_solana_client_failed_to_decode_mint_data"
	ErrFailedToGetLatestBlockhash   = "invalid_exact_solana_client_failed_to_get_latest_blockhash"
	ErrFailedToBuildComputeLimitIx  = "invalid_exact_solana_client_failed_to_build_compute_limit_instruction"
	ErrFailedToBuildComputePriceIx  = "invalid_exact_solana_client_failed_to_build_compute_price_instruction"
	ErrFailedToBuildTransferIx      = "invalid_exact_solana_client_failed_to_build_transfer_instruction"
	ErrFailedToBuildMemoIx          = "invalid_exact_solana_client_failed_to_build_memo_instruction"
	ErrFailedToCreateTransaction    = "invalid_exact_solana_client_failed_to_create_transaction"
	ErrFailedToSignTransaction      = "invalid_exact_solana_client_failed_to_sign_transaction"
	ErrFailedToEncodeTransaction    = "invalid_exact_solana_client_failed_to_encode_transaction"
	ErrMemoExceedsMaxSize           = "invalid_exact_solana_client_memo_exceeds_max_size"
)

Functions

func NewExactSvmScheme(signer svm.ClientSvmSigner, config ...*svm.ClientConfig) *ExactSvmScheme

Source: mechanisms/svm/exact/client/scheme.go:29

NewExactSvmScheme creates a new ExactSvmScheme Config is optional - if not provided, uses network defaults

Types

type ExactSvmScheme

Source: mechanisms/svm/exact/client/scheme.go:21

ExactSvmScheme implements the SchemeNetworkClient interface for SVM (Solana) exact payments (V2)

type ExactSvmScheme struct {
	// contains filtered or unexported fields
}

func CreatePaymentPayload( ctx context.Context, requirements types.PaymentRequirements, ) (types.PaymentPayload, error)

Source: mechanisms/svm/exact/client/scheme.go:47

CreatePaymentPayload creates a V2 payment payload for the Exact scheme

func Scheme) Scheme() string

Source: mechanisms/svm/exact/client/scheme.go:42

Scheme returns the scheme identifier