Returning a list of sales transactions
Learn how to get a list of sales transactions.
You can retrieve a list using specific query parameters to access detailed information about sales transactions. It allows you to filter, sort, and paginate the data according to your requirements, ensuring you receive only the most relevant and streamlined transactions. You can customize the returned data to best suit your operational or analytical needs by specifying parameters such as date ranges, transaction types, and identifiers.
Setting the sales transaction query parameters
You can set the appropriate query parameters to manage and analyze sales transactions. These parameters enable you to filter, sort, and paginate transaction data, making retrieving the information you need easier. By adjusting criteria such as date ranges, transaction identifiers, types, and amounts, you can streamline the data retrieval process, ensuring it aligns with operational requirements or analytical goals. Configure your queries to maximize the relevance and efficiency of the data you access.
createdTime
Optional
A filter on the list based on the createdTime field. The value can be a string with an ISO-601 UTC format datetime, or it can be a dictionary with the following options:
gt–return values where the
createdTime
field is after this timestampgte–return values where the
createdTime
field is after or equal to this timestamplt–return values where the
createdTime
field is before this timestamplte–return values where the
createdTime
field is before or equal to this timestamp
updatedTime
Optional
A filter on the list based on the updatedTime field. The value can be a string with an ISO-601 UTC format datetime, or it can be a dictionary with the following options:
gt–return values where the
updatedTime
field is after this timestampgte–return values where the
updatedTime
field is after or equal to this timestamplt–return values where the
updatedTime
field is before this timestamplte–return values where the
updatedTime
field is before or equal to this timestamp
endingBefore
Optional
A cursor for use in pagination. The endingBefore
parameter is an object identifier that defines your place in the list. For instance, if you make a list request and receive 100 objects starting with xyz
, your subsequent calls can include endingBefore=xyz
to fetch the previous page of the list.
startingAfter
Optional
A cursor for use in pagination. The startingAfter
parameter is an object identifier that defines your place in the list. For instance, if you make a list request and receive 100 objects ending with xyz
, your subsequent calls can include startingAfter=xyz
to fetch the next page of the list.
limit
Optional
A limit on the number of objects returned. The limit can range between 1 and 100, and the default is 10.
ids
Optional
Only return objects with these identifiers.
saleTime
Optional
A filter on the list based on the sales transaction saleTime
field. The value can be a string with an ISO-601 UTC format datetime or it can be a dictionary with the following options:
gt–return values where the
saleTime
field is after this timestampgte–return values where the
saleTime
field is after or equal to this timestamplt–return values where the
saleTime
field is before this timestamplte–return values where the
saleTime
field is before or equal to this timestamp
salesSummaryId
Only return sales transactions with this sales summary identifier.
type
Optional
Only return sales transactions of this type. The enum are sale, replacement, replacement_refund
, replacement
, replacement_return
, fraud_chargeback
, non_fraud_chargeback
, refund
, return
, fraud_detection
, or declined_settlement
.
currency
Optional
Only return sales transactions in this currency.
orderId
Optional
Only return sales transactions with this order identifier.
skuId
Optional
Only return sales transactions with this SKU identifier.
quantity
Optional
A filter on the list based on the sales transaction quantity
field. The value can be a string or it can be a dictionary with the following options:
gt–return values where the
quantity
field is greater than this amountgte–return values where the
quantity
field is greater than or equal to this amountlt–return values where the
quantity
field is less than this amountlte–return values where the
quantity
field is less than or equal to this amount
amount
Optional
A filter on the list based on the sales transaction amount
field. The value can be a string or it can be a dictionary with the following options:
gt–return values where the
amount
field is greater than this amountgte–return values where the
amount
field is greater than or equal to this amountlt–return values where the
amount
field is less than this amountlte–return values where the
amount
field is less than or equal to this amount
digitalRiverShare
Optional
A filter on the list based on the sales transaction digitalRiverShare
field. The value can be a string, or it can be a dictionary with the following options:
gt–return values where the
digitalRiverShare
field is greater than this amountgte–return values where the
digitalRiverShare
field is greater than or equal to this amountlt–return values where the
digitalRiverShare
field is less than this amountlte–return values where the
digitalRiverShare
field is less than or equal to this amount
payoutAmount
Optional
A filter on the list based on the sales transaction payoutAmount
field. The value can be a string, or it can be a dictionary with the following options:
gt–return values where the
payoutAmount
field is greater than this amountgte–return values where the
payoutAmount
field is greater than or equal to this amountlt–return values where the
payoutAmount
field is less than this amountlte–return values where the
payoutAmount
field is less than or equal to this amount
Get sales transaction request and response example
You can use a GET /sales-transactions
request to retrieve sales transaction details. This request fetches an array of sales transaction objects, each enriched with specific attributes such as id
, createdTime
, amount
, and more. Below is an example showing how to perform this request using cURL, followed by a sample JSON response structure illustrating the comprehensive data returned by the API. This enables streamlined data handling and supports various operational needs.
Retrieve the details of sales transactions with a GET
request:
A 200 OK
response returns an array of Sales Transaction objects:
Key sales transaction attributes
The following information details the key attributes returned in response to a request for sales transaction information. For complete details, refer to the Sales transactions API reference.
id
A unique identifier is assigned to the sales transaction. A sales transaction is a fulfilled sales order line. Sales transactions are created at the fulfillment level. For example, let's say you have an order with line item 1 and line item 2. You'll see a single sales transaction if you fulfill line item 1. If you fulfill only half of the quantity of line item 2, you'll see another sales transaction created. When you finally fulfill the other half of the quantity of line 2, you will see a third new sales transaction.
createdTime
The time when the sales transaction was created in the reporting environment.
updatedTime
The time when the sales transaction was updated in the reporting environment.
saleTime
The time when the order line item was fulfilled. Digital River handles sales transactions at the fulfillment level. For example, let's say you have an order with line item 1 and line item 2. You'll see a single sales transaction if you fulfill line item 1. If you fulfill only half of the quantity of line item 2, you'll see another sales transaction created. When you finally fulfill the other half of the quantity of line 2, you will again see a new sales transaction.
salesSummaryId
A unique identifier for a sales summary associated with the specific sales transaction. Digital River initially creates the sales transactions without a salesSummaryId
. This value is updated when the sales transaction and other sales transactions are added to the sales summary.
currency
The three-letter ISO currency code represents the currency used in the sales transaction.
amount
The total sales transaction amount in the customer's currency. This amount multiplied by the payoutAmounts.exchangeRate
(see below) gives you the payoutAmounts.amount
in the requested payout currency.
type
Designates the type of transaction, such as sale
, return
, refund
, fraud_chargeback
, and non_fraud_chargeback
.
orderId
A unique identifier for the order.
skuId
A unique identifier for the SKU.
skuName
The name of the SKU
quantity
The quantity fulfilled for that SKU.
payoutAmounts
This section of returned data describes all information related to the payout amount. For example, in the payout process, you might sell something in Norwegian kroner, but in the payout step of the sales transaction, it would be converted to US dollars if that is the requested payout currency.
payoutAmounts.currency
The three-letter ISO currency code represents the type of currency used in the sales transaction payout.
payoutAmounts.exchangeRate
The exchange rate converts the sales amount from the sales order currency into the payout currency. Theamount
(above) multiplied by the payoutAmounts.exchangeRate
(see below) gives you the payoutAmounts.amount
.
payoutAmounts.amount
The amount charged to the shopper for the fulfilled line item. The amount
(see above) multiplied by the payoutAmounts.exchangeRate
(see below) gives you the payoutAmounts.amount
.
payoutAmounts.tax
The sales transaction tax amount in the currency used for the payout. The payoutAmounts.amount
minus the payout tax, shipping, regulatory fees, and landed costs gets you thepayoutAmounts.productPrice
.
payoutAmounts.shipping
The sales transaction shipping amount in the currency used for the payout. The payoutAmounts.amount
minus payout tax, shipping, regulatory fees, and landed costs gets you thepayoutAmounts.productPrice
.
payoutAmounts.regulatoryFees
The regulatory fees amount in the currency used for the payout. The payoutAmounts.amount
minus payout tax, shipping, regulatory fees, and landed costs gets you thepayoutAmounts.productPrice
.
payoutAmounts.landedCost
The landed costs amount. The payoutAmounts.amount
minus payout tax, shipping, regulatory fees, and landed costs gets you the payoutAmounts.productPrice
.
payoutAmounts.productPrice
The product price does not include any taxes or fees. The payoutAmounts.amount
minus payout tax, shipping, regulatory fees, and landed costs gets you the payoutAmounts.productPrice
.
payoutAmounts.digitalRiverShare
The margin that Digital River receives for services. The payoutAmounts.productPrice
plus or minus the Digital River share, transaction fees, shipping discount, regulatory fee discount, and the shipping remittance amount gets you the total payout amount payoutAmounts.payoutAmount
.
payoutAmounts.distributorShare
The distributor share amount. The value is always a "0."
payoutAmounts.transactionFees
The transaction fees amount. The payoutAmounts.productPrice
plus or minus the Digital River share, transaction fees, shipping discount, regulatory fee discount, and the shipping remittance amount gets you the total payout amount payoutAmounts.payoutAmount
.
payoutAmounts.commission
The commission is the amount allocated to compensate sales agents or partners for their service. The payoutAmounts.productPrice
is adjusted by adding or subtracting this commission along with other elements like the Digital River share, transaction fees, and discounts to arrive at the total payoutAmounts.payoutAmount
.
payoutAmounts.shippingDiscount
The shipping discount amount. The payoutAmounts.productPrice
plus or minus the Digital River share, transaction fees, shipping discount, regulatory fee discount, and the shipping remittance amount gets you the total payout amount payoutAmounts.payoutAmount
.
payoutAmounts.regulatoryFeeDiscount
The regulatory fee discount amount. The payoutAmounts.productPrice
plus or minus the Digital River share, transaction fees, shipping discount, regulatory fee discount, and the shipping remittance amount gets you the total payout amount payoutAmounts.payoutAmount
.
payoutAmounts.remitShipping
The shipping remittance amount. The payoutAmounts.productPrice
plus or minus the Digital River share, transaction fees, shipping discount, regulatory fee discount, and the shipping remittance amount gets you the total payout amount payoutAmounts.payoutAmount
.
payoutAmounts.payoutAmount
Total payout amount. The payoutAmounts.productPrice
plus or minus the Digital River share, transaction fees, shipping discount, regulatory fee discount, and the shipping remittance amount gets you the total payout amount payoutAmounts.payoutAmount
.
payerId
The ID of the payer.
payerName
The name of the payer.
payeeId
The ID of the payee.
payeeName
The name of the payee.
liveMode
If the value is true
, the object exists in live mode. If the value is false
, the object exists in test mode. Only live mode is supported.
orderUpstreamId
A unique identifier generated by the upstream application or commerce platform.
orderMetadata
This key-value pair stores additional order-level data. The values can be strings, booleans, or integers.
skuTaxCode
The skuTaxCode
is a unique code assigned to a stock keeping unit (SKU) to categorize it for tax purposes. This code helps determine the applicable tax rate or exemptions based on the product's classification.
shipFromCountry
The shipFromCountry
refers to the country from which the goods are dispatched. This information is crucial for determining international shipping rates, customs duties, and delivery times. The value is typically represented using the ISO 3166-1 alpha-2 country code format.
shipToCountry
The shipToCountry
specifies the destination country where the goods are to be delivered. This information is essential for calculating appropriate shipping costs and taxes and ensuring compliance with local import regulations. The value is represented using the ISO 3166-1 alpha-2 country code format.
billToCountry
The billToCountry
indicates the country where the billing for the transaction is processed. This information is necessary for determining applicable sales taxes and compliance with regional financial regulations. The value is represented using the ISO 3166-1 alpha-2 country code format.
shipFromState
The shipFromState
indicates the state or region from which the goods are shipped. This information is vital for determining origin-based taxes and shipping logistics. The value is usually represented using standard state or region codes applicable to the shipping country.
shipToState
The shipToState
indicates the state or region where the goods are being delivered. This information is essential for determining destination-based taxes and optimizing delivery routes. The value is typically represented using standard state or region codes applicable to the destination country.
billToState
The billToState
specifies the state or region within the billing country where the transaction is processed. This information is crucial for calculating accurate regional taxes and ensuring compliance with state-level regulations. The value is typically represented using the standard state or region codes relevant to the billing country.
paymentType
The paymentType
specifies the method of payment used in the transaction. Common values include credit cards, debit cards, PayPal, and bank transfers. This information is critical for processing transactions and may influence applicable service fees or processing times.
lineItemMetadata
This key-value pair stores additional line-item-level data. The values can be strings, booleans, or integers.
Last updated