--- title: "Titres-restaurant iOS Drop-in integration" description: "Add Titres-restaurant to your iOS Drop-in integration" url: "https://docs.adyen.com/payment-methods/titres-restaurant/ios-drop-in" source_url: "https://docs.adyen.com/payment-methods/titres-restaurant/ios-drop-in.md" canonical: "https://docs.adyen.com/payment-methods/titres-restaurant/ios-drop-in" last_modified: "2026-05-25T12:55:01+02:00" language: "en" --- # Titres-restaurant iOS Drop-in integration Add Titres-restaurant to your iOS Drop-in integration [View source](/payment-methods/titres-restaurant/ios-drop-in.md) On this page, you can find additional configuration for adding Titres-restaurant to your iOS Drop-in integration. ## Requirements | Requirement | Description | | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Integration type** | Make sure that you have built your [iOS Drop-in integration](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Drop-in). The minimum required version is 5.4.0. | | **Setup steps** | Before you begin:- [Activate Titres-Restaurant](/payment-methods/titres-restaurant#activate) to get your *Carte de domiciliation CONECS*. - [Add the meal voucher payment method in your Customer Area](/payment-methods/add-payment-methods), providing your SIRET (your business registration ID) and the Conecs MID from your *Carte de domiciliation CONECS*. | ## API reference You do not need to send additional fields for Titres-Restaurant. To see optional fields that you can send for all payment methods, choose the endpoint you integrated: * [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions): This is the default with [Drop-in v5.0.0](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Drop-in) or later. * [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments): If you implemented an [additional use case](/online-payments/build-your-integration). ## Drop-in configuration Select which endpoint you are integrating: ### Tab: `/sessions` This is the default with [Drop-in v5.0.0](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Drop-in) or later. There is no required Titres-restaurant specific integration for iOS Drop-in. ## Show the payment result The [payment result is returned](/online-payments/build-your-integration/sessions-flow/?platform=iOS\&integration=Drop-in\&version=5.9.0#handle-the-result) in the `didComplete` method. ### Tab: `/payments` If you implemented an [additional use case](/online-payments/build-your-integration). ### Required configuration Add the following events to your Titres-Restaurant configuration object to let the shopper make a [partial payment](/online-payments/partial-payments) with a meal voucher and pay the rest with another payment method: | Event name | Description | | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `checkBalance` | Called when the shopper pays with a Titres-restaurant meal voucher. Make a [/paymentMethods/balance](https://docs.adyen.com/api-explorer/Checkout/latest/post/paymentMethods/balance) request. | | `requestOrder` | Called when the Titres-restaurant meal voucher balance is less than the transaction amount. Make an [/orders](https://docs.adyen.com/api-explorer/Checkout/latest/post/orders) request with the `amount` of the total transaction amount. | | `cancelOrder` | Called when the shopper cancels the Titres-restaurant meal voucher transaction. Make an [/orders/cancel](https://docs.adyen.com/api-explorer/Checkout/latest/post/orders/cancel) request. | **Partial payments for Titres-restaurant meal voucher** ```swift extension MyCheckoutController: PartialPaymentDelegate { internal func checkBalance(with data: PaymentComponentData, completion: @escaping (Result) -> Void) { // Make a POST /paymentMethods/balance request completion(.success(balance)) } internal func requestOrder(_ completion: @escaping (Result) -> Void) { // Make a POST /orders request completion(.success(order)) } internal func cancelOrder(_ order: PartialPaymentOrder) { // Make a POST /orders/cancel request } } ``` ## Show the payment result Use the  [resultCode](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments#responses-200-resultCode) from the [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) response to show the payment result to your shopper. You will also receive the outcome of the payment asynchronously in a [webhook](/development-resources/webhooks). For Titres-restaurant payments, you can receive the following `resultCode` values: | resultCode | Description | Action to take | | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Authorised** | The payment was successful. | Inform the shopper that the payment has been successful. If you are using [manual capture](/online-payments/capture#manual-capture), you also need to [capture](/online-payments/capture) the payment. | | **Cancelled** | The shopper cancelled the payment. | Ask the shopper whether they want to continue with the order, or ask them to select a different payment method. | | **Error** | There was an error when the payment was being processed. For more information, check the [`refusalReason` ](/development-resources/refusal-reasons)field. | Inform the shopper that there was an error processing their payment. | | **Refused** | The payment was refused. For more information, check the [`refusalReason` ](/development-resources/refusal-reasons)field. | Ask the shopper to try the payment again using a different payment method. | ## Test and go live To test Titres-restaurant payments, you must get test credentials directly from the meal voucher issuer (Bimpli, Sodexo, or Up Déjeuner). Before you can accept live payments, you must contact our [Support Team](https://ca-test.adyen.com/ca/ca/contactUs/support.shtml?form=other) to activate Titres-restaurant in your live environment. ## See also * [iOS Drop-in integration guide](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Drop-in) * [Webhooks](/development-resources/webhooks) * [API Explorer](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/overview)