Praxis Wiki logo

Agent API


{split-withdrawal-request} API function is a tool to process the customer's payout request in several payouts having the smaller amounts.

{danger.fa-exclamation} IMPORTANT: #1: Split payout is not compatible with some PSPs.


{danger.fa-exclamation} IMPORTANT: #2: Split payout creates an additional trace_id connected to the original withdrawal_request_id using the same customer's payment details.

Endpoints

Name URL
Sandbox https://gateway.cashier-test.com/agent/split-withdrawal-request
Live https://gw.praxisgate.com/agent/split-withdrawal-request

Request Parameters

✓ - required value
? - optional, value or null
✕ - always appears as null

Variable Type Description
merchant_id varchar(50) Merchant API client account identifier
application_key varchar(32) Identifier of your application (website)
amount int(20) Intended transaction amount in cents.
Please note: for certain currencies (see full list here) there is a fraction other than 100 cents per unit, this is important if you multiply by 100 to send the amount in cents
currency varchar(10) Transaction currency
withdrawal_request_id int(11) withdrawal request identifier
order_id varchar(50) Transaction identifier in your system
gateway varchar(32) Gateway to process the transaction
version varchar(3) API version
timestamp int(11) Request time (unix timestamp, seconds)

Response Parameters

Variable Type Description
status int API communication status - for transaction processing status please refer to transaction.transaction.status
- 0 if the request was successful
- Negative integer if internal server/network error occurs
- Positive integer if application/logical error occurs
description varchar(256) Accurate description of the result. Return the actual error for any exception as it helps to diagnose issues in production
customer <Object> Customer object
session <Object> Session object
transaction <Object> Transaction object. Appears in all cases except the authentication/validation error, or application malfunction
version varchar(3) API version
timestamp int(11) Response time (unix timestamp, seconds)

Signature

The full signature generation algorithm can be found in the Authentication section.

Request signature parameters

  1. merchant_id
  2. application_key
  3. timestamp
  4. withdrawal_request_id

Response signature parameters

  1. status
  2. timestamp
  3. customer.customer_token
  4. transaction.tid
  5. transaction.transaction_status
  6. transaction.processed_currency
  7. transaction.processed_amount

Example

Request

{
    "merchant_id" : "API-Example", 
    "application_key" : "example.com",
    "amount" : 250000,
    "currency" : "EUR",
    "withdrawal_request_id" : 132456789,
    "order_id" : "test-order17895432345",
    "gateway" : "s-pTSZyK23E1Ee5KZpcNbX_aFl0HuhQ0",
    "timestamp" : 1642110945,
    "version" : "1.3"
}

Response

{
    "status": 0,
    "description": "Ok",
    "customer": {
        "customer_token": "87cfb23a8f1e68e162c276b754d9c061",
        "country": "GB",
        "first_name": "John",
        "last_name": "Johnson",
        "avs_alert": 0,
        "verification_alert": 0
    },
    "session": {
        "auth_token": "8a7sd87a8sd778ac961062c6bedddb8",
        "intent": "withdrawal",
        "session_status": "action required",
        "order_id": "test-1560610955",
        "currency": "EUR",
        "amount": 500000,
        "conversion_rate": 1.000000,
        "processed_currency": "EUR",
        "processed_amount": 250000,
        "payment_method": "Credit Card",
        "gateway": "BY_TOKEN",
        "cid": "1",
        "variable1": "your variable",
        "variable2": "if that is not enough, you can pass even one more variable",
        "variable3": null
    },
    "transaction": {
        "transaction_type": "withdrawal",
        "transaction_status": "approved",
        "tid": 132456790,
        "transaction_id": "1334856765676566744",
        "currency": "EUR",
        "amount": 250000,
        "conversion_rate": 1.000000,
        "processed_currency": "EUR",
        "processed_amount": 250000,
        "fee": 0,
        "fee_included" : 0,
        "fee_type" : "flat",
        "payment_method": "Credit Card",
        "payment_processor": "TestCardProcessor",
        "gateway": "s-pTSZyK23E1Ee5KZpcNbX_aFl0HuhQ0",
        "card": {
            "card_token": "J-4-a0vPhjZ9R75JP98VDUFgbh9y8sYr",
            "card_type": "VISA",
            "card_number": "411111******1111",
            "card_exp": "12\/2024",
            "card_issuer_name": "Bank of Somewhere",
            "card_issuer_country": "GB"
        },
        "wallet": null,
        "is_async": 0,
        "is_cascade": 0,
        "cascade_level": 0,
        "reference_id": null,
        "withdrawal_request_id": 132456789,
        "account_identifier": null,
        "created_by": "INTERNET",
        "edited_by": null,
        "status_code": "001",
        "status_details": "Success"
    },
    "version": "1.3",
    "timestamp": 1590611635
}