# Create payment intent This endpoint is used to create a payment intent Endpoint: POST /payment-intents Version: 2.0.0 Security: bearerAuth, basicAuth ## Request fields (application/json): - `transId` (string) Transaction ID created in your system. It should be unique for each payment. - `externalIntegrationId` (string) External integration identifier - `refNr` (string) Your unique reference number for the specific operation. You can pass this value to reconcile different operations in a payment (authorization, capture, refund, etc) individually. - `amount` (object) - `amount.value` (number, required) Total order amount in the smallest currency unit, including taxes, shipping costs, discounts, etc. - `amount.currency` (string, required) 3-character ISO currency code. - `amount.taxTotal` (number) Total tax amount. - `amount.netItemTotal` (number) Total net amount of the products as part of the order, excluding shipping costs. - `amount.netShippingAmount` (number) Net shipping costs. - `amount.grossShippingAmount` (number) Gross shipping costs. - `amount.netDiscount` (number) Net discount amount. - `amount.grossDiscount` (number) Gross discount amount. - `language` (string) Language code to determine the language of the payment form and customer communication where applicable. - `captureMethod` (object) - `captureMethod.type` (string) Specifies the type of capture method being used. Enum: "AUTOMATIC", "MANUAL", "DELAYED" - `captureMethod.delayed` (object) - `captureMethod.delayed.delayedHours` (number) Defines the delay period, in hours, before an authorized payment is automatically captured. Required if type is delayed. Minimum: 1, maximum: 696 - `order` (object) - `order.merchantReference` (string) A unique identifier for the order, assigned by your system. - `order.numberOfArticles` (number) The total number of articles (items) included in the order. - `order.creationDate` (string) The date and time when the order was created. - `order.invoiceId` (string) ID of the invoice generated for the order. - `order.items` (array) - `order.items.id` (string) A unique identifier for the specific item in the order. - `order.items.sku` (string) The Stock Keeping Unit (SKU) of the item, used to uniquely identify the product within the merchant's inventory. - `order.items.name` (string) The name or title of the item being purchased. - `order.items.type` (string) The type of item, such as "physical", "digital", "discount", "sales_tax", "shipping_fee", "discount", "gift_card", "store_credit", etc. - `order.items.quantity` (number) The quantity of this item being purchased in the order. - `order.items.quantityUnit` (string) The unit of measurement for the quantity, such as "pcs", "kg", or "liters". - `order.items.taxRate` (number) The tax rate applied to this item. Percentage sign must be replaced with two zeros. For example: A tax rate of 25% should be sent as 2500. - `order.items.netPrice` (number) The net price of a single unit of this item, excluding tax and discounts. - `order.items.grossPrice` (number) The gross price of a single unit of this item, including taxes but excluding discounts. - `order.items.discountAmount` (number) Discount amount applied to single unit of this item. - `order.items.taxAmount` (number) Tax amount applied to single unit of this item. - `order.items.merchantData` (string) Additional data or metadata provided by the merchant about this item. - `order.items.description` (string) Detailed description of the item. - `order.items.marketplaceSellerId` (string) An identifier for the seller in a marketplace context. - `order.items.lineNumber` (number) A sequential line number assigned to this item in the order for reference purposes. - `order.items.merchantProductType` (string) A classification or type assigned to this product by you. - `order.items.googleProductCategory` (string) Indicates the category of the item based on the Google product taxonomy. - `order.items.googleProductCategoryId` (number) Google product category ID. - `order.items.groupId` (string) An identifier used to group related items together. - `order.items.taxCategory` (string) Specifies the tax category applicable to this item. - `order.items.additionalDescription` (string) Any additional descriptive information about this item not covered elsewhere. - `order.items.productInfo` (object) - `order.items.productInfo.brand` (string) The brand name associated with this product. - `order.items.productInfo.categories` (array) The product's category path as used in the your webshop - `order.items.productInfo.globalTradeItemNumber` (string) The product's Global Trade Item Number (GTIN). Enum: "EAN", "ISBN", "UPC" - `order.items.productInfo.manufacturerPartNumber` (string) The product's Manufacturer Part Number (MPN), which - together with the brand - uniquely identifies a product. Only submit MPNs assigned by a manufacturer and use the most specific MPN possible. - `order.items.productInfo.imageUrl` (string) A URL pointing to an image of this product. - `order.items.productInfo.productUrl` (string) A URL linking to a detailed product page on the merchant's website. - `simulationMode` (string) Used to simulate a specific payment success or error use case. Accepts a list of predefined error codes. - `urls` (object) - `urls.return` (string) The URL to which the customer is redirected after successfully completing the payment process. - `urls.cancel` (string) The URL to which the customer is redirected if they cancel the payment process before completion. - `urls.webhook` (string) The URL endpoint on the merchant's server that receives asynchronous notifications about the outcome of the payment. - `billingAddress` (object) - `billingAddress.streetName` (string) Street name of billing address. - `billingAddress.streetNumber` (string) Street number of billing address. - `billingAddress.addressLine2` (string) Address line 2 of billing address. - `billingAddress.addressLine3` (string) Address line 3 of billing address. - `billingAddress.city` (string) City of billing address. - `billingAddress.state` (string) State of billing address. - `billingAddress.country` (string) 3 character ISO country code of billing address. - `billingAddress.postalCode` (string) Postal code of billing address. - `shipping` (object) - `shipping.address` (object) - `shipping.address.firstName` (string) Shipping first name. - `shipping.address.lastName` (string) Shipping last name. - `shipping.address.companyName` (string) Shipping company name. Applicable, when the entity where the goods are being delivered is a business entity. - `shipping.address.streetName` (string) Shipping street. - `shipping.address.streetNumber` (string) Shipping street number. - `shipping.address.addressLine2` (string) Address line 2 of shipping address. - `shipping.address.addressLine3` (string) Address line 3 of shipping address. - `shipping.address.city` (string) Shipping city. - `shipping.address.state` (string) State of shipping address. - `shipping.address.country` (string) 3 character ISO country code of shipping address. - `shipping.address.postalCode` (string) Shipping postal code. - `shipping.type` (string) Shipping method. - `statementDescriptor` (string) Short, clear description of the transaction that appears on the customer's statement. - `customerInfo` (object) Information about the customer. - `customerInfo.merchantCustomerId` (string) A unique identifier for the customer, assigned by the merchant's system. - `customerInfo.customerType` (string) Specifies the type of customer, such as "individual" or "business". - `customerInfo.firstName` (string) First name of the customer. - `customerInfo.lastName` (string) Last name (surname) of the customer. - `customerInfo.email` (string, required) Email address of the customer. - `customerInfo.phone` (object) Phone number of the customer. - `customerInfo.phone.countryCode` (string) Country Code/Area code of the phone number. - `customerInfo.phone.number` (string) Phone number of the customer. - `customerInfo.salutation` (string) Salutation used to address the customer, such as "Mr", "Mrs", "Miss ". - `customerInfo.title` (string) Any additional title or designation associated with the customer, such as "Dr", etc. - `customerInfo.gender` (string) Gender of the customer. - `customerInfo.maidenName` (string) Maiden name of the customer. - `customerInfo.middleName` (string) Middle name of the customer. - `customerInfo.birthDate` (string) Birth date of the customer in YYYY-MM-DD format. - `customerInfo.birthPlace` (string) Place of birth of the customer. - `customerInfo.socialSecurityNumber` (string) Customer's Social Security Number. - `customerInfo.taxId` (string) Tax identification number associated with the customer. - `customerInfo.companyName` (string) Name of the company if the customer is a business entity. - `customerInfo.positionOccupied` (string) Position or role occupied by the individual within their company. - `customerInfo.companyRegistrationNumber` (string) Official registration number of the company in its country of incorporation. - `customerInfo.companyVatId` (string) Value Added Tax (VAT) identification number for the company. - `customerInfo.companyLegalForm` (string) The legal form or structure of the company. - `expirationTime` (string) Transaction expiry timestamp (UTC). Example: "2025-02-07T16:00:00Z" - `fraudData` (object) - `fraudData.accountInfo` (object) The account information contains optional information about the customer account with the merchant. - `fraudData.accountInfo.id` (string) The account ID of the cardholder within merchant environment / website (e.g. customer number). - `fraudData.accountInfo.authenticationInfo` (object) - `fraudData.accountInfo.authenticationInfo.method` (string) This data element specifies the mechanism used by the Cardholder to authenticate to the merchant. Enum: "GUEST", "MERCHANT_CREDENTIALS", "FEDERATED_ID", "ISSUER_CREDENTIALS", "THIRD_PARTY_AUTHENTICATION", "FIDO", "SIGNED_FIDO", "SRC_ASSURANCE_DATA" - `fraudData.accountInfo.authenticationInfo.timestamp` (string) Date and time (see RFC 3339) in UTC of the cardholder authentication. YYYY-MM-DDTHH:MM:SS+00:00. - `fraudData.accountInfo.authenticationInfo.data` (string) This data element can carry specific authentication attestation data such as FIDO if applicable. - `fraudData.accountInfo.ageIndicator` (string) Length of time that the customer has had the payment instrument / payment account with the merchant. Enum: "GUEST_CHECKOUT", "THIS_TRANSACTION", "LESS_THAN_30_DAYS", "FROM_30_TO_60_DAYS", "MORE_THAN_60_DAYS" - `fraudData.accountInfo.changeDate` (string) Date that the customer's payment instrument (account) with the merchant was last changed, including billing or shipping address, new payment account, or new user(s) added (YYYY-MM-DD). - `fraudData.accountInfo.changeIndicator` (string) Length of time since the customer’s account information with the merchant was last changed, including billing or shipping address, new payment account, or new user(s) added. Enum: "THIS_TRANSACTION", "LESS_THAN_30_DAYS", "FROM_30_TO_60_DAYS", "MORE_THAN_60_DAYS" - `fraudData.accountInfo.creationDate` (string) Date that the customer opened the account with the merchant in format YYYY-MM-DD. - `fraudData.accountInfo.passwordChangeDate` (string) Date that customer's account with the merchant had a password change or account reset in format YYYY-MM-DD. - `fraudData.accountInfo.passwordChangeDateIndicator` (string) Indicates the length of time since the customer account had a password change or account reset. Enum: "NO_CHANGE", "THIS_TRANSACTION", "LESS_THAN_30_DAYS", "FROM_30_TO_60_DAYS", "MORE_THAN_60_DAYS" - `fraudData.accountInfo.numberOfPurchases` (number) Number of purchases in the last 6 months - `fraudData.accountInfo.addCardAttemptsDay` (number) Number of Add Card attempts in the last 24 hours. - `fraudData.accountInfo.numberTransactionsDay` (number) Number of transactions (successful and abandoned) in the previous 24 hours. - `fraudData.accountInfo.numberTransactionsYear` (number) Number of transactions (successful and abandoned) in the previous year. - `fraudData.accountInfo.paymentAccountAge` (string) Date that the payment account was enrolled in the customer account in format YYYY-MM-DD. - `fraudData.accountInfo.paymentAccountAgeIndicator` (string) Indicates the length of time that the payment account was enrolled in the customer account. Enum: "GUEST_CHECKOUT", "THIS_TRANSACTION", "LESS_THAN_30_DAYS", "FROM_30_TO_60_DAYS", "MORE_THAN_60_DAYS" - `fraudData.accountInfo.shipAddressUsageDate` (string) Date when the shipping address used for this transaction was first used in format YYYY-MM-DD. - `fraudData.accountInfo.shipAddressUsageIndicator` (string) Indicates when the shipping address used for this transaction was first used. Enum: "THIS_TRANSACTION", "LESS_THAN_30_DAYS", "FROM_30_TO_60_DAYS", "MORE_THAN_60_DAYS" - `fraudData.accountInfo.suspiciousAccountActivity` (boolean) Indicates whether the merchant has experienced suspicious activity (including previous fraud) on the customer account. - `fraudData.deliveryEmail` (string) For Electronic delivery, the email address to which the merchandise was delivered. - `fraudData.deliveryTimeframe` (string) Indicates the merchandise delivery timeframe. - `fraudData.giftCardAmount` (number) For prepaid or gift card purchase, the purchase amount total of prepaid or gift cards in smallest currency unit. - `fraudData.giftCardCount` (number) For prepaid or gift card purchase, total count of individual prepaid or gift cards/codes purchased. - `fraudData.giftCardCurrency` (number) For prepaid or gift card purchase, ISO 4217 three-digits numeric currency code of the gift card, e.g. 978. - `fraudData.preOrderDate` (string) For a pre-ordered purchase, the expected date that the merchandise will be available (YYYY-MM-DD). - `fraudData.preOrderPurchaseIndicator` (boolean) Indicates whether customer is placing an order for merchandise with a future availability or release date. - `fraudData.reorderItemsIndicator` (boolean) Indicates whether the customer is reordering previously purchased merchandise. - `fraudData.shippingAddressIndicator` (string) Indicates shipping method chosen for the transaction. If one or more items are included in the sale, use the Shipping Indicator code for the physical goods, or if all digital goods, use the Shipping Indicator code that describes the most expensive item. - `fraudData.ipZone` (string) Codes of countries from which you accept orders, 3 digits numeric according to ISO 3166-1. Separate several countries by commas: 036,040,124. - `fraudData.zone` (string) Codes of countries where you accept credit cards, 3 digits numeric or alphanumeric according to ISO 3166-1. Separate several countries by commas: 036,040,124. - `paymentFacilitator` (object) Object specifying SubMerchant (Payment Facilitator) details. - `paymentFacilitator.subMerchantId` (string) SubMerchantID assigned by the Payment Facilitator. - `paymentFacilitator.subMerchantName` (string) Name of the SubMerchantID. - `paymentFacilitator.subMerchantCity` (string) City of the SubMerchantID. - `paymentFacilitator.subMerchantCountry` (string) Country code of the SubMerchantID according to ISO-3166-1, alphanumeric 2 chars. - `paymentFacilitator.subMerchantStreet` (string) Street of the SubMerchantID. - `paymentFacilitator.subMerchantZip` (string) Postcode of the SubMerchantID. - `paymentFacilitator.subMerchantState` (string) State of the SubMerchantID. - `browserInfo` (object) - `browserInfo.acceptHeaders` (string) Exact content of the HTTP accept headers as sent from the customer’s browser. - `browserInfo.ipAddress` (string) IP address of the browser as returned by the HTTP headers. - `browserInfo.javaEnabled` (boolean) Represents the ability of the customer's browser to execute Java. Required when Browser JavaScript Enabled = true; otherwise Optional. - `browserInfo.javaScriptEnabled` (boolean) Represents the ability of the customer's browser to execute JavaScript. - `browserInfo.language` (string) Value representing the browser language as defined in IETF BCP47, returned from navigator.language property, e.g. "en", "de", "fr", "en-US", "en-GB", "de-DE", "de-AT", etc. - `browserInfo.colorDepth` (number) Value representing the bit depth of the colour palette for displaying images, in bits per pixel. Required when Browser JavaScript Enabled = true; otherwise optional. - `browserInfo.screenHeight` (number) Total height of the Cardholder’s screen in pixels. Required when Browser JavaScript Enabled = true; otherwise optional. - `browserInfo.screenWidth` (number) Total width of the cardholder’s screen in pixels. Required when Browser JavaScript Enabled = true; otherwise optional. - `browserInfo.timeZoneOffset` (string) Time-zone offset in minutes between UTC and the Cardholder browser local time. Required when Browser JavaScript Enabled = true; otherwise optional. - `browserInfo.userAgent` (string) Exact content of the HTTP user-agent header. - `device` (object) - `device.deviceId` (string) Unique Device-ID. - `device.deviceType` (string) Enum: "DESKTOP", "TABLET", "SMARTPHONE" - `device.deviceOs` (string) Enum: "ANDROID", "IOS", "OTHERS" - `device.confidence` (number) A numerical value that indicates the level of confidence in the identification or verification of the customer's device. 0=no allocation, 100=absolutely safe allocation. - `device.newDevice` (boolean) Indicates whether the device being used is new or has not been previously recognized by the system. - `device.isAnonymousProxyUsed` (boolean) Specifies whether the customer is using an anonymous proxy to mask their IP address. - `device.isProxyUsed` (boolean) Indicates whether any kind of proxy is being used by the customer. - `device.country` (string) The country associated with the device's IP address. - `device.city` (string) The city associated with the device's IP address. - `device.latitude` (string) The latitude coordinate of the device's location. - `device.longitude` (string) The longitude coordinate of the device's location. - `device.fraudScore` (number) A numerical score that indicates the likelihood of fraudulent activity associated with the device. - `device.fraudScoreRules` (array) A list or description of the rules or criteria that contributed to the fraud score calculation for the device. - `device.browserLanguages` (array) A list of languages configured in the browser being used on the device. - `device.isMobileDevice` (boolean) Indicates whether the device being used is a mobile device. - `device.fraud` (string) Indicates whether the device has been flagged as potentially fraudulent based on predefined criteria. e.g. fraud, suspicion, nofraud. - `credentialOnFile` (object) - `credentialOnFile.type` (string) Indicates the type of credential-on-file transaction. Enum: "RECURRING", "UNSCHEDULED", "INSTALLMENTS" - `credentialOnFile.initialPayment` (boolean) Specifies whether the transaction is the initial payment in a credential-on-file setup. - `credentialOnFile.recurring` (object) - `credentialOnFile.recurring.useCase` (string) Describes the use case for the unscheduled transaction. Enum: "FIXED", "FLEXIBLE_AMOUNT", "FLEXIBLE_FREQUENCY" - `credentialOnFile.recurring.frequency` (string) Defines the frequency of recurring payments. Enum: "DAILY", "WEEKLY", "MONTHLY", "YEARLY" - `credentialOnFile.recurring.startDate` (string) The date when the recurring payment schedule begins in YYYY-MM-DD format. - `credentialOnFile.recurring.expiryDate` (string) The date when the recurring payment schedule ends or expires in YYYY-MM-DD format. - `credentialOnFile.unscheduled` (object) - `credentialOnFile.unscheduled.subType` (string) Specifies the sub-type of an unscheduled credential-on-file transaction. Enum: "CIT", "MIT" - `credentialOnFile.installments` (object) - `credentialOnFile.installments.total` (number) Total number of installments for a purchase. - `credentialOnFile.installments.curIdx` (number) The index or sequence number of the current installment in the series. - `credentialOnFile.installments.purchaseAmount` (number) The total purchase amount being paid in installments. - `credentialOnFile.installments.frequency` (string) The frequency of installment payments, such as "daily", "weekly", "monthly", or "yearly". Enum: "DAILY", "WEEKLY", "BIWEEKLY", "MONTHLY", "BIMONTHLY", "QUARTERLY", "YEARLY" - `credentialOnFile.installments.expiryDate` (string) The date when the installment plan ends or expires in YYYY-MM-DD format. - `channel` (string) Specifies the sales or interaction channel through which the transaction is initiated. Examples include "online", "in-store", "mobile app". Enum: "ECOM", "MOTO", "APP", "PAYBYLINK", "POS" - `metadata` (object) A collection of additional custom data provided by you to store extra information about the transaction. This is a set of JSON key value pairs passed by you. Paygate will return the data as it is in the response. - `referencePayId` (string) ## Response 200 fields (application/json): - `id` (string) ## Response 422 fields (application/json): - `payId` (string) A unique identifier assigned by Computop Paygate to the payment. This ID remains constant throughout the lifecycle of the payment and is used to track and reference the payment across all subsequent operations, such as authorization, capture, refund, or cancellation. - `merchantId` (string) Merchant ID assigned by Computop Paygate. - `transId` (string) Transaction ID provided by you in the request. - `xId` (string) A unique identifier assigned by Computop Paygate for each operation in the payment. For example: xId will be different for the authorization and capture operations of a payment whereas payId will be same. - `refNr` (string) Reference number provided by you in the request. - `status` (string) Status of the transaction. - `responseCode` (string) Response code of the transaction. - `responseDescription` (string) Response description associated with the response code. ## Response 500 fields (application/json): - `responseCode` (string) Example: "A specific identifier for the error cause" - `responseDescription` (string) Example: "A brief message explaining the error"