List withdrawals
- Sandbox:
POST https://sandbox.payme.io/api/get-withdrawals - Production:
POST https://live.payme.io/api/get-withdrawals
Credentials
- Header
PayMe-Partner-Key(optional): Partner key, instead ofpayme_client_keyin the body. Partners only. - Header
PayMe-Merchant-Key(optional): A seller's own MPL, instead ofseller_payme_idin the body. - Request body field
payme_client_key(optional): Partner key. Partners only. Can also be sent in thePayMe-Partner-Keyheader. Withoutseller_payme_id, the query covers all your sellers. - Request body field
seller_payme_id(optional): The seller's MPL. A partner can send one MPL or an array of up to 100 MPLs of its own sellers to narrow the query. A seller sends its own MPL, here or in thePayMe-Merchant-Keyheader, and gets only its own data.
Returns past withdrawals (payouts to the seller's bank account) for one seller or all your sellers. Canceled withdrawals are not returned. Use withdrawal_payme_code to match a withdrawal to the withdrawal_id from withdraw-balance and to the tran_payme_code of the withdrawal-complete callback. To match a withdrawal to its sales, see Reconcile sales and withdrawals.
A partner sends payme_client_key (or the PayMe-Partner-Key header) and, optionally, seller_payme_id: one MPL or an array of up to 100 MPLs of its own sellers. Without it, the query covers all your sellers. A seller sends its own MPL as seller_payme_id in the body, or in the PayMe-Merchant-Key header, and gets only its own data.
When you send exactly one seller_payme_id, the response also returns it at the top level, with seller_id. An inactive seller then returns error 163, and a seller that isn't yours returns error 20.
Filters are exact matches, except withdrawal_created_min / withdrawal_created_max. Most filters take a single value or an array of up to 100 values. Dates are yyyy-mm-dd hh:mm:ss, Asia/Jerusalem time.
Results come in pages of up to 500 items (default 500). A call without page and page_size returns only the first 500. Paging, sorting and filter rules are on Query APIs.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
PayMe-Partner-Key |
header | string | no | Partner key, instead of payme_client_key in the body. Partners only. |
PayMe-Merchant-Key |
header | string | no | A seller's own MPL, instead of seller_payme_id in the body. |
Request body
Content type: application/json
Every field is optional. Send at least your credentials.
| Field | Type | Required | Description |
|---|---|---|---|
payme_client_key |
string | no | Partner key. Partners only. Can also be sent in the PayMe-Partner-Key header. Without seller_payme_id, the query covers all your sellers. |
seller_payme_id |
string | no | The seller's MPL. A partner can send one MPL or an array of up to 100 MPLs of its own sellers to narrow the query. A seller sends its own MPL, here or in the PayMe-Merchant-Key header, and gets only its own data. |
withdrawal_payme_code |
integer | no | PayMe's withdrawal code (the withdrawal_id from withdraw-balance). |
withdrawal_created |
string | no | Exact creation date and time, yyyy-mm-dd hh:mm:ss. |
withdrawal_created_min |
string | no | Created at or after this time, yyyy-mm-dd hh:mm:ss. |
withdrawal_created_max |
string | no | Created at or before this time, yyyy-mm-dd hh:mm:ss. |
withdrawal_total |
integer | no | Exact amount, in minor units (5075 = 50.75). |
withdrawal_currency |
string | no | Withdrawal currency, 3-letter ISO 4217 code. |
page |
integer | no | Page number, 1–1000. Default 1. Out of range returns error 52. |
page_size |
integer | no | Items per page, 1–500. Default 500. Out of range returns error 27. |
items_order_by_column |
string | no | Field to sort by, for example withdrawal_created. Without it, the order isn't guaranteed and items_order_by_direction is ignored. |
items_order_by_direction |
string | no | asc (default) or desc, in upper or lower case. Used only with items_order_by_column. Any other value returns error 28. |
Request example
{
"payme_client_key": "XXXXXXXX",
"seller_payme_id": "MPLDEMO-MPLDEMO-MPLDEMO-1234567",
"withdrawal_created_min": "2026-10-01 00:00:00",
"items_order_by_column": "withdrawal_created",
"items_order_by_direction": "desc"
}
Code samples
curl
curl -X POST 'https://sandbox.payme.io/api/get-withdrawals' \
-H 'Content-Type: application/json' \
-H 'PayMe-Partner-Key: <PayMe-Partner-Key>' \
-H 'PayMe-Merchant-Key: <PayMe-Merchant-Key>' \
--data-raw '{
"payme_client_key": "XXXXXXXX",
"seller_payme_id": "MPLDEMO-MPLDEMO-MPLDEMO-1234567",
"withdrawal_created_min": "2026-10-01 00:00:00",
"items_order_by_column": "withdrawal_created",
"items_order_by_direction": "desc"
}'
Node.js
const response = await fetch("https://sandbox.payme.io/api/get-withdrawals", {
method: "POST",
headers: {
"Content-Type": "application/json",
"PayMe-Partner-Key": "<PayMe-Partner-Key>",
"PayMe-Merchant-Key": "<PayMe-Merchant-Key>",
},
body: JSON.stringify({
"payme_client_key": "XXXXXXXX",
"seller_payme_id": "MPLDEMO-MPLDEMO-MPLDEMO-1234567",
"withdrawal_created_min": "2026-10-01 00:00:00",
"items_order_by_column": "withdrawal_created",
"items_order_by_direction": "desc"
}),
});
console.log(await response.text());
Python
import requests
response = requests.post(
"https://sandbox.payme.io/api/get-withdrawals",
headers={
"PayMe-Partner-Key": "<PayMe-Partner-Key>",
"PayMe-Merchant-Key": "<PayMe-Merchant-Key>",
},
json={
"payme_client_key": "XXXXXXXX",
"seller_payme_id": "MPLDEMO-MPLDEMO-MPLDEMO-1234567",
"withdrawal_created_min": "2026-10-01 00:00:00",
"items_order_by_column": "withdrawal_created",
"items_order_by_direction": "desc",
},
)
print(response.text)
PHP
<?php
$body = <<<'BODY'
{
"payme_client_key": "XXXXXXXX",
"seller_payme_id": "MPLDEMO-MPLDEMO-MPLDEMO-1234567",
"withdrawal_created_min": "2026-10-01 00:00:00",
"items_order_by_column": "withdrawal_created",
"items_order_by_direction": "desc"
}
BODY;
$ch = curl_init('https://sandbox.payme.io/api/get-withdrawals');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'PayMe-Partner-Key: <PayMe-Partner-Key>',
'PayMe-Merchant-Key: <PayMe-Merchant-Key>',
],
CURLOPT_POSTFIELDS => $body,
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
Responses
200 — OK (success)
| Field | Type | Description |
|---|---|---|
status_code |
integer | 0 on success. |
seller_payme_id |
string | The seller, when exactly one seller_payme_id was sent; otherwise null. |
seller_id |
string | Your own ID for that seller, or null. |
items_count |
integer | Number of items on this page. There is no total count. |
items |
array | The withdrawals. |
items[].seller_payme_id |
string | The seller's MPL. |
items[].withdrawal_payme_code |
integer | PayMe's withdrawal code. |
items[].withdrawal_created |
string | When the withdrawal was created, yyyy-mm-dd hh:mm:ss, Asia/Jerusalem. |
items[].withdrawal_currency |
string | Currency, 3-letter ISO 4217 code. |
items[].withdrawal_total |
integer | Amount paid out, in minor units. |
items[].withdrawal_source |
integer | Who pays it out: 1 PayMe; another value is a card company that pays the seller directly. |
items[].withdrawal_card_brand |
integer | Card brand the withdrawal covers, when a card company pays the seller directly. |
items[].withdrawal_is_reconciled |
boolean | true when PayMe has matched the payout with its records. |
items[].withdrawal_description |
string | Always empty. Kept for older integrations. |
{
"status_code": 0,
"seller_payme_id": "MPLDEMO-MPLDEMO-MPLDEMO-1234567",
"seller_id": "store-1001",
"items_count": 1,
"items": [
{
"seller_payme_id": "MPLDEMO-MPLDEMO-MPLDEMO-1234567",
"withdrawal_payme_code": 10001,
"withdrawal_created": "2026-10-15 15:15:15",
"withdrawal_currency": "ILS",
"withdrawal_total": 600000,
"withdrawal_source": 1,
"withdrawal_card_brand": 1,
"withdrawal_is_reconciled": true,
"withdrawal_description": ""
}
]
}
500 — Error. Most errors return HTTP 500. Paging errors (52, 27) return HTTP 400. The body is the same. See Errors. (error)
| Field | Type | Description |
|---|---|---|
status_code |
integer | 1 on failure. |
status_error_code |
integer | PayMe error code. |
status_error_details |
string | Error message. |
status_additional_info |
string | The field the error refers to, when there is one. |
{
"status_code": 1,
"status_error_details": "Required parameter is missing",
"status_additional_info": "payme_client_key",
"status_error_code": 1
}