> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.mangopay.com/guides/payment-methods/twint/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mangopay.com/_mcp/server. # TWINT ## About TWINT is a popular payment method in Switzerland that allows users to connect their bank account or card with their phone.
Region Switzerland
Currencies CHF
[Refunds](/guides/refunds) Yes, up to 365 days
[Disputes](/guides/disputes) Yes, within 120 days
Preauthorization No
Recurring payments No
## How it works The [TWINT pay-in](/api-reference/twint/twint-payin-object) flow provides the following checkout experience: #### User chooses payment method On your app or website, the user selects TWINT as the payment method #### Payment initiation You create the payment request by calling [POST Create a TWINT PayIn](/api-reference/twint/create-twint-payin), specifying the `ReturnURL`. #### Redirection You redirect the user to the hosted TWINT page via the `RedirectURL` in the API response. The TWINT page displays a 5-digit verification code and a QR code. The user either scans the QR code or enters the verification code in their mobile app, before reviewing and confirming the payment. > **Note** > > **Note – Session timeout** > > The TWINT session times out after: > > * 15 minutes for the hosted webpage > * 3 minutes once the user scans the QR code #### Return After payment, the user is returned to the `ReturnURL` that you specified in the payment request. #### Outcome The transaction is complete when the pay-in status changes from `CREATED` to `SUCCEEDED` or `FAILED`, indicating the outcome. ## Hooks You should also set up [hook notifications](/webhooks) for the relevant [event types](/webhooks/event-types): * PAYIN\_NORMAL\_SUCCEEDED * PAYIN\_NORMAL\_FAILED ## Disputes A user can request a chargeback with their issuing bank of a TWINT payment up to 120 days after the payment date. When this happens, Mangopay automatically deducts the disputed amount from the Reputation Wallet (by way of a Repudiation) and creates a [Dispute object](/api-reference/disputes/dispute-object), which is `CONTESTABLE`. With TWINT, platforms usually have 30 days to submit evidence to contest the dispute. [Read more about disputes](/guides/disputes) **→** ## Related resources #### [Endpoint](/api-reference/twint/twint-payin-object) The TWINT PayIn object #### [Testing](/testing/payment-methods#twint) Learn about testing TWINT