Upload expense document

Credentials

No credentials are documented for this endpoint.

Upload a Keep invoice as a seller expense document.

Parameters

This endpoint takes no path, query or header parameters.

Request body

Content type: application/json

Field Type Required Description
seller_id_number string yes
seller_email string yes
document_regulation_id string yes
supplier_name string yes
supplier_id_number string yes
value_date string yes
price number yes
vat number yes
currency string yes
file_name string yes
file_path string yes

Request example

{
  "seller_id_number": "123456789",
  "seller_email": "seller@example.com",
  "document_regulation_id": "12345678",
  "supplier_name": "Office Supplies Ltd",
  "supplier_id_number": "515123456",
  "value_date": "2024-01-15",
  "price": 500,
  "vat": 85,
  "currency": "ILS",
  "file_name": "expense.pdf",
  "file_path": "uploads/expenses/expense.pdf"
}

Code samples

curl

curl -X POST 'https://sandbox.payme.io/api/partner/api/documents/expense/invoice/upload' \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "seller_id_number": "123456789",
  "seller_email": "seller@example.com",
  "document_regulation_id": "12345678",
  "supplier_name": "Office Supplies Ltd",
  "supplier_id_number": "515123456",
  "value_date": "2024-01-15",
  "price": 500,
  "vat": 85,
  "currency": "ILS",
  "file_name": "expense.pdf",
  "file_path": "uploads/expenses/expense.pdf"
}'

Node.js

const response = await fetch("https://sandbox.payme.io/api/partner/api/documents/expense/invoice/upload", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "seller_id_number": "123456789",
    "seller_email": "seller@example.com",
    "document_regulation_id": "12345678",
    "supplier_name": "Office Supplies Ltd",
    "supplier_id_number": "515123456",
    "value_date": "2024-01-15",
    "price": 500,
    "vat": 85,
    "currency": "ILS",
    "file_name": "expense.pdf",
    "file_path": "uploads/expenses/expense.pdf"
  }),
});

console.log(await response.text());

Python

import requests

response = requests.post(
    "https://sandbox.payme.io/api/partner/api/documents/expense/invoice/upload",
    json={
        "seller_id_number": "123456789",
        "seller_email": "seller@example.com",
        "document_regulation_id": "12345678",
        "supplier_name": "Office Supplies Ltd",
        "supplier_id_number": "515123456",
        "value_date": "2024-01-15",
        "price": 500,
        "vat": 85,
        "currency": "ILS",
        "file_name": "expense.pdf",
        "file_path": "uploads/expenses/expense.pdf",
    },
)

print(response.text)

PHP

<?php

$body = <<<'BODY'
{
  "seller_id_number": "123456789",
  "seller_email": "seller@example.com",
  "document_regulation_id": "12345678",
  "supplier_name": "Office Supplies Ltd",
  "supplier_id_number": "515123456",
  "value_date": "2024-01-15",
  "price": 500,
  "vat": 85,
  "currency": "ILS",
  "file_name": "expense.pdf",
  "file_path": "uploads/expenses/expense.pdf"
}
BODY;

$ch = curl_init('https://sandbox.payme.io/api/partner/api/documents/expense/invoice/upload');
curl_setopt_array($ch, [
    CURLOPT_CUSTOMREQUEST => 'POST',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => $body,
]);

$response = curl_exec($ch);
curl_close($ch);

echo $response;

Responses

201 — Expense document uploaded successfully (success)

400 — Bad Request - Validation failed (error)

Field Type Description
statusCode integer
message string
error string
{
  "statusCode": 400,
  "message": [
    "Validation failed"
  ],
  "error": "Bad Request"
}

401 — Unauthorized - Invalid or missing authentication (error)

Field Type Description
statusCode integer
message string
error string
{
  "statusCode": 401,
  "message": "Unauthorized",
  "error": "Unauthorized"
}