Skip to main content
POST

Body

application/json

The purchase data.

receiptId
string
required

Globally unique purchase ID. it's recommended to compose it based on transaction date and time, store ID, and POS ID. Recommended pattern: {yyyymmdd}{hhmmss}{ssss}{ppp}, where sss - store ID, ppp - POS ID. Example: 202307101706440023011

Required string length: 1 - 64
storeId
string
required

Id of store where payment is done.

Required string length: 1 - 128
currencyCode
string
required

Local store currency code. ISO-4217 currency code - 3 characters, for example, DKK, ISK, EUR etc.

Required string length: 3
totalAmount
number<double>
required

Total price of purchased products with discounts and taxes applied. Can be negative in case when total price of returned items is greater than total price of purchased items. Decimal amount with '.' as float separator. Example: 105.55

totalTaxAmount
number<double>
required

Total amount of taxes (VAT) included in price. This amount should be included in PurchaseLoad.Api.CQRS.Commands.LoadPurchase.LoadPurchaseCommand.TotalAmount. Decimal amount with '.' as float separator.

purchaseDateTimeUtc
string<date-time>
required

Date and time of the purchase in UTC. Example:'2020-04-14T11:00:00Z'.

purchaseBusinessDateTime
string<date-time>
required

Date and time of the purchase in store local timezone. Example:'2020-04-14T13:00:00'.

products
object[]
required

The list of purchased products.

memberId
string | null

Id of member who performed purchase.

Maximum string length: 36
externalDiscountCardId
string | null

The identifier for an external discount card that is not linked to the loyalty app. By default, this field should be empty. If populated, then bonus calculation will be skipped as the customer has received external benefits.

loyaltyCardId
string | null

Identifier for the loyalty card. Used for member identification if this value is provided but memberId is not specified.

Maximum string length: 36
orderId
string | null

Order identifier, whithin which the partial receipt was generated. This field is related to e-commerce transactions.

amountForBonusCalculation
number<double> | null

The total amount used for calculating bonuses. This amount excludes items like lottery, tobacco, alcohol products. By default, this field should not be passed, so that Bonus Calculation service automatically excludes ineligible products. If passed, this value will be used to calculate the basket-level bonus. The value should be a decimal with '.' as the separator (e.g., 10.25).

paymentMethods
object[] | null

All payment methods which user used to cover the purchase.

discounts
object[] | null

List of discounts applied to purchase/products. Optional. If no discounts were applied it should be missed.

taxes
object[] | null

List of summarized tax details.

shipping
object
paymentLocation
string | null

Unique identifier of POS in Lobyco payment service. Recommended pattern is '{storeId}_{posId}'.

metadata
object | null

Set of key-value pairs that you can attach to an object. This can be useful for storing additional client-specific information about the object in a structured format. By default, this field should be skipped, unless otherwise agreed upon during integration.

checkoutType
enum<string>
Available options:
Pos,
SelfCheckout,
ScanAndPay,
Online
posId
string | null

Id of POS where payment was done

phone
string | null

Member's phone number

Response

OK

Last modified on August 10, 2026