--- title: "Create the tender" url: "https://docs.adyen.com/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/create-the-tender-com-extension" source_url: "https://docs.adyen.com/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/create-the-tender-com-extension.md" canonical: "https://docs.adyen.com/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/create-the-tender-com-extension" last_modified: "2026-05-23T12:56:20+02:00" language: "en" --- # Create the tender [View source](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/create-the-tender-com-extension.md) ## PedDevice Object | Name | Description | | ----------- | ---------------------------------------- | | `PedDevice` | PED object that represents the terminal. | ## Method | Name | Description | | -------------- | ----------------------------------------- | | `CreateTender` | Use this method to start the transaction. | For gift card operations, you create a tender prior to calling `GiftCardRedeem`. This `CreateTender` must not include a `KeyedEntry` tender option. If the original tender contains a `KeyedEntry` tender option, it is not possible to perform a `GiftCardRedeem`. ## Parameters | Name | Type | Required | Description | | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `merchantAccount` | String | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The merchant account that will receive the payment. | | `amountValue` | Long | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The transaction amount in minor units (100 is 1.00 with EUR). | | `amountCurrency` | String | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The transaction currency. | | `transactionType` | String | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The type of transaction, for example: GOODS\_SERVICES, REFUND. | | `tenderOptions` | [TenderOption](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/com-extension-for-windows-objects/tenderoption) | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The transaction options. Can be an empty `TenderOption`. | | `merchantRef` | String | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The transaction reference provided by the merchant (reported in the Adyen payments platform). | | `orderRef` | String | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The order reference for split payments (reported in the Adyen payments platform). | | `gratuityAmountValue` | int | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The tender gratuity amount in minor units (100 is 1.00 with EUR). | | `gratuityAmountCurrency` | String | ![-white\_check\_mark-](/user/data/smileys/emoji/white_check_mark.png "-white_check_mark-") | The tender gratuity currency. | | `shopperEmail` | String | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Shopper identification (used for omnichannel digital customer recognition). | | `shopperRef` | String | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Shopper identification (used for omnichannel digital customer recognition). | | `recurringContract` | String | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Recurring contract if registering for RECURRING or ONECLICK payments. | | `recurringContractDetailName` | String | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Recurring contract detail key (points at payment details of this Tender). | | `additionalData` | [AdditionalData](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/com-extension-for-windows-objects/additionaldata) | ![-x-](/user/data/smileys/emoji/x.png "-x-") | Additional data the method passes with the tender. The  `AdditionalData`  object is a generic container that can hold extra fields. The system uses the card number as a key to collect relevant additional data, for example loyalty data or recurring contract information. | Not all languages using COM handle empty parameters equally. This has the potential to cause unexpected behavior. To prevent this, provide empty strings or pass `Null` objects for C++/C#, and the default value `Nothing` for VB.NET. ## Callbacks | Name | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | CreateTenderCB | Immediate callback to tender creation. | | [Progress Event Callback](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/handle-progress-events-com-extension) | Reports the progress of a running tender. | | [Additional Data Callback](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/handle-the-additional-data-callback-com-extension) | Invoked after the shopper inserts or swipes a card. Retrieves additional data about the cardholder. | | [DCC Callback](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/extras-com-extension/handle-dynamic-currency-conversion-com-extension) | Returns dynamic currency conversion information to inform the POS what is happening on the PED. On the PED the shopper is allowed to choose their own currency to complete the tender. | | [PrintReceipt Callback](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/handle-the-print-receipt-callback-com-extension) | Returns the receipt for printing, and requests that the POS confirms it has received the receipt. | | [Signature Callback](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/handle-the-signature-callback-com-extension) | Allows the store assistant to accept or decline a shopper's signature on the PED. | | [Final Callback](/point-of-sale/classic-library-deprecation/classic-library-integrations/com-extension-for-windows-integration/key-steps-com-extension/process-a-basic-transaction-com-extension/handle-the-final-state-callback-com-extension) | When the Adyen payments platform finishes processing the tender, it triggers the final state callback. |