Skip to content
Menu

Capture

Info

This transaction type is available for: Cards.

A Capture is used to complete a previously authorized payment by capturing all or part of the authorized amount.

To perform a Capture, send a POST request to the /payments/{original-tx-id}/capture endpoint, referencing the original Authorization transactionID.

The following capture operations are supported:

Capture TypeDescription
Full CaptureCaptures the full authorized amount in a single request. 
Partial CaptureCaptures part of the authorized amount. Multiple Capture requests may be performed until the total authorized amount is reached. 
Capture operation:
OperationOperation TypeOperation Method & EndpointDescription
CardSynchronous CallPOST /payments/{original-tx-id}/captureRequests the financial capture (partial or full amount) of a previous Authorization transaction. 
Header parameters:
FieldTypeRequiredDescriptionExample
Content-TypestringMandatoryDefines the content type of the request.application/json 
AuthorizationstringMandatoryBearer token obtained during the OAuth2 authentication process.Bearer eyJhbGc…
x-ibm-client-idstringMandatoryToken identifying the client organization. This value is provided during the onboarding process and must be included in every API request.123456789
Request parameters

The following objects define the Capture request structure. Depending on the transaction scenario, some objects may have specific usage conditions. Nested fields are represented using dot notation for readability. 

All examples shown in this documentation are illustrative. 

Merchants must provide valid values according to their integration, business rules and payment configuration. 

Merchant (object) – Mandatory 

Merchant information used to identify the transaction.

FieldTypeConditionDescriptionExample
Request Body.merchant objectMandatoryMerchant object container. — 
merchant.terminalIdstring (Max10NumericText) MandatoryMerchant Terminal Identification. 24
merchant.channel stringMandatoryMerchant channel.web
merchant.transactionId string (Max1000Text)MandatoryUnique identifier defined by the merchant.

This field must not contain the semicolon (;) character, as it is used as a column delimiter in EOD and reporting files. 
ORDER_20260309_001 
merchant.transactionDescription string (Max4000Text) Optional Merchant transaction description.

This field must not contain the semicolon (;) character, as it is used as a column delimiter in EOD and reporting files. 
Payment for order #1001 
Customer (object) – Mandatory

Customer information associated with the Capture request. 

FieldTypeConditionDescriptionExample
Request Body.customer object Mandatory Customer object container. — 
customer.customerInfo object Mandatory Object containing predefined customer information. — 
customer.customerInfo.customerName string Optional Customer name. John Smith 
customer.customerInfo.shippingAddress object Mandatory Customer shipping address. — 
customer.customerInfo.shippingAddress.street1 string (Max70Text) Optional Shipping street address. Baker Street 221B 
customer.customerInfo.shippingAddress.street2 string (Max70Text) Optional Additional shipping address information. Apartment 5 
customer.customerInfo.shippingAddress.city string (Max35Text) Optional Shipping city or town. Warsaw 
customer.customerInfo.shippingAddress.postcode string (Max16Text) Optional Shipping postal code. 00-001 
customer.customerInfo.shippingAddress.countrySubDivisiostring (Max35Text) Optional Shipping subdivision (state, region or county). Mazowieckie
customer.customerInfo.shippingAddress.country Country Code (Alpha-2) OptionalShipping country code.PL
customer.customerInfo.billingAddress object Mandatory Customer billing address. — 
customer.customerInfo.billingAddress.street1 string (Max70Text) Optional Billing street address. Baker Street 221B 
customer.customerInfo.billingAddress.street2 string (Max70Text) Optional Additional billing address information. Apartment 5 
customer.customerInfo.billingAddress.city string (Max35Text) Optional Billing city or town. Warsaw
customer.customerInfo.billingAddress.postcode string (Max16Text) Optional Billing postal code. 00-001
customer.customerInfo.billingAddress.countrySubDivisionstring (Max35Text) Optional Billing subdivision (state, region or county). Mazowieckie 
customer.customerInfo.billingAddress.country Country Code (Alpha-2) Optional Billing country code. PL 
customer.customerInfo.billingAddressSameAsAddress boolean Optional Indicates whether the billing address is the same as the shipping address.true
customer.extendedInfo array Mandatory Collection of merchant-defined key-value pairs.— 
customer.extendedInfo.key stringOptional Key name. loyaltyLevel 
customer.extendedInfo.value stringOptional Key value. Gold 
Transaction (object) – Mandatory

Transaction details associated with the Capture request. 

FieldTypeConditionDescriptionExample
Request Body.transaction object MandatoryTransaction object container. – 
transaction.transactionTimestamp string (ISODateTime) MandatoryTransaction timestamp. 2026-03-09T14:30:15.123Z 
transaction.description string MandatoryShort description of the transaction. This is a capture request 
transaction.amount objectMandatoryTransaction amount details. – 
transaction.amount.value number (double) MandatoryTransaction amount. 10
transaction.amount.currency Currency Code (Alpha-3) MandatoryTransaction currency using the ISO 4217 Alpha-3 code. PLN
transaction.settlementPoint settlementPoints OptionalTransaction Amount Settlement Points array. – 
transaction.settlementPoint.id string (Max36Text) MandatorySettlement Point unique identifier. SP001 
transaction.settlementPoint.amount objectMandatorySettlement Point amount details. – 
transaction.settlementPoint.amount.value number (double) MandatorySettlement Point amount. 10
transaction.settlementPoint.amount.currency Currency Code (Alpha-3) MandatorySettlement Point currency using the ISO 4217 Alpha-3 code. PLN 
transaction.cart cart ConditionalArray of SKUs to be captured. Must be used for partial Capture operations processed with Buy Now Pay Later payment methods. – 
Mandatory
Mandatory
</>JSON 
{ 
  "merchant": { 
    "terminalId": 24, 
    "channel": "web", 
    "merchantTransactionId": "BO_Order Id: c9876bcasd", 
    "transactionDescription": "Payment for order #1001" 
  }, 
  "transaction": { 
    "transactionTimestamp": "2022-05-29T18:23:41.367Z", 
    "description": "This is a capture request", 
    "amount": { 
      "value": 10, 
      "currency": "PLN" 
    }, 
    "originalTransaction": { 
      "id": "mvuy3dh3wucpsi4389fh" 
    } 
  } 
} 

The response below, will include the transaction ID, which you can use to check the status.

{
    "merchant": {
        "terminalId": "101776",
        "merchantTransactionId": "BO_Order Id: ",
        "merchantTransactionTimestamp": "2023-06-20T11:15:57.040Z"
    },
    "transactionTimestamp": "2023-06-20T11:16:14.988Z",
    "amount": {
        "value": "1",
        "currency": "PLN"
    },
    "transactionID": "RW5vBMHj4RhQWFRc0GvS",
    "execution": {
        "startTime": "2023-06-20T11:15:57.206Z",
        "endTime": "2023-06-20T11:16:15.100Z"
    },
    "paymentStatus": "Success",
    "returnStatus": {
        "statusCode": "000",
        "statusMsg": "Success",
        "statusDescription": "Success."
    }
}

Afterwards, once the payment has been processed, you can check the status of your transaction making a GET request.

The Authorisation HTTP header is set to the Bearer token as it was used in the initial Checkout.

Request URL:
https://stargate.qly.site1.sibs.pt/api/v1/payments/{transactionID}/status
Request Headers:
Autorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6I (...)
X-IBM-Client-Id: b4480347-9fc8-4790-b359-100a99c60ea3
Content-Type: application/json

A successful technical response comprises of an HTTP-200 status and a returnStatus.statusCode=”000″.

Here are some examples of the possible result codes:

Result codestatusMsgDescriptionAction
HTTP-200SuccessSuccess responsen/a.
HTTP-400Bad RequestThe JSON payload is not matching the API definition or some mandatory HTTP headers are missing.Please check in API Market for the correct syntax.
HTTP-401UnauthorizedOn the Authorization, Bearer token is invalid/expired or not associated with the Terminal used.Please check in SIBS Backoffice under the Credentials if the token is valid and create a new one if needed.
HTTP-403ForbiddenThe ClientID set on the X-IBM-Client-Id HTTP header is not valid or does not possess a valid subscription to the API.Please check in SIBS Backoffice under the SPG APP 2.0 if the ClientID is correct. If the problem persists contact SIBS Gateway support for a ClientID reset.
HTTP-405Method Not AllowedThe HTTP Method used is not matching any of the API definitions available.Please check in API Market for the correct HTTP Method.
HTTP-429Too Many RequestsThe API calls rate limit has been exceeded.Please check in API Market for information on the rate limits that apply to the API.
HTTP-500Internal Server ErrorThe API call has failed… and its most likely on our side.You should retry the operation, and if the problem persists contact SIBS Gateway support for assistance.
HTTP-503Service UnavailableThe API call is not currently available. Usually we are always on, but short availability issues may occur during scheduled maintenance.You should wait and try again later.
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Strictly Necessary Cookies

Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.