Praxis Wiki logo

Agent API {deposit-capture}


{deposit-capture} API function lets you capture the authorized payment card deposit transaction. In simple words it is an API call to send the authorized customer's funds to the merchant account immediately.
Authorize and following Capture/Cancel API methods can be used by the merchant for automated capture or cancel operations upon the authorized transaction notification

{danger.fa-exclamation} IMPORTANT #1: This notification is only specific to payment card processors that support authorization and capture as two separate steps (the standard approach is a combined sale action).


{danger.fa-exclamation} IMPORTANT #2: Even if the PSP supports the authorize and capture steps, you should contact the support representative to confirm that the two-step processing is enabled for your channel within Backoffice.

ENDPOINTS

Name URL
Sandbox https://pci-gw-test.praxispay.com/api/deposit-capture
Live https://gw.praxisgate.com/api/deposit-capture

REQUEST PARAMETERS

Variable Type Description
merchant_id varchar(50) Required. Merchant API client account identifier
application_key varchar(32) Required. Identifier of your application (website)
trace_id int(11) Required. Transaction identifier at that is previously sent to CRM within authorized transaction notification.
timestamp int(11) Required. Request time. URL will be active during 1 min after this time
version varchar(3) Required. API version
signature varchar(96) Required. Hash of the request parameters

RESPONSE PARAMETERS

Variable Type Description
status int Required.
- 0 if the request was successful
- Negative integer if internal server/network error occurs
- Positive integer if application/logical error occurs
description varchar(256) Required. Accurate description of the result. Return the actual error for any exception as it helps to diagnose issues in production
version varchar(3) Required. API version
signature varchar(96) Required. sha384 HASH code of response (same algorithm as request signature)

EXAMPLE

Request

For example below: Merchant Secret = "MerchantSecretKey"

curl -X POST \
https://gw.praxisgate.com/api/deposit-capture \
-H 'Content-Type: application/json' \
-H 'cache-control: no-cache' \
-d '{
    "application_key": "Sandbox",
    "merchant_id": "Test-Integration-Merchant",
    "timestamp": 1578879982,
    "trace_id": 752856,
    "version": "1.2",
    "signature": "2cd5e9d095ecf90d7b1cc2c4a8d3f18991502f6798660445160856f6b98560ed99aba7dd9bd66783390d7e2dfdcbf03d"
}'

Response (OK)

{
    "description": "Successful capture: trace_id=752856",
    "status": 0,
    "version": "1.2",
    "signature": "317ed9f857d14c67620740fb68b3bd5cd562dc186cadba48bc8fc73cfd5c0d55c42de0353af7da3385ade41914cac4f7"
}

Response (ERR)

{
    "description": "Capture failed. Transaction not found: trace_id=752856",
    "status": 1,
    "version": "1.2",
    "signature": "7d35b3b510ee6714a1cb8da83781126086238d1065e90b926b4387add498f162dd7dec0c3171008c8dfb53df2fdd99cb"
}

Please refer to How to Build Signature for details on signing the request.

You are currently viewing version 3.4 Latest version here