# `X402.Client.Hooks.Default`
[🔗](https://github.com/cardotrejos/x402/blob/v0.9.0/lib/x402/client/hooks/default.ex#L1)

Default no-op implementation of `X402.Client.Hooks`.

Every callback returns `{:cont, context}` so payment creation proceeds
unchanged.

# `after_payment`
*since 0.9.0* 

```elixir
@spec after_payment(X402.Client.Hooks.Context.t(), map()) ::
  {:cont, X402.Client.Hooks.Context.t()}
```

Continues after payment creation without changes.

# `before_payment`
*since 0.9.0* 

```elixir
@spec before_payment(X402.Client.Hooks.Context.t(), map()) ::
  {:cont, X402.Client.Hooks.Context.t()}
```

Continues payment creation without changes.

## Examples

    iex> context = X402.Client.Hooks.Context.new(nil, %{"scheme" => "exact"}, [])
    iex> X402.Client.Hooks.Default.before_payment(context, %{}) == {:cont, context}
    true

# `on_payment_failure`
*since 0.9.0* 

```elixir
@spec on_payment_failure(X402.Client.Hooks.Context.t(), map()) ::
  {:cont, X402.Client.Hooks.Context.t()}
```

Continues failure handling without changes.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
