Reconnect a provider
Re-authorises a gateway whose provider authorisation has stopped working — the processor expired it, the merchant revoked it, or the account it was granted on was closed — by sending a fresh authorisation for the same gateway. It is the ordinary gateway update carrying an oauth_data token: the same route, the same connection test, the same record. The gateway keeps its id, its routes and its saved cards, so nothing has to be re-pointed afterwards. Saved cards are held against the processor merchant account the gateway was first connected to, so the merchant must sign into that same account; nothing on the server checks that they did.
Where you can do this
- Merchant Setup: Managing a connection (Reconnect {name})
Before you start
- The gateway exists, is not archived, and still resolves to a provider integration.
- The processor authorises through OAuth. Processors configured from credentials typed into the settings form have no reconnect; their equivalent is a settings save (Update a provider's settings).
- A completed authorisation at the processor whose
oauth_datatoken has not expired: it is held for one hour.
Rules
Checked by the API means Shuttle refuses the request however it is sent; a screen name means only that screen refuses it, and a direct API call would be accepted.
| Rule | Checked by | What you see |
|---|---|---|
| The body must carry a gateway object | The API | VALIDATION_ERROR: "API body error: missing gateway object" (400) |
| The gateway must exist | The API | NOT_FOUND: "gateway not found" (404) |
A body that also changes the status is handled as a status change and every other field, oauth_data included, is discarded | The API | 200, the authorisation is not applied (see Disconnect a provider, Restore an archived provider) |
| Values carried by the authorisation win over values in the body, which win over the values already stored | The API | a posted value is overwritten without notice |
| The authorisation replaces what the gateway held for that provider integration: the previous values under that name are wiped, not merged | The API | the previous authorisation is gone |
| The connection is re-tested with the new authorisation before the save is accepted. Only a FAILED verdict rejects it; a verdict of unknown, or a provider reporting itself unavailable, is accepted | The API | INVALID with the integration's message: "Invalid credentials", "Connection Failed", or the processor's own text (400) |
| On an archived gateway the provider save is skipped, so the authorisation is stored without any test; Merchant Setup offers no Reconnect while a gateway is archived | The API and Merchant Setup screen | stored unverified; control not shown |
| By design, a reconnect does not check that the new authorisation is for the same merchant account at the processor: the merchant authorises whichever account they sign in to, and Shuttle applies it. Reconnecting to a different account is therefore possible, and it is the wrong thing to do, because saved payment methods belong to the old account. Merchant Setup warns before opening the processor's popup ("you must connect to the same account otherwise your saved payment methods will be declined") and tells the merchant to disconnect and make a new connection instead | Not enforced; by design | saved payment methods are declined by the processor, because they do not exist on the new account |
What happens
- The provider connection is re-authorised in place. The gateway keeps its id, its routes, its reporting code and every saved card held against it; nothing has to be re-pointed, and no contract or payment method is touched.
- Saved cards keep working only where the merchant signed into the same processor account. They are not moved, re-vaulted or re-issued; on a different account the processor declines them, and the number of cards at stake is shown on the settings screen before the merchant starts.
- The connection is tested with the new authorisation before the save is accepted; when it fails, the settings screen shows the processor's message and the save is refused.
- The gateway's enabled currencies and payment methods are recomputed from what the processor accepts at that moment, and the account name and connection status shown against the connection are read from the processor again.
GATEWAY.UPDATEis raised and the change is recorded in the gateway's audit trail. Nothing is sent to the customer.
Who can do this
- Roles: Admin only. Connecting and re-authorising providers is business setup, not a Support action.
- Permission keys (for clients managing permissions directly):
payment_gateway(or*) on the gateway, checked by Shuttle before anything is read or written; without it the caller sees UNAUTHORIZED: "Unauthorized" (401). Merchant Setup checks the same key against any object rather than against this gateway, and without it greys the Reconnect control without disabling it, so a user who lacks the key can still complete the processor's authorisation and is only refused at the save. - App options: the control is offered only for processors whose integration authorises through OAuth, and only while the gateway is connected and not archived. There is no setting that turns it off; in single-provider deep-link mode it sits on the same combined screen.
Related
Updated 13 minutes ago