Skip to content

Financials

Financial details for the publisher.

Get financial details

Request

Returns every revenue line WeTransact holds for your publisher account, one row per purchase line per month. The rows are Microsoft's own commercial-marketplace Revenue report, pulled from Partner Center every night at 01:00 UTC and stored as-is, so the figures tie to what Microsoft pays out. Payouts flow Microsoft → your Partner Center account; WeTransact is not in the money path.

Joining to your own data

You haveJoin on
SaaS MarketplaceSubscriptionId (from GET /subscriptions)AssetId
One specific purchase linePurchaseRecordId + LineItemId (two orders can share one AssetId)
A month of usage for a metered planLineItemId + MonthStartDate, rows with BillingModel = UsageBased

Reading the money columns. Three currencies appear: CC is the customer's transaction currency, PC is your payout currency, USD is Microsoft's reporting currency. transactionAmount* is what the customer was billed, earningAmount* is your share after Microsoft's fee, and estimatedRevenuePC × incentiveRate / 100 is the payout you should expect in your payout currency (IncentiveRate is your share in percent, e.g. 97 for a new sale, 98.5 for a renewal).

Granularity. Metered usage is reported as monthly SKU-level totals (billingModel = UsageBased, Quantity in Units), not per dimension. Use the usage endpoint for per-dimension detail.

Volume. There is no filtering or paging; the call returns your whole history. Cache it and diff locally rather than polling more than once a day, since the source only changes nightly.

Security
api_key
curl -i -X GET \
  https://apidocs.wetransact.io/_mock/openapi/api/v1.0/financials \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Responses

All revenue lines for the publisher, unordered.

Bodyapplication/json
Array [
PartnerCenterRevenueIdstring, (uuid)

WeTransact's id for this row. Stable across nightly refreshes only as long as Microsoft does not restate the line.

Publisherstring or null

The Partner Center publisher (seller) the row belongs to. "Default" for single-publisher accounts.

AssetIdstring or null, (uuid)

Join key to the subscription. For SaaS this equals the marketplaceSubscriptionId returned by GET /subscriptions.

SalesChannelstring or null

How the customer bought. Microsoft values include Enterprise, MCA, Cloud Solution Provider, Go to Market, Pay as you go.

Example:"Enterprise"
BillingAccountIdstring or null

Microsoft billing account of the customer.

CustomerIdstring or null
CustomerNamestring or null
CustomerEmailstring or null
CustomerCompanyNamestring or null
CustomerCitystring or null
CustomerStatestring or null
CustomerCountrystring or null

ISO 3166-1 alpha-2 country code.

Example:"GB"
OfferNamestring or null

Marketplace offer display name.

OfferTypestring or null

SaaS, Azure Application (Managed App), Virtual Machine, ...

Example:"SaaS"
SKUstring or null

The plan id (Partner Center plan / SKU) the line belongs to.

BillingModelstring or null

UsageBased for metered consumption; otherwise a recurring subscription charge.

Example:"UsageBased"
Unitsstring or null

Unit of quantity for usage-based lines (the dimension's unit). Empty for subscription lines.

Quantitynumber or null

Seats for subscription lines; total metered units in the month for usage-based lines (all dimensions of the SKU summed).

PurchaseRecordIdstring or null

Microsoft's purchase record. Together with lineItemId identifies one purchase line; use this pair, not assetId alone, when an asset has several orders.

LineItemIdstring or null

Line within the purchase record. Together with monthStartDate identifies one usage month.

MonthStartDatestring

First day of the month this row covers. ISO 8601 date-time without offset (Microsoft report dates carry no time zone; treat as UTC dates).

TermStartDatestring or null

Start of the billing term this line belongs to. ISO 8601 date-time without offset (Microsoft report dates carry no time zone; treat as UTC dates).

TermEndDatestring or null

End of the billing term. ISO 8601 date-time without offset (Microsoft report dates carry no time zone; treat as UTC dates).

TransactionAmountCCnumber or null

Amount billed to the customer, in the customer's currency.

TransactionAmountPCnumber or null

Amount billed to the customer, converted to your payout currency.

TransactionAmountUSDnumber or null

Amount billed to the customer, in USD.

EarningAmountCCnumber or null

Your earning after Microsoft's marketplace fee, in the customer's currency.

EarningAmountPCnumber or null

Your earning after Microsoft's marketplace fee, in your payout currency.

EarningAmountUSDnumber or null

Your earning after Microsoft's marketplace fee, in USD.

EarningCurrencyCodestring or null

ISO 4217 code of your payout currency (the PC columns).

Example:"GBP"
EarningExchangeRatePCnumber or null

Rate used to convert the earning to your payout currency. 1 when no conversion applied.

Revenuenumber or null

Microsoft's billed revenue for the line (USD). Microsoft's own "Revenue" column, unchanged.

EstimatedRevenuePCnumber or null

Estimated revenue in your payout currency. Payout you should expect = estimatedRevenuePC × incentiveRate / 100.

EstimatedRevenueUSDnumber or null

Estimated revenue in USD.

ExchangeRateDatestring

Date of the exchange rates used on this row. ISO 8601 date-time without offset (Microsoft report dates carry no time zone; treat as UTC dates).

ExchangeRatePCnumber or null

USD → payout currency rate. 1 when no conversion applied.

ExchangeRateUSDnumber or null

Customer currency → USD rate. 1 when no conversion applied.

IncentiveRatenumber or null

Your share of the transaction in percent (100 minus Microsoft's fee), e.g. 97 for a new sale, 98.5 for a renewal.

Example:97
PayoutStatusstring or null

Microsoft payout state. Sent = paid to you; Upcoming = scheduled; Unprocessed / Unreconciled / Reprocessing = still being processed by Microsoft; Uncollected = Microsoft has not collected from the customer yet; Not eligible = will not be paid out (e.g. trial or zero-value line).

Example:"Upcoming"
EstimatedPayoutMonthstring or null

Month Microsoft expects to pay, yyyy-MM.

Example:"2026-10"
PaymentInstrumentTypestring or null

How the customer paid (Credit card, Invoice, ...).

PaymentSentDatestring or null

When Microsoft sent the payout. Null until payoutStatus is Sent. ISO 8601 date-time without offset (Microsoft report dates carry no time zone; treat as UTC dates).

TrialDeploymentboolean

True when the line comes from a free trial and carries no earning.

]
Response
[ { "PartnerCenterRevenueId": "3c2a9b7e-1d4f-4e8a-9b6c-5d7e8f9a0b1c", "Publisher": "Default", "AssetId": "aa930163-2330-45c2-a17c-dd325f9f2d44", "SalesChannel": "Enterprise", "BillingAccountId": "7f3d1a2b-...", "CustomerCompanyName": "Contoso Ltd", "CustomerCountry": "GB", "CustomerName": "Jane Doe", "CustomerEmail": "jane.doe@contoso.com", "OfferName": "Northwind On Demand", "OfferType": "SaaS", "SKU": "on-demand", "BillingModel": "UsageBased", "Units": "transaction", "Quantity": 1250, "PurchaseRecordId": "f5c1e2d3-...", "LineItemId": "1", "MonthStartDate": "2026-08-01T00:00:00", "TermStartDate": "2026-08-14T00:00:00", "TermEndDate": "2026-09-13T00:00:00", "TransactionAmountCC": 1250, "TransactionAmountPC": 1087.5, "TransactionAmountUSD": 1250, "EarningAmountCC": 1212.5, "EarningAmountPC": 1054.88, "EarningAmountUSD": 1212.5, "EarningCurrencyCode": "GBP", "EarningExchangeRatePC": 0.87, "Revenue": 1250, "EstimatedRevenuePC": 1087.5, "EstimatedRevenueUSD": 1250, "ExchangeRateDate": "2026-08-31T00:00:00", "ExchangeRatePC": 0.87, "ExchangeRateUSD": 1, "IncentiveRate": 97, "PayoutStatus": "Upcoming", "EstimatedPayoutMonth": "2026-10", "PaymentInstrumentType": "Credit card", "PaymentSentDate": null, "TrialDeployment": false } ]