Skip to main content

Capture

POST 

/transaction/:apiKey/capture

A capture transaction completes the payment which was previously authorized with the Preauthorize method.

Depending on the payment method you can even capture only a partial amount of the authorized amount.

Request

Path Parameters

    apiKey stringrequired

    Possible values: <= 50 characters

    API Key of Connector

Body

required

Data which is required to process a capture

    merchantTransactionId MerchantTransactionId (string)required

    Possible values: non-empty and <= 50 characters

    A unique identifier supplied by the merchant to track transactions within their own systems.

    This field links the platform’s transaction back to the merchant’s system, allowing for easy tracking and reconciliation. Note that while this ID is used within the platform, there is no guarantee that it will be forwarded to the Payment Service Provider (PSP).

    additionalId1 AdditionalId1 (string)

    Possible values: non-empty and <= 50 characters

    A supplementary identifier dependent on the used adapter.

    This field provides additional information that can be used based on the specific adapter and their field mappings. The usage of additionalId1 is contingent upon the support provided by the PSP, which is detailed in the adapter-specific documentation. If this field is supported, its proper usage will be outlined there. If it is not mentioned, it should not be used to avoid integration issues. Always refer to the adapter-specific documentation for guidance on using this additional identifier correctly.

    additionalId2 AdditionalId2 (string)

    Possible values: non-empty and <= 50 characters

    A supplementary identifier dependent on the used adapter.

    This field provides additional information that can be used based on the specific adapter and their field mappings. The usage of additionalId2 is contingent upon the support provided by the PSP, which is detailed in the adapter-specific documentation. If this field is supported, its proper usage will be outlined there. If it is not mentioned, it should not be used to avoid integration issues. Always refer to the adapter-specific documentation for guidance on using this additional identifier correctly.

    extraData

    object

    Object containing key-value pairs (string-to-string), to be used by either the upstream Adapter, the Risk Engine etc.

    Possible values: <= 64.
    Property name: <= 64 characters.
    Property value: <= 8192 characters.

    property name* string

    pspPassthroughData

    object

    Object containing key-value pars (string-to-string) to be passed to the PSP.

    Possible values: <= 64.
    Property name: <= 64 characters.
    Property value: <= 8192 characters.

    property name* string
    merchantMetaData string

    Possible values: <= 255 characters

    referenceUuid stringrequired

    Possible values: non-empty and <= 50 characters

    amount Amount (string)required

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    currency Currency (string)required

    Possible values: Value must match regular expression ^[A-Z]{3}$

    ISO 4217 three-letter currency code.

    description string

    Possible values: <= 255 characters

    Description of your transaction.

    This might show up on a credit-card statement (depends on Adapter and PSP).

    items

    object[]

    Possible values: <= 128

    List of items sold.

    Maximum JSON size: <= 32768 bytes.

  • Array [

  • identification string

    Possible values: <= 128 characters

    name string

    Possible values: <= 256 characters

    description string

    Possible values: <= 2048 characters

    quantity integer

    Possible values: >= 1

    price integer

    Possible values: >= 1

    currency Currency (string)

    Possible values: Value must match regular expression ^[A-Z]{3}$

    ISO 4217 three-letter currency code.

    l2l3Data

    object

    type string

    Possible values: <= 32 characters

    unit string

    Possible values: <= 16 characters

    unitPrice Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    discount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    shippingAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    taxAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    taxRate Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    commodityCode string

    Possible values: <= 64 characters

    taxDetails

    object[]

    Possible values: <= 10

  • Array [

  • type string

    Possible values: <= 255 characters

    amount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    rate Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    code string

    Possible values: <= 255 characters

    taxId string

    Possible values: <= 255 characters

    applied string

    Possible values: <= 255 characters

    exemptionCode string

    Possible values: <= 255 characters

  • ]

  • extraData

    object

    Object containing key-value pairs (string-to-string), to be used by either the upstream Adapter, the Risk Engine etc.

    Possible values: <= 64.
    Property name: <= 64 characters.
    Property value: <= 8192 characters.

    property name* string
  • ]

  • splits

    object[]

    Possible values: <= 10

  • Array [

  • identification string

    Possible values: <= 11 characters

    amount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    currency Currency (string)

    Possible values: Value must match regular expression ^[A-Z]{3}$

    ISO 4217 three-letter currency code.

    sellerMerchantGuid string

    Possible values: <= 11 characters

    sellerMerchantExternalId string

    Possible values: <= 128 characters

    commissionFee

    object

    amount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    currency Currency (string)

    Possible values: Value must match regular expression ^[A-Z]{3}$

    ISO 4217 three-letter currency code.

  • ]

  • isFinalCapture boolean

    This flag indicates that this capture operation represents the final step, whether it concludes a series of captures or is a standalone capture. It is supported by specific adapters, contingent on the PSP's compatibility with this feature.

    If an adapter lacks support for this functionality, no error will be raised, and the flag will be ignored. Importantly, activating this flag doesn't automatically capture any remaining amount.

    l2l3Data

    object

    Level 2 & level 3 data.

    taxAmount string

    Possible values: <= 15 characters

    vatRegistrationNumber string

    Possible values: <= 255 characters

    nationalTaxIncluded string

    Possible values: <= 5 characters

    discountAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    commodityCode string

    Possible values: <= 255 characters

    freightAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    freightTaxAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    dutyAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    taxDetails

    object[]

    Possible values: <= 10

  • Array [

  • type string

    Possible values: <= 255 characters

    amount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    rate Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    code string

    Possible values: <= 255 characters

    taxId string

    Possible values: <= 255 characters

    applied string

    Possible values: <= 255 characters

    exemptionCode string

    Possible values: <= 255 characters

  • ]

Responses

Transaction response

Schema

    success

    string

    required

    Possible values: [true, false]

    Returns true or false depending on whether the request was successful.

    success booleanrequired

    Returns true or false depending on whether the request was successful.

    uuid string

    UUID of the transaction.

    purchaseId string

    Purchase ID of the transaction.

    returnType string

    Possible values: [FINISHED, REDIRECT, HTML, PENDING, ERROR, PENDING_DCC]

    Depending on the returnType a transaction is finished, intermediate, or failed.

    • FINISHED

      The transaction completed and was processed successfully. You can deliver the ordered goods.

    • ERROR

      The transaction failed or was declined. See the error code and message for further details.

      You will find the native error message and code from the payment provider/acquiring bank in the fields adapterMessage and adapterCode.

      Note: Merchant Advice Code

      When supported by an adapter implementation, a merchant advice code can be returned with the ReturnData.

      This code is piped through as received by the gateway.

      If a merchant advice code indicating a hard "do not retry" is returned, the value "doNotResubmit": true will additionally be returned with the error response extra data.

    • REDIRECT

      You must redirect the user to the URL defined in redirectUrl to proceed with the transaction. Afterwards the user will be back redirected to your website (one of the URLs you defined in the API call in successUrl, cancelUrl or errorUrl). In parallel the sends a status notification to you callbackUrl with the final result.

      Note:

      For the final result you should only trust the notification, NOT the back redirection!

    • PENDING

      The transaction was accepted for processing, but is not yet completed. You will receive a status notification to the URL you defined in callbackUrl once it reaches a final state.

      Depending on the payment method, this can take from seconds up to several days.

    redirectType string

    Possible values: [iframe, fullpage]

    Depending on the redirectType the URL from redirectUrl should be displayed either in an <iframe>, in a full page (e.g. via a HTTP 302 redirect with a Location header).

    redirectUrl uri

    Possible values: <= 255 characters

    URL the customer must be redirected to, only set if "returnType": "REDIRECT".

    redirectQRCode string

    QR Code with redirectUrl base64 encoded.

    htmlContent string

    HTML content the customer must be shown, only set if "returnType": "HTML".

    paymentDescriptor string
    paymentMethod string

    Payment method used - if it has already been determined.

    returnData

    object

    _TYPE

    string

    required

    Possible values: [cardData, phoneData, ibanData, walletData, achData]

    type string

    Type of credit card

    firstName string
    lastName string
    country Country (string)

    Possible values: Value must match regular expression ^[A-Z]{2}$

    ISO 3166-1 alpha-2 country code.

    cardHolder string
    expiryMonth string

    Possible values: Value must match regular expression ^((0[1-9])|(1[0-2]))$

    expiryYear string

    Possible values: Value must match regular expression ^[0-9]{4}$

    binDigits string

    Possible values: Value must match regular expression ^[0-9]{6-8}$

    firstSixDigits string

    Possible values: Value must match regular expression ^[0-9]{6}$

    lastFourDigits string

    Possible values: Value must match regular expression ^[0-9]{4}$

    fingerprint string
    binBrand string
    binBank string
    binType string
    binLevel string
    binCountry string
    threeDSecure ThreeDSecureType (string)

    Possible values: [OFF, OPTIONAL, MANDATORY]

    Triggers the 3D Secure authentication for this transaction.

    eci string
    merchantAdviceCode string

    Pipes through the merchant advice code for failed transactions if supported by the adapter.

    parsedMerchantAdviceCode string

    Possible values: [01, 02, 03]

    Merchant advice code for failed transactions if supported by the adapter.

    • 01 - Additional information needed.
    • 02 - Try again later.
    • 03 - Do not try again.
    schemeTransactionIdentifier string

    The schemeTransactionIdentifier, is a unique reference generated by a card scheme. It serves the purpose of traceability back to the initial transaction.

    It is also referred to as the 'scheme reference ID,' 'scheme transaction ID,' 'trace ID' (for Mastercard), or 'transaction ID' (for VISA).

    cardUpdateStatus stringnullable

    Possible values: [updated, contact, new-expiry, closed]

    Status of the last account updater run.

    Only non-null if the account updater is enabled and has run at least once.

    cardUpdatedAt date (string)nullable

    Possible values: Value must match regular expression ^[0-9]{4}-((0[1-9])|(1[0-2]))-((0[1-9])|([1-2][0-9])|(3[0-1]))$

    Last run of the account updater.

    Only non-null if the account updater is enabled and has run at least once. RFC 3339 Internet Date/Time Format full-date.

    scheduleData

    object

    scheduleId string

    ID of schedule which was started with the transaction.

    scheduleStatus ScheduleStatus (string)

    Possible values: [ACTIVE, PAUSED, CANCELLED, ERROR, CREATE-PENDING, NON-EXISTING]

    Status of the schedule.

    scheduledAt date-time

    Possible values: Value must match regular expression ^[0-9]{4}-((0[1-9])|(1[0-2]))-((0[1-9])|([1-2][0-9])|(3[0-1]))T(([0-1][0-9])|([2][0-3])):([0-5][0-9]):([0-5][0-9])\+[0-9]{2}\:[0-9]{2}$

    RFC 3339 Internet Date/Time Format date-time

    merchantMetaData string
    property name* any

    customerProfileData

    object

    profileGuid string

    The unique customer profile identifier generated by the platform.

    customerIdentification string

    The customer profile identifier provided by you when creating the customer profile. Unique within one customer profile container.

    paymentToken string

    The created payment instrument for the customer profile, use with transactionToken when creating new transactions.

    markAsPreferred boolean

    Whether this payment instrument was marked as preferred for the customer.

    property name* any

    riskCheckData

    object

    riskCheckResult string

    Possible values: [APPROVED, DECLINED, REVIEW]

    riskScore number
    threeDSecureRequired boolean
    property name* any

    errors

    object[]

  • Array [

  • errorMessage string

    Error message.

    While the errorMessage field provides useful context for understanding the nature of the error, it's important to note that the content of this message can vary based on specific circumstances. For consistent and reliable error handling in your application, always base your logic on the errorCode field, not the errorMessage.

    errorCode int32

    Error code.

    For a complete list of error codes and their meanings, please see the appendix on Error codes.

    adapterMessage stringnullable

    Adapter specific error message, passed verbatim from the upstream Adapter.

    adapterCode stringnullable

    Adapter specific error code, passed verbatim from the upstream Adapter.

  • ]

  • adapterMessage string
    adapterCode string

    extraData

    object

    Object containing key-value pairs (string-to-string), to be used by either the upstream Adapter, the Risk Engine etc.

    Possible values: <= 64.
    Property name: <= 64 characters.
    Property value: <= 8192 characters.

    property name* string

    dccData

    object

    uuid string
    originalAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    originalCurrency Currency (string)

    Possible values: Value must match regular expression ^[A-Z]{3}$

    ISO 4217 three-letter currency code.

    convertedAmount Amount (string)

    Possible values: Value must match regular expression ^(([0-9]{1,10})|([0-9]{1,10}\.[0-9]{1,3}))$

    Decimal amount separated by ., maximum of 3 decimals.

    convertedCurrency Currency (string)

    Possible values: Value must match regular expression ^[A-Z]{3}$

    ISO 4217 three-letter currency code.

    conversionRate number
    disclaimer string
    property name* any

    payByLinkData

    object

    payByLink booleandeprecated

    true if this transaction was a Pay-by-Link transaction.

    sendViaEmail boolean

    true if this Pay-by-Link was sent to the transaction customer via email.

    cancelUrl uri

    Endpoint to call to cancel a Pay-by-Link transaction.

    For details, see Pay-by-Link API reference.

    expiresAt date-time

    Indicates at what date time the Pay-by-Link transaction expires.

    property name* any
    property name* any
Loading...