For the complete documentation index, see llms.txt. This page is also available as Markdown.

Upload journal charges

Uploads a journal file.

post

Accepts XLSX or JSONL files containing charge records. Supports chunked uploads via MPT-File-Manager header. File is validated and charges are extracted for processing. Maximum file size is 10GB.

Path parameters
idstringRequired

The ID of the journal.

Body
filestring · binaryOptional

Journal file that contains the charges data.

Responses
200

OK

application/json

Represents a journal entry in the billing system.

revisioninteger · int32Optional
idstringOptional

The unique identifier of the journal entry.

Example: BJO-1234-1234
namestringOptional

Name of the journal.

Example: 29 Nov 2024 #1
descriptionstringOptional

A description of the journal entry.

Example: Monthly revenue journal entry
notesstring · nullableOptional

Additional notes or comments about the journal entry.

Example: Includes adjustments for Q1 2025
statusstring · enumOptional

Represents the various statuses a journal can have in the billing system.

Possible values:
dueDatestring · date-timeOptional

The due date for the journal entry.

Example: 2025-05-15T23:59:59+00:00
post/public/v1/billing/journals/{id}/upload
POST /public/v1/billing/journals/{id}/upload HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 17

{
  "file": "binary"
}
{
  "audit": {
    "created": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "updated": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "draft": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "deleted": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "error": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "validating": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "validated": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "review": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "enquiring": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "generating": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "generated": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "accepted": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    },
    "completed": {
      "at": "2026-01-01T00:00:00.000Z",
      "by": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "revision": 1
      }
    }
  },
  "$meta": {
    "omitted": [
      "text"
    ]
  },
  "revision": 1,
  "id": "BJO-1234-1234",
  "name": "29 Nov 2024 #1",
  "description": "Monthly revenue journal entry",
  "externalIds": {
    "operations": "OPS-12345",
    "vendor": "VND-67890"
  },
  "notes": "Includes adjustments for Q1 2025",
  "status": "Validated",
  "vendor": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "revision": 1,
    "type": "Client",
    "status": "Active"
  },
  "owner": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "revision": 1,
    "externalId": "text"
  },
  "product": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "revision": 1,
    "externalIds": {
      "operations": "text",
      "defaultErpItem": "text"
    },
    "status": "text"
  },
  "authorization": {
    "id": "text",
    "name": "text",
    "revision": 1,
    "currency": "text"
  },
  "dueDate": "2025-05-15T23:59:59+00:00",
  "assignee": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "revision": 1
  },
  "price": {
    "markup": 15.5,
    "margin": 20,
    "totalPP": 1000,
    "totalBSP": 1200,
    "currency": "text"
  },
  "upload": {
    "total": 100,
    "split": 10,
    "ready": 85,
    "error": 5
  },
  "processing": {
    "total": 100,
    "ready": 80,
    "error": 5,
    "split": 10,
    "skipped": 5,
    "ignored": 2
  },
  "error": {
    "errorCode": "ERR-001",
    "errorMessage": "Invalid billing data provided.",
    "id": "12345",
    "message": "Failed to process the billing entity due to missing data."
  },
  "backup": {
    "status": "Pending",
    "date": "2026-01-01T00:00:00.000Z"
  }
}

Last updated

Was this helpful?