DualPricingResult
A model the API reference uses in a request or a response. The operation pages link every field typed as this model here.
The dual pricing decision recorded on a transaction: whether the card price applied and why, both prices, the rate and base they were computed from, the tender and channel the decision turned on, the configuration it was computed under, the evidence that both prices were displayed, and the traced decision chain.
Values
Fields
| Field | Type | Description | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
applied
required |
boolean | Whether the payment was charged the card price.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
reason
required |
string | The decision reason, as a `DualPricingDecisionReason` member name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
cashPrice
required |
number (double) | The cash price, in the transaction currency: what the merchant entered, the transaction's base
amount.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
cardPrice
required |
number (double) | The card price, in the transaction currency: the cash price plus the uplift. Null when no uplift could be computed (no
usable configuration), because there was then no second price.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
rate
required |
number (double) | The rate the uplift was computed with, as a decimal fraction (`0.04` is 4 percent). Null on a
decision priced in fixed-amount mode, which has no rate (`fixedAmount`). On a recurring
charge the uplift can be lower than this rate applied to `baseAmount`: when the
cardholder's consent capped it, `consentCap` names the consented measure that did, and
`consentedRate` or `consentedAmount` states it.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
mode
required |
string | How the uplift was derived, as a `DualPricingMode` member name: `Fixed` for a
decision priced with a fixed amount. Null on a percentage decision, the reading of every record
written before the fixed-amount mode existed, so a percentage decision's record is unchanged.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
fixedAmount
required |
number (double) | The fixed amount the uplift was computed with, in the transaction currency, on a decision priced in
fixed-amount mode. Null on a percentage decision. On a recurring charge the uplift can be lower
when the cardholder's consent capped it (`consentCap`).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
baseAmount
required |
number (double) | The composed base the rate applied to, in the transaction currency.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
baseComponents
required |
string | The components of `baseAmount`: `Base` or `Base+Shipping`, the strings
the surcharge and convenience-fee results record for the same election.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
cashDiscountAmount
required |
number (double) | The uplift a payment charged the cash price did not pay, in the transaction currency: the card
price minus the cash price,
recorded on a cash payment or a bank payment the merchant treats as cash, so a receipt can
print the discount and a report can total the discounts given. Never an amount line on the
transaction; null on a payment charged the card price.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
tenderFamily
required |
string | The declared tender family, as a `DualPricingTenderFamily` member name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
channel
required |
string | The channel the payment arrived on, as a `DualPricingChannels` member name.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
consentedRate
required |
number (double) | On a recurring charge, the card price rate the payer was told before the charge, as a decimal
fraction: the rate the cardholder's stored-credential consent stated, or, for a Hosted Payment Page
enrollment's first payment in the percentage mode, the rate the page showed. A repeat or retry of
the charge is never priced above it. Null on every other payment, on a recurring charge whose
consent stated no card price, and on one whose consent stated an amount
(`consentedAmount`).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
consentedAmount
required |
number (double) | On a recurring charge, the card price amount (the card price minus the cash price) the payer was
told before the charge, in the transaction currency: the amount the cardholder's stored-credential
consent stated under a fixed-amount configuration, or, for a Hosted Payment Page enrollment's first
payment in the fixed-amount mode, the amount the page showed. A repeat or retry of the charge is
never uplifted above it. Null on every other payment, and on a recurring charge whose consent stated
no card price or stated a rate (`consentedRate`).
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
consentCap
required |
string | On a recurring charge whose consent capped the uplift below what the merchant's configuration
produced when it ran, which consented measure did, as a `DualPricingConsentCap` member
name: `ConsentedRate` or `ConsentedAmount`. Null when the uplift was the configuration's
own, and on every other payment.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
configurationVersion
required |
integer (int32) | The merchant's `configurationVersion` the decision was computed
under, so a decision names the configuration that produced it.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
displayEvidence
required |
DualPricingDisplayEvidence DualPricingDisplayEvidence | The evidence the surface sent that both prices were displayed before the tender was chosen.
Null for a request no surface priced (an API request).
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
Fields of DualPricingDisplayEvidence: This body has no documented fields. | |||||||||||||||||
evaluatedAt
required |
string (date-time) | When the decision was made, in UTC.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
stageTrace
required |
array of DualPricingStageOutcome array of DualPricingStageOutcome | The decision chain, one entry per step in precedence order.
nullable
Values:
Values combine: send one or more member names separated by a comma and a space, or the integer sum of their values. Responses carry the names.
| |||||||||||||||
Fields of each DualPricingStageOutcome:
This body has no documented fields. | |||||||||||||||||
This model has no documented fields.