cURL
curl --request POST \
--url https://api.maesn.dev/accounting/payments \
--header 'Content-Type: application/json' \
--header 'X-ACCOUNT-KEY: <x-account-key>' \
--header 'X-API-KEY: <x-api-key>' \
--data '
{
"currency": "EUR",
"exchangeRate": 1,
"fiscalYear": "2025",
"journalCode": "30",
"paymentLines": [
{
"accountId": "4a6b5e92-a261-4be9-814d-84dec9636c16",
"amount": 100,
"contactName": "John Doe",
"contactId": "6532708-12e3-4ff5-bf39-02698e959963",
"customerId": "6532708-12e3-4ff5-bf39-02698e959963",
"description": "payment of bill",
"invoiceId": "a44f5af1-8310-4f97-b945-26e35288b35f",
"paymentDate": "2025-01-01",
"supplierId": "6532708-12e3-4ff5-bf39-02698e959963"
}
],
"paymentType": "CREDITOR"
}
'import requests
url = "https://api.maesn.dev/accounting/payments"
payload = {
"currency": "EUR",
"exchangeRate": 1,
"fiscalYear": "2025",
"journalCode": "30",
"paymentLines": [
{
"accountId": "4a6b5e92-a261-4be9-814d-84dec9636c16",
"amount": 100,
"contactName": "John Doe",
"contactId": "6532708-12e3-4ff5-bf39-02698e959963",
"customerId": "6532708-12e3-4ff5-bf39-02698e959963",
"description": "payment of bill",
"invoiceId": "a44f5af1-8310-4f97-b945-26e35288b35f",
"paymentDate": "2025-01-01",
"supplierId": "6532708-12e3-4ff5-bf39-02698e959963"
}
],
"paymentType": "CREDITOR"
}
headers = {
"X-API-KEY": "<x-api-key>",
"X-ACCOUNT-KEY": "<x-account-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-API-KEY': '<x-api-key>',
'X-ACCOUNT-KEY': '<x-account-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
currency: 'EUR',
exchangeRate: 1,
fiscalYear: '2025',
journalCode: '30',
paymentLines: [
{
accountId: '4a6b5e92-a261-4be9-814d-84dec9636c16',
amount: 100,
contactName: 'John Doe',
contactId: '6532708-12e3-4ff5-bf39-02698e959963',
customerId: '6532708-12e3-4ff5-bf39-02698e959963',
description: 'payment of bill',
invoiceId: 'a44f5af1-8310-4f97-b945-26e35288b35f',
paymentDate: '2025-01-01',
supplierId: '6532708-12e3-4ff5-bf39-02698e959963'
}
],
paymentType: 'CREDITOR'
})
};
fetch('https://api.maesn.dev/accounting/payments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.maesn.dev/accounting/payments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'currency' => 'EUR',
'exchangeRate' => 1,
'fiscalYear' => '2025',
'journalCode' => '30',
'paymentLines' => [
[
'accountId' => '4a6b5e92-a261-4be9-814d-84dec9636c16',
'amount' => 100,
'contactName' => 'John Doe',
'contactId' => '6532708-12e3-4ff5-bf39-02698e959963',
'customerId' => '6532708-12e3-4ff5-bf39-02698e959963',
'description' => 'payment of bill',
'invoiceId' => 'a44f5af1-8310-4f97-b945-26e35288b35f',
'paymentDate' => '2025-01-01',
'supplierId' => '6532708-12e3-4ff5-bf39-02698e959963'
]
],
'paymentType' => 'CREDITOR'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-ACCOUNT-KEY: <x-account-key>",
"X-API-KEY: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.maesn.dev/accounting/payments"
payload := strings.NewReader("{\n \"currency\": \"EUR\",\n \"exchangeRate\": 1,\n \"fiscalYear\": \"2025\",\n \"journalCode\": \"30\",\n \"paymentLines\": [\n {\n \"accountId\": \"4a6b5e92-a261-4be9-814d-84dec9636c16\",\n \"amount\": 100,\n \"contactName\": \"John Doe\",\n \"contactId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"customerId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"description\": \"payment of bill\",\n \"invoiceId\": \"a44f5af1-8310-4f97-b945-26e35288b35f\",\n \"paymentDate\": \"2025-01-01\",\n \"supplierId\": \"6532708-12e3-4ff5-bf39-02698e959963\"\n }\n ],\n \"paymentType\": \"CREDITOR\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<x-api-key>")
req.Header.Add("X-ACCOUNT-KEY", "<x-account-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.maesn.dev/accounting/payments")
.header("X-API-KEY", "<x-api-key>")
.header("X-ACCOUNT-KEY", "<x-account-key>")
.header("Content-Type", "application/json")
.body("{\n \"currency\": \"EUR\",\n \"exchangeRate\": 1,\n \"fiscalYear\": \"2025\",\n \"journalCode\": \"30\",\n \"paymentLines\": [\n {\n \"accountId\": \"4a6b5e92-a261-4be9-814d-84dec9636c16\",\n \"amount\": 100,\n \"contactName\": \"John Doe\",\n \"contactId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"customerId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"description\": \"payment of bill\",\n \"invoiceId\": \"a44f5af1-8310-4f97-b945-26e35288b35f\",\n \"paymentDate\": \"2025-01-01\",\n \"supplierId\": \"6532708-12e3-4ff5-bf39-02698e959963\"\n }\n ],\n \"paymentType\": \"CREDITOR\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.maesn.dev/accounting/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<x-api-key>'
request["X-ACCOUNT-KEY"] = '<x-account-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"currency\": \"EUR\",\n \"exchangeRate\": 1,\n \"fiscalYear\": \"2025\",\n \"journalCode\": \"30\",\n \"paymentLines\": [\n {\n \"accountId\": \"4a6b5e92-a261-4be9-814d-84dec9636c16\",\n \"amount\": 100,\n \"contactName\": \"John Doe\",\n \"contactId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"customerId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"description\": \"payment of bill\",\n \"invoiceId\": \"a44f5af1-8310-4f97-b945-26e35288b35f\",\n \"paymentDate\": \"2025-01-01\",\n \"supplierId\": \"6532708-12e3-4ff5-bf39-02698e959963\"\n }\n ],\n \"paymentType\": \"CREDITOR\"\n}"
response = http.request(request)
puts response.read_body{
"meta": {
"warnings": [
"Field not used by target system"
],
"pagination": {
"total": 125,
"perPage": 50,
"currentPage": 1,
"totalPages": 3
}
},
"data": {
"id": "94a5ab44-3218-4492-8b5d-a31bc0288c0b",
"currency": "EUR",
"createdDate": "2021-01-01T00:00:00Z",
"exchangeRate": 1,
"fiscalYear": "2025",
"journalCode": "30",
"updatedDate": "2021-01-01T00:00:00Z",
"paymentLines": [
{
"accountId": "4a6b5e92-a261-4be9-814d-84dec9636c16",
"amount": 100,
"contactName": "John Doe",
"contactId": "6532708-12e3-4ff5-bf39-02698e959963",
"customerId": "6532708-12e3-4ff5-bf39-02698e959963",
"description": "payment of bill",
"invoiceId": "a44f5af1-8310-4f97-b945-26e35288b35f",
"paymentDate": "2025-01-01",
"supplierId": "6532708-12e3-4ff5-bf39-02698e959963"
}
],
"paymentType": "CREDITOR"
}
}Payments
Create payment
POST
/
accounting
/
payments
cURL
curl --request POST \
--url https://api.maesn.dev/accounting/payments \
--header 'Content-Type: application/json' \
--header 'X-ACCOUNT-KEY: <x-account-key>' \
--header 'X-API-KEY: <x-api-key>' \
--data '
{
"currency": "EUR",
"exchangeRate": 1,
"fiscalYear": "2025",
"journalCode": "30",
"paymentLines": [
{
"accountId": "4a6b5e92-a261-4be9-814d-84dec9636c16",
"amount": 100,
"contactName": "John Doe",
"contactId": "6532708-12e3-4ff5-bf39-02698e959963",
"customerId": "6532708-12e3-4ff5-bf39-02698e959963",
"description": "payment of bill",
"invoiceId": "a44f5af1-8310-4f97-b945-26e35288b35f",
"paymentDate": "2025-01-01",
"supplierId": "6532708-12e3-4ff5-bf39-02698e959963"
}
],
"paymentType": "CREDITOR"
}
'import requests
url = "https://api.maesn.dev/accounting/payments"
payload = {
"currency": "EUR",
"exchangeRate": 1,
"fiscalYear": "2025",
"journalCode": "30",
"paymentLines": [
{
"accountId": "4a6b5e92-a261-4be9-814d-84dec9636c16",
"amount": 100,
"contactName": "John Doe",
"contactId": "6532708-12e3-4ff5-bf39-02698e959963",
"customerId": "6532708-12e3-4ff5-bf39-02698e959963",
"description": "payment of bill",
"invoiceId": "a44f5af1-8310-4f97-b945-26e35288b35f",
"paymentDate": "2025-01-01",
"supplierId": "6532708-12e3-4ff5-bf39-02698e959963"
}
],
"paymentType": "CREDITOR"
}
headers = {
"X-API-KEY": "<x-api-key>",
"X-ACCOUNT-KEY": "<x-account-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-API-KEY': '<x-api-key>',
'X-ACCOUNT-KEY': '<x-account-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
currency: 'EUR',
exchangeRate: 1,
fiscalYear: '2025',
journalCode: '30',
paymentLines: [
{
accountId: '4a6b5e92-a261-4be9-814d-84dec9636c16',
amount: 100,
contactName: 'John Doe',
contactId: '6532708-12e3-4ff5-bf39-02698e959963',
customerId: '6532708-12e3-4ff5-bf39-02698e959963',
description: 'payment of bill',
invoiceId: 'a44f5af1-8310-4f97-b945-26e35288b35f',
paymentDate: '2025-01-01',
supplierId: '6532708-12e3-4ff5-bf39-02698e959963'
}
],
paymentType: 'CREDITOR'
})
};
fetch('https://api.maesn.dev/accounting/payments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.maesn.dev/accounting/payments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'currency' => 'EUR',
'exchangeRate' => 1,
'fiscalYear' => '2025',
'journalCode' => '30',
'paymentLines' => [
[
'accountId' => '4a6b5e92-a261-4be9-814d-84dec9636c16',
'amount' => 100,
'contactName' => 'John Doe',
'contactId' => '6532708-12e3-4ff5-bf39-02698e959963',
'customerId' => '6532708-12e3-4ff5-bf39-02698e959963',
'description' => 'payment of bill',
'invoiceId' => 'a44f5af1-8310-4f97-b945-26e35288b35f',
'paymentDate' => '2025-01-01',
'supplierId' => '6532708-12e3-4ff5-bf39-02698e959963'
]
],
'paymentType' => 'CREDITOR'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-ACCOUNT-KEY: <x-account-key>",
"X-API-KEY: <x-api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.maesn.dev/accounting/payments"
payload := strings.NewReader("{\n \"currency\": \"EUR\",\n \"exchangeRate\": 1,\n \"fiscalYear\": \"2025\",\n \"journalCode\": \"30\",\n \"paymentLines\": [\n {\n \"accountId\": \"4a6b5e92-a261-4be9-814d-84dec9636c16\",\n \"amount\": 100,\n \"contactName\": \"John Doe\",\n \"contactId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"customerId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"description\": \"payment of bill\",\n \"invoiceId\": \"a44f5af1-8310-4f97-b945-26e35288b35f\",\n \"paymentDate\": \"2025-01-01\",\n \"supplierId\": \"6532708-12e3-4ff5-bf39-02698e959963\"\n }\n ],\n \"paymentType\": \"CREDITOR\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<x-api-key>")
req.Header.Add("X-ACCOUNT-KEY", "<x-account-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.maesn.dev/accounting/payments")
.header("X-API-KEY", "<x-api-key>")
.header("X-ACCOUNT-KEY", "<x-account-key>")
.header("Content-Type", "application/json")
.body("{\n \"currency\": \"EUR\",\n \"exchangeRate\": 1,\n \"fiscalYear\": \"2025\",\n \"journalCode\": \"30\",\n \"paymentLines\": [\n {\n \"accountId\": \"4a6b5e92-a261-4be9-814d-84dec9636c16\",\n \"amount\": 100,\n \"contactName\": \"John Doe\",\n \"contactId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"customerId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"description\": \"payment of bill\",\n \"invoiceId\": \"a44f5af1-8310-4f97-b945-26e35288b35f\",\n \"paymentDate\": \"2025-01-01\",\n \"supplierId\": \"6532708-12e3-4ff5-bf39-02698e959963\"\n }\n ],\n \"paymentType\": \"CREDITOR\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.maesn.dev/accounting/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<x-api-key>'
request["X-ACCOUNT-KEY"] = '<x-account-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"currency\": \"EUR\",\n \"exchangeRate\": 1,\n \"fiscalYear\": \"2025\",\n \"journalCode\": \"30\",\n \"paymentLines\": [\n {\n \"accountId\": \"4a6b5e92-a261-4be9-814d-84dec9636c16\",\n \"amount\": 100,\n \"contactName\": \"John Doe\",\n \"contactId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"customerId\": \"6532708-12e3-4ff5-bf39-02698e959963\",\n \"description\": \"payment of bill\",\n \"invoiceId\": \"a44f5af1-8310-4f97-b945-26e35288b35f\",\n \"paymentDate\": \"2025-01-01\",\n \"supplierId\": \"6532708-12e3-4ff5-bf39-02698e959963\"\n }\n ],\n \"paymentType\": \"CREDITOR\"\n}"
response = http.request(request)
puts response.read_body{
"meta": {
"warnings": [
"Field not used by target system"
],
"pagination": {
"total": 125,
"perPage": 50,
"currentPage": 1,
"totalPages": 3
}
},
"data": {
"id": "94a5ab44-3218-4492-8b5d-a31bc0288c0b",
"currency": "EUR",
"createdDate": "2021-01-01T00:00:00Z",
"exchangeRate": 1,
"fiscalYear": "2025",
"journalCode": "30",
"updatedDate": "2021-01-01T00:00:00Z",
"paymentLines": [
{
"accountId": "4a6b5e92-a261-4be9-814d-84dec9636c16",
"amount": 100,
"contactName": "John Doe",
"contactId": "6532708-12e3-4ff5-bf39-02698e959963",
"customerId": "6532708-12e3-4ff5-bf39-02698e959963",
"description": "payment of bill",
"invoiceId": "a44f5af1-8310-4f97-b945-26e35288b35f",
"paymentDate": "2025-01-01",
"supplierId": "6532708-12e3-4ff5-bf39-02698e959963"
}
],
"paymentType": "CREDITOR"
}
}Field support per integration

Business Central
Business Central
If you’re not using the Interactive Authentication Flow, make sure the query parameters
environmentName and companyId are correctly populated.
You can obtain these values by using the GET Environments and GET Companies endpoints available under the Authentication section.Supported request fields:
Code of the supplier or customer payment journal in Business Central (e.g.
CASH).Show properties
Show properties
GUID of the supplier or customer in Business Central. The type is auto-detected — if the ID matches a customer, a customer payment is created; if it matches a vendor, a vendor payment is created.
For date format details visit the Standardized Data section
GUID of the purchase or sales invoice to apply the payment to.

Exact Online
Exact Online
If you’re not using the Interactive Authentication Flow, make sure the query parameter
companyId is correctly populated.
You can obtain this value by using the GET Companies endpoint available under the Authentication section.Supported request fields:

Lexware Office
Lexware Office

Sevdesk
Sevdesk

Visma e-conomic
Visma e-conomic

Xero
Xero
Supported request fields:
Headers
API key
Example:
"example value"
Account key
Example:
"example value"
Body
application/json
Available options:
AED, AFN, ALL, AMD, ANG, AOA, ARS, AUD, AWG, AZN, BAM, BBD, BDT, BGN, BHD, BIF, BMD, BND, BOB, BRL, BSD, BTN, BWP, BYR, BZD, CAD, CDF, CHF, CLP, CNY, COP, CRC, CUC, CVE, CZK, DJF, DKK, DOP, DZD, EEK, EGP, ERN, ETB, EUR, FJD, FKP, GBP, GEL, GHS, GIP, GMD, GNF, GQE, GTQ, GYD, HKD, HNL, HRK, HTG, HUF, IDR, ILS, INR, IQD, IRR, ISK, JMD, JOD, JPY, KES, KGS, KHR, KMF, KPW, KRW, KWD, KYD, KZT, LAK, LBP, LKR, LRD, LSL, LTL, LVL, LYD, MAD, MDL, MGA, MKD, MMK, MNT, MOP, MRO, MUR, MVR, MWK, MXN, MYR, MZM, NAD, NGN, NIO, NOK, NPR, NZD, OMR, PAB, PEN, PGK, PHP, PKR, PLN, PYG, QAR, RON, RSD, RUB, SAR, SBD, SCR, SDG, SEK, SGD, SHP, SLL, SOS, SRD, SYP, SZL, THB, TJS, TMT, TND, TRY, TTD, TWD, TZS, UAH, UGX, USD, UYU, UZS, VEB, VND, VUV, WST, XAF, XCD, XDR, XOF, XPF, YER, ZAR, ZMK, ZWR Example:
"EUR"
Example:
1
Example:
"2025"
Example:
"30"
Show child attributes
Show child attributes
Example:
"CREDITOR"
Last modified on July 9, 2026
Was this page helpful?
⌘I