# Capture payment This endpoint is used to capture an existing authorized payment. Endpoint: POST /payments/{id}/captures Version: 2.0.0 Security: bearerAuth, basicAuth ## Path parameters: - `id` (string, required) PayId assigned by Axepta Online in the initial request. ## Header parameters: - `Idempotency-Key` (string) A unique key provided by you to ensure that a particular operation is not processed multiple times in case of retries. ## Request fields (application/json): - `transId` (string, required) Transaction ID created in your system. It should be unique for each payment. Example: "test-TransactionId01" - `amount` (object, required) - `amount.value` (number, required) Total order amount in smallest currency unit including taxes, shipping costs, discounts, etc. - `amount.currency` (string, required) 3-character ISO currency code. - `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. - `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. - `statementDescriptor` (string) Short, clear description of the transaction that appears on the customer's statement. - `captureMethod` (object) - `captureMethod.manual` (object) - `captureMethod.manual.currentSequence` (number) Represents the sequence number of the current manual capture in a series of captures for a single transaction. Relevant for multiple partial captures. - `captureMethod.manual.final` (boolean) Indicates whether the current manual capture is the final capture for the transaction. Relevant for multiple partial captures.True means final capture.False means not a final capture. - `captureMethod.manual.total` (number) Indicates the total number of partial captures will be sent. - `enhancedData` (object) - `enhancedData.common` (object, required) - `enhancedData.common.amounts` (object, required) - `enhancedData.common.amounts.grossAmount` (integer) - `enhancedData.common.amounts.netAmount` (integer) - `enhancedData.common.amounts.taxAmount` (integer) - `enhancedData.common.tax` (object) - `enhancedData.common.tax.taxRate` (number) - `enhancedData.common.tax.taxTypeIndicator` (string) Enum: "ValueAddedTax", "SalesTax", "Other" - `enhancedData.carRental` (object) - `enhancedData.carRental.airPlus` (object) - `enhancedData.carRental.airPlus.rentalInformation` (object, required) - `enhancedData.carRental.airPlus.rentalInformation.carMake` (string, required) - `enhancedData.carRental.airPlus.rentalInformation.departureDate` (string) In format: YYYY-MM-DD - `enhancedData.carRental.airPlus.rentalInformation.customerOrderNumber` (string) - `enhancedData.carRental.airPlus.rentalInformation.costPerMile` (integer) - `enhancedData.carRental.airPlus.rentalInformation.milesDriven` (integer, required) - `enhancedData.carRental.airPlus.rentalInformation.driver` (object, required) - `enhancedData.carRental.airPlus.rentalInformation.driver.firstName` (string) - `enhancedData.carRental.airPlus.rentalInformation.driver.middleName` (string) - `enhancedData.carRental.airPlus.rentalInformation.driver.lastName` (string) - `enhancedData.carRental.airPlus.rentalInformation.vehicleGroup` (string) - `enhancedData.carRental.airPlus.rentalInformation.carRentalCompanyId` (string, required) Enum: "D", "F", "G", "H", "M", "O", "P", "T", "W", "Y", "Z" - `enhancedData.carRental.airPlus.rentalInformation.fuelConsumption` (integer) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation` (object, required) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.accountingUnit` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.businessUnit` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.actionNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.voucherNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.department` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.discountNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.internalAccountNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.costCenter` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.customerNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.customerReference` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.employeeNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.projectNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.invoiceDate` (string) In format: YYYY-MM-DD - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.invoiceNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.destination` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.taxRegistrationNumber` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.comments` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.misc` (string) - `enhancedData.carRental.airPlus.billingAndInvoiceInformation.countryCode` (string, required) - `enhancedData.carRental.airPlus.mileageUnit` (string, required) Enum: "Km", "Mi" - `enhancedData.carRental.airPlus.odometerStart` (integer, required) - `enhancedData.carRental.airPlus.odometerReturn` (integer, required) - `enhancedData.carRental.airPlus.telcoUnits` (integer) - `enhancedData.carRental.airPlus.carSharing` (object) - `enhancedData.carRental.airPlus.carSharing.nonVATableNetAmount` (integer) - `enhancedData.carRental.airPlus.carSharing.documentNumber` (string, required) Size: 10, internal document number of the related service as printed on the voucher, train-ticket, etc. - `enhancedData.carRental.airPlus.carSharing.serviceDescription` (string, required) Size: 135, will be parsed into 3 sub-fields with 45 digits each - `enhancedData.carRental.airPlus.carSharing.serviceType` (string) - `enhancedData.carRental.airPlus.carSharing.hotelBookingDetails` (object) - `enhancedData.carRental.airPlus.carSharing.hotelBookingDetails.name` (string) - `enhancedData.carRental.airPlus.carSharing.hotelBookingDetails.checkInDate` (string) In format: YYYY-MM-DD - `enhancedData.carRental.airPlus.carSharing.hotelBookingDetails.locationCity` (string) - `enhancedData.carRental.airPlus.carSharing.hotelBookingDetails.roomNights` (number) - `enhancedData.carRental.airPlus.lineItems` (array) - `enhancedData.carRental.airPlus.lineItems.itemDescription` (string, required) Enum: "C9", "CB", "CC", "CG", "CI", "CJ", "CT", "CU", "CV", "CW", "CX", "CY", "D4", "D7", "D8", "D9", "DA", "O6", "OQ" - `enhancedData.carRental.amex` (object) - `enhancedData.carRental.amex.cancellationReason` (string) - `enhancedData.carRental.amex.bookingSourceCode` (string) Enum: "OnlineBooking", "SelfBookingTool", "AfterHoursBooking", "PhoneBooking" - `enhancedData.carRental.amex.mediaCode` (string) Enum: "CardmemberSignatureOnFile", "PhoneOrder", "MailOrder", "InternetOrder", "RecurringBilling" - `enhancedData.carRental.amex.globalDistributionSystem` (string) Enum: "Amadeus", "Sabre", "Galileo" - `enhancedData.carRental.amex.originalAmount` (integer) - `enhancedData.carRental.amex.originalCurrencyCode` (string) - `enhancedData.carRental.amex.additionalAmounts` (array, required) - `enhancedData.carRental.amex.additionalAmounts.amountTypeCode` (string, required) - `enhancedData.carRental.amex.additionalAmounts.transactionType` (string, required) Enum: "Debit", "Credit" - `enhancedData.carRental.amex.travellers` (array) - `enhancedData.carRental.amex.consultant` (string) - `enhancedData.carRental.amex.supplier` (object, required) - `enhancedData.carRental.amex.supplier.matchCode` (string) - `enhancedData.carRental.amex.supplier.legalName` (string) - `enhancedData.carRental.amex.supplier.address` (object) - `enhancedData.carRental.amex.supplier.address.street` (string) - `enhancedData.carRental.amex.supplier.address.city` (string) - `enhancedData.carRental.amex.supplier.address.zipCode` (string) - `enhancedData.carRental.amex.supplier.address.state` (string) - `enhancedData.carRental.amex.supplier.address.country` (string) - `enhancedData.carRental.amex.provider` (object, required) - `enhancedData.carRental.amex.provider.travelAgencyCode` (string, required) - `enhancedData.carRental.amex.provider.travelOfficeCode` (string, required) - `enhancedData.carRental.amex.provider.transactionReference` (string, required) - `enhancedData.carRental.amex.provider.invoiceIndicator` (string, required) Enum: "N", "Y", "R" - `enhancedData.carRental.amex.provider.invoice` (object) - `enhancedData.carRental.amex.provider.invoice.number` (string) - `enhancedData.carRental.amex.provider.invoice.date` (string) In format: YYYY-MM-DD - `enhancedData.carRental.amex.provider.invoice.associatedNumber` (string) - `enhancedData.carRental.amex.provider.iataNumber` (integer) - `enhancedData.carRental.amex.provider.serviceCentre` (string) - `enhancedData.carRental.amex.provider.terminalId` (string) - `enhancedData.carRental.amex.provider.providerReference` (string) - `enhancedData.carRental.amex.provider.electronicInvoiceLocation` (string) - `enhancedData.carRental.amex.bookingSystem` (object) - `enhancedData.carRental.amex.bookingSystem.bookingSystemReference` (string) - `paymentMethods` (object) - `paymentMethods.card` (object) - `paymentMethods.card.finishAuth` (boolean) Transmit value in order to stop the renewal of guaranteed authorisations and rest amounts after partial captures. Use this parameter only if you are using the additional function ETM (Extended Transactions Managament). - `paymentMethods.directDebit` (object) - `paymentMethods.directDebit.mandateId` (string) for SEPA: SEPA mandate number (compulsory in the case of SEPA). Should be unique, is not case-sensitive. Permissible characters: numbers 0-9, upper case letters A-Z, lower case letters a-z, apostrophe, colon, question mark, comma, full stop, plus sign, minus sign, forward slash, left and right bracket. - `paymentMethods.directDebit.dateOfSignature` (string) for SEPA: Date of issuing the mandate in the format DD.MM.YYYY (obligatory when transferring the MandateID). - `paymentMethods.klarna` (object) - `paymentMethods.klarna.completeType` (string) With this parameter during a partial capture it is possible to reverse the remaining amount simultaneously. Possible value "YES". If the order was processed completely this parameter will cause an error, because a remaining amount of 0 cannot be reversed. - `paymentMethods.klarna.shippingInfo` (object) Delivery information (e.g. tracking data) - `paymentMethods.klarna.shippingInfo.trackingId` (string) Tracking number for the shipment. - `paymentMethods.klarna.shippingInfo.returnTrackingId` (string) Tracking number for the return shipment. - `paymentMethods.klarna.shippingInfo.returnShippingCompany` (string) Identifier of the shipping company. The value should be a valid SHIPPING_COMPANY from the Carrier list: https://docs.klarna.com/payments/after-payments/order-management/more-actions/klarna-carrier-partner-list/ - `paymentMethods.klarna.shippingInfo.shippingCompany` (string) Identifier of the shipping company. The value should be a valid SHIPPING_COMPANY from the Carrier list: https://docs.klarna.com/payments/after-payments/order-management/more-actions/klarna-carrier-partner-list/ - `paymentMethods.klarna.shippingInfo.shippingMethod` (string) Shipping method. Enum: "PICK_UP_STORE", "HOME", "BOX_REG", "BOX_UNREG", "PICK_UP_POINT", "OWN", "POSTAL", "DHL_PACKSTATION", "DIGITAL", "UNDEFINED", "PICK_UP_WAREHOUSE", "CLICK_COLLECT", "PALLET_DELIVERY_PICK_UP_POINT", "PALLET_DELIVERY" - `paymentMethods.klarna.shippingInfo.trackingUrl` (string) URL where the customer can track their shipment. - `paymentMethods.klarna.shippingInfo.returnTrackingUrl` (string) URL where the customer can track the return shipment. - `paymentMethods.mobilePay` (object) - `paymentMethods.mobilePay.finishAuth` (boolean) Transmit value Y in order to stop the prolongation of guaranteed authorizations and rest amounts after partial captures. - `paymentMethods.mobilePay.textfield1` (string) Card holder information: Name. - `paymentMethods.mobilePay.textfield2` (string) Card holder information: City. - `paymentMethods.payPal` (object) - `paymentMethods.payPal.completeType` (boolean) Defines the completeness of capture for an open Paypal order. If sent as true, order is closed for capture. Reason: a 115% capture is permissible on the part of PayPal. If a capture reached 100%, Axepta Online automatically sends a request to close the payment. - `paymentMethods.riverty` (object) - `paymentMethods.riverty.shippingInfo` (object, required) - `paymentMethods.riverty.shippingInfo.type` (string, required) Dispatch type. Enum: "SHIPMENT", "RETURN" - `paymentMethods.riverty.shippingInfo.shippingCompany` (string, required) Shipping company - `paymentMethods.riverty.shippingInfo.trackingId` (string, required) Unique TrackingID ## Response 200 fields (application/json): - `payId` (string) A unique identifier assigned by Axepta Online 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 Axepta Online. - `transId` (string) Transaction ID provided by you in the request. - `xId` (string) A unique identifier assigned by Axepta Online 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. - `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 as you passed in the request. - `paymentMethods` (object) - `paymentMethods.card` (object) - `paymentMethods.card.providerResponseCode` (string) Returned only when Acquirer is Clearhaus or MasaPay. - `paymentMethods.card.providerResponseText` (string) Returned only when Acquirer is Clearhaus or MasaPay. Information is passed only when status is FAILED. - `paymentMethods.card.providerTransactionId` (string) Provider transaction ID. Returned only when Acquirer is Clearhaus. - `paymentMethods.card.providerApprovalCode` (number) Approval Code returned by acquirer. - `paymentMethods.klarna` (object) - `paymentMethods.klarna.providerResponseCode` (string) Response code from Klarna. - `paymentMethods.klarna.providerResponseText` (string) Response description from Klarna. - `paymentMethods.klarna.invoiceNumber` (string) Invoice/booking number from Klarna. This number is needed for example for resending the E-Mail with payment and order information. - `paymentMethods.payPal` (object) - `paymentMethods.payPal.providerResponseCode` (number) Error code from PayPal if agreed with Axepta Online Helpdesk. - `paymentMethods.payPal.providerTransactionId` (string) Unique PayPal-generated Capture ID. The value is required for a refund after several partial captures. - `paymentMethods.ratepay` (object) - `paymentMethods.ratepay.authorizationExpiry` (string) The date and time when remaining un-cancelled and un-captured authorized amount will be automatically cancelled. Available only for successful responses HTTP 201. - `paymentMethods.ratepay.account` (object) - `paymentMethods.ratepay.account.bankName` (string) Bank name of the bank account the customer has to transfer the money to. Provided only when paymentMethod.ratepay.transferType is sent as BANK_TRANSFER in request. - `paymentMethods.ratepay.account.code` (string) Bank identifier code of the bank account the customer has to transfer the money to. Provided only when paymentMethod.ratepay.transferType is sent as BANK_TRANSFER in request. - `paymentMethods.ratepay.account.number` (string) International bank account number of the bank account the customer has to transfer the money to. Provided only when paymentMethod.ratepay.transferType is sent as BANK_TRANSFER in request. - `paymentMethods.ratepay.account.accountHolderName` (string) Account holder of the bank account the customer has to transfer the money to. Provided only when paymentMethod.ratepay.transferType is sent as BANK_TRANSFER in request. - `paymentMethods.ratepay.paymentReference` (string) Purpose to be indicated in the bank transfer (generated by Ratepay). Provided only when paymentMethod.ratepay.transferType is sent as BANK_TRANSFER in request. - `paymentMethods.ratepay.providerTransactionId` (string) ID of transaction generated by Ratepay during authorization. A transaction ID is generated for both accepted and declined transactions. - `paymentMethods.riverty` (object) - `paymentMethods.riverty.providerResponseCode` (number) Response code from Riverty. - `paymentMethods.riverty.providerResponseText` (string) Response text from Riverty. - `paymentMethods.riverty.invoiceNumber` (string) Booking number generated by merchant or, if not available, by Riverty. Is necessary for partial credits. ## Response 400 fields (application/json): - `field` (string) Example: "transId" - `error` (string) Example: "This field is required." ## Response 422 fields (application/json): - `payId` (string) A unique identifier assigned by Axepta Online 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 Axepta Online. - `transId` (string) Transaction ID provided by you in the request. - `xId` (string) A unique identifier assigned by Axepta Online 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. - `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 as you passed in the request. - `paymentMethods` (object) - `paymentMethods.card` (object) - `paymentMethods.card.providerResponseCode` (string) Returned only when Acquirer is Clearhaus or MasaPay. - `paymentMethods.card.providerResponseText` (string) Returned only when Acquirer is Clearhaus or MasaPay. Information is passed only when status is FAILED. - `paymentMethods.floapay` (object) - `paymentMethods.floapay.providerResponseText` (string) Error text from FLOA Pay. - `paymentMethods.floapay.providerResponseCode` (string) Error code from FLOA Pay. - `paymentMethods.payPal` (object) - `paymentMethods.payPal.providerDeclineCategory` (string) Error code from PayPal if agreed with Axepta Online Helpdesk. - `paymentMethods.klarna` (object) - `paymentMethods.klarna.providerResponseCode` (string) Response code from Klarna . - `paymentMethods.klarna.providerResponseText` (string) Response description from Klarna . - `paymentMethods.ratepay` (object) - `paymentMethods.ratepay.providerDeclineCategory` (string) Decline category provider by Ratepay. See Decline Categories for details. - `paymentMethods.ratepay.providerResponseText` (string) A message from Ratepay describing which constraint was violated. - `paymentMethods.ratepay.providerResponseCode` (string) List of none, one or multiple reasons why the request was declined. See Decline Categories to learn about possible reasons for each decline category. ## Response 500 fields (application/json): - `responseCode` (string) Example: "A specific identifier for the error cause" - `responseDescription` (string) Example: "A brief message explaining the error"