POST/payouts
Create payouts
Creates one or more payouts that are collected on a single invoice to you. Each item in payouts must contain exactly one of user_id, phone or ssn.
RecommendedSend the header Idempotency-key with a valid UUID on this endpoint. You can then safely retry without risking duplicate payouts. See Idempotency.
Body
| Field | Type | | Description |
|---|
due_date | date | required | The invoice due date. |
send_type | string | optional | Email or EHF. |
payouts | array | required | At least one item. The fields below apply per item. |
Each item in payouts
| Field | Type | | Description |
|---|
type | string | required | payment or salary. |
date | date | required | The date the work was carried out. |
hours | number | required | Number of hours. |
products | array | required | At least one line item. See below. |
user_id | number | optional | One of user_id / phone / ssn must be set. |
phone | string | optional | Max 32 characters. |
ssn | string | optional | Max 64 characters. |
description | string | optional | Free text on the payout. Max 4096 characters. |
Each item in products
| Field | Type | | Description |
|---|
quantity | number | required | Quantity. |
price | number | required | Unit price. |
description | string | optional | Line item text on the invoice. Max 254 characters. |
Example
POST /payouts
{
"due_date": "2026-09-15",
"send_type": "EHF",
"payouts": [
{
"user_id": 123,
"type": "salary",
"date": "2026-08-28",
"hours": 12,
"description": "Produktfoto, uke 34",
"products": [
{
"quantity": 12,
"price": 1250,
"description": "Fotografering per time"
}
]
}
]
}Response
| Code | Description |
|---|
201 | { "count": 1, "results": "..." } |
400 | Validation error in payouts, or the idempotency key is invalid or has already been used. |
422 | Validation rejected by the framework. |
401 | Not authenticated. |
POST/payouts/{payout}/login-link
Create a login link to the payout
Magic link that logs the contractor in and takes them straight to the page for this payout. Set send_email to true to send it by email.
Response
201 Created
{
"login_url": "https://app.easyfreelance.no/magic/eyJ0eXAiOiJKV1Qi...",
"expires_at": "2026-08-31T09:14:00+00:00"
}