# invalid_redirect_uri

> The address isn't registered

- Status: 400 Bad Request
- Returned by: The account connection (/oauth)
- Retry (`retryWhen`): `after_fix`
- Did anything happen? (`outcome`): `none` (It did not happen)
- The account connection
- Page in the portal: https://developers.rivr.io/errors/invalid_redirect_uri
- Try it: `GET https://developers.rivr.io/errors/simulate/invalid_redirect_uri` answers with the code's exact wire form; `?succeedAfter=N&attempt=K` gives a 200 once `attempt` passes `N`

## What it means

`redirect_uri` isn't registered on the client, or it can't be used. The address is compared exactly, character for character, and a client with no registered address is refused. `https` is required, and outside production `http://localhost` and `http://127.0.0.1` work too. The code is shown on Rivr's error page, and the browser is never sent back, since the address hasn't been checked.

## What your system does

Send exactly the registered address. Contact Rivr to register an address, once per environment.

## Is it worth retrying?

No, not without changing the call.

`retryWhen`: `after_fix`. Change the request first, as the code's page says: a value, the token, a header or a new key. Then send it.

## Did anything happen?

`outcome`: `none`. **It did not happen.** This call did not do what you asked for and changed nothing else that you can see or that concerns money. Where the code has an `outcomeNote`, it takes precedence.

## Example: The account connection (/oauth)

```http
HTTP/1.1 400 Bad Request
Content-Type: text/html; charset=utf-8
Cache-Control: no-store

<h1>Kopplingen kunde inte startas</h1>
<p>Systemet som skickade dig hit har inte en giltig koppling till Rivr. Gå tillbaka och kontakta dem som äger systemet.</p>
<p>Felkod: invalid_redirect_uri</p>
```

The `title`, `detail`, `message` and `error_description` texts are exactly as the API writes them today.
