Skip to main content
POST
/
Gateway
/
v
{version}
/
Settlements
curl --request POST \
  --url https://waypay-merchant-api.icydesert-41d42f7e.uaenorth.azurecontainerapps.io/Gateway/v1/Settlements \
  --header 'SWICH-API-Key: pk_test_xxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data '{
    "amount": 50000,
    "currency": "PKR",
    "payoutCurrency": "PKR",
    "bankName": "Meezan Bank",
    "iban": "PK24MEZN0003490001234567",
    "accountTitle": "My Business Account"
  }'
{
  "id": "aa0e8400-e29b-41d4-a716-446655440000",
  "merchantId": "bb0e8400-e29b-41d4-a716-446655440000",
  "amount": 50000,
  "currency": "PKR",
  "payoutCurrency": "PKR",
  "payoutAmount": 50000,
  "fee": 100,
  "netAmount": 49900,
  "fxRate": null,
  "fxRateTimestamp": null,
  "bankName": "Meezan Bank",
  "iban": "PK24MEZN0003490001234567",
  "accountTitle": "My Business Account",
  "usdtAddress": null,
  "status": 0,
  "requestedAt": "2025-12-12T11:00:00Z",
  "approvedAt": null,
  "processedAt": null,
  "failureReason": null,
  "isAuto": false
}

Overview

Create a settlement request to transfer funds from your Waypay wallet to your bank account or USDT address. Settlements can be in different currencies and support automatic currency conversion.

Path Parameters

version
string
required
API version (e.g., “1”)

Request Body

amount
number
Settlement amount to withdraw
currency
string
Source currency in your wallet (e.g., “PKR”, “USD”)
payoutCurrency
string
Destination currency for payout (e.g., “PKR”, “USD”, “USDT”)
bankName
string
Name of your bank (required for bank transfers)
iban
string
Your IBAN or account number (required for bank transfers)
accountTitle
string
Account title/holder name (required for bank transfers)
usdtAddress
string
USDT wallet address (required for crypto payouts)

Response

id
uuid
Unique settlement identifier
merchantId
uuid
Your merchant ID
amount
number
Settlement amount
currency
string
Source currency
payoutCurrency
string
Destination currency
payoutAmount
number
Amount to be paid out (after conversion)
fee
number
Settlement processing fee
netAmount
number
Net amount after fees
fxRate
number
Foreign exchange rate applied (if applicable)
fxRateTimestamp
datetime
When the FX rate was locked
bankName
string
Destination bank name
iban
string
Destination IBAN
accountTitle
string
Account holder name
usdtAddress
string
USDT wallet address
status
integer
Settlement status:
  • 0 - Pending
  • 1 - Approved
  • 2 - Processing
  • 3 - Completed
  • 4 - Failed
  • 5 - Cancelled
requestedAt
datetime
When settlement was requested
approvedAt
datetime
When settlement was approved
processedAt
datetime
When settlement was processed
failureReason
string
Reason for failure (if applicable)
isAuto
boolean
Whether this was an automatic settlement
curl --request POST \
  --url https://waypay-merchant-api.icydesert-41d42f7e.uaenorth.azurecontainerapps.io/Gateway/v1/Settlements \
  --header 'SWICH-API-Key: pk_test_xxxxxxxx' \
  --header 'Content-Type: application/json' \
  --data '{
    "amount": 50000,
    "currency": "PKR",
    "payoutCurrency": "PKR",
    "bankName": "Meezan Bank",
    "iban": "PK24MEZN0003490001234567",
    "accountTitle": "My Business Account"
  }'
{
  "id": "aa0e8400-e29b-41d4-a716-446655440000",
  "merchantId": "bb0e8400-e29b-41d4-a716-446655440000",
  "amount": 50000,
  "currency": "PKR",
  "payoutCurrency": "PKR",
  "payoutAmount": 50000,
  "fee": 100,
  "netAmount": 49900,
  "fxRate": null,
  "fxRateTimestamp": null,
  "bankName": "Meezan Bank",
  "iban": "PK24MEZN0003490001234567",
  "accountTitle": "My Business Account",
  "usdtAddress": null,
  "status": 0,
  "requestedAt": "2025-12-12T11:00:00Z",
  "approvedAt": null,
  "processedAt": null,
  "failureReason": null,
  "isAuto": false
}