id
required |
string (uuid)
|
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.
|
creationTime
required |
string (date-time)
|
The date and time when this entity was created.
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.
|
creatorId
required |
string (uuid)
|
The ID of the user who created this entity.
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.
|
lastModificationTime
required |
string (date-time)
|
The date and time when this entity was last modified.
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.
|
lastModifierId
required |
string (uuid)
|
The ID of the user who last modified this entity.
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.
|
isDeleted
required |
boolean
|
Indicates whether this entity has been deleted.
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.
|
deleterId
required |
string (uuid)
|
The ID of the user who deleted this entity, if it is deleted.
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.
|
deletionTime
required |
string (date-time)
|
The date and time when this entity was deleted, if it is deleted.
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.
|
merchantId
required |
string (uuid)
|
The merchant this configuration belongs to.
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.
|
tenantId
required |
string (uuid)
|
Owning tenant (null in the host tenant).
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.
|
isEnabled
required |
boolean
|
Whether surcharging is currently enabled for the merchant.
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.
|
status
required |
SurchargeConfigurationStatus
SurchargeConfigurationStatus |
Persisted lifecycle status of the configuration.
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.
NotConfigured |
No surcharging has been set up for the merchant. | PendingNotice |
Configuration exists but the required card-brand notice has not been filed. | WaitingPeriod |
Notice filed; the mandatory waiting period is still running. | Active |
Surcharging is live. | Disabled |
Surcharging was turned off after having been configured. |
|
waitingPeriodExpiresAt
required |
string (date-time)
|
The instant surcharging becomes permitted, i.e. when the mandatory notice waiting period
elapses. Surcharging is blocked until this is in the past.
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.
|
noticeFiledAt
required |
string (date-time)
|
When the most recent notice was recorded in WinkPG.
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.
|
noticeFiledBy
required |
string
|
The user who filed the most recent notice.
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.
|
noticeAttestedDate
required |
string (date-time)
|
The calendar date the merchant attested they filed the most recent notice with the card
networks, when that predates `noticeFiledAt`. Null when the notice was filed as of
the record date, and on every notice recorded before this fact existed.
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.
|
defaultRate
required |
number (double)
|
Default surcharge rate (decimal fraction) when no network override applies.
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.
|
channelRestrictions
required |
SurchargeChannelFlags
SurchargeChannelFlags |
The channels surcharging applies to. 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.
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.
None |
No channels enabled. | VirtualTerminal |
Merchant-operated virtual terminal. | Api |
Direct API integrations. | HostedPaymentPage |
Hosted payment pages. | RecurringBilling |
Recurring / scheduled billing. |
|
cardPresentMerchantStateGoverns
required |
boolean
|
True when the merchant's own state alone governs a card-present sale (a chip, swipe or tap read
at a terminal), so a terminal sale with no cardholder billing state is surcharged at the
merchant's state rules. Null when the merchant has not opted in, which keeps the card-not-present
rule: a sale with no cardholder billing state is not surcharged.
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.
|
noCeilingConsentPosture
required |
NoCeilingConsentSurchargePosture
NoCeilingConsentSurchargePosture |
What happens to a merchant-initiated recurring or installment charge whose stored-credential
consent recorded no surcharge ceiling: `Withhold` when the merchant charges it with no
surcharge, `NoticeThenSurcharge` when the cardholder is emailed the ceiling first and the
charge is surcharged from an effective date. Null when the merchant has not chosen, which
surcharges it like any other charge.
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.
Surcharge |
Surcharge the charge at the merchant's current rate under the network, state and cost-of-acceptance caps, as for any other charge. The default. | Withhold |
Do not surcharge the charge. It is recorded as ineligible with ConsentRecordedNoCeiling. | NoticeThenSurcharge |
Tell the cardholder the surcharge ceiling first, then surcharge from an effective date. A daily sweep emails each such consent's cardholder the ceiling and records it on the consent with an effective date a notice period later. Until a notice is recorded the charge is withheld with ConsentRecordedNoCeiling; until the effective date it is withheld with ConsentNoticePending; from then on it is surcharged, capped at the noticed ceiling. |
|
merchantInitiatedPosture
required |
MerchantInitiatedSurchargePosture
MerchantInitiatedSurchargePosture |
What happens to a merchant-initiated charge: `Withhold` when the merchant charges every
merchant-initiated charge with no surcharge. Null when the merchant has not chosen, which
surcharges it like any other charge.
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.
Surcharge |
Surcharge a merchant-initiated charge like any other charge, subject to every other eligibility rule. The default. | Withhold |
Do not surcharge a merchant-initiated charge. It is recorded as ineligible with MerchantInitiatedExcluded, and the recurring billing channel's disclosures stop promising a surcharge, because every recurring billing charge is merchant-initiated. |
|
processorAccountId
required |
string
|
The processor account under which the current notice / waiting period was established.
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.
|
disclosureCopyTemplate
required |
string
|
The merchant's own surcharge disclosure copy in the `SurchargeDisclosureCopy` token
grammar, or null when the platform default copy applies.
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.
|
attestedCostOfAcceptanceRate
required |
number (double)
|
The merchant's attested effective cost of acceptance (decimal fraction), a hard ceiling.
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.
|
costOfAcceptanceAttestedAt
required |
string (date-time)
|
When the cost-of-acceptance rate was attested.
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.
|
costOfAcceptanceAttestedBy
required |
string
|
The user who attested the cost-of-acceptance rate.
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.
|
differentialNetworkRatesAttested
required |
boolean
|
Whether differing surcharge rates across the allowed card networks have been attested as
carrying documented legal signoff. Required before such a rate set can be saved.
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.
|
differentialNetworkRatesAttestedAt
required |
string (date-time)
|
When the differential-rate signoff was attested.
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.
|
differentialNetworkRatesAttestedBy
required |
string
|
The user who attested the differential-rate signoff.
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.
|
forceEnabledAt
required |
string (date-time)
|
When surcharging was activated through the non-production waiting-period bypass, if it ever
was. Null on every configuration activated the normal way, so a non-null value is the signal
that this merchant's notice waiting period was not actually served.
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.
|
forceEnabledBy
required |
string
|
The user who activated surcharging through the non-production bypass.
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.
|
promotionHeldAt
required |
string (date-time)
|
When an explicit promotion hold was placed on this configuration, or null when none is in
force. While it is set, the waiting-period sweep will not promote the configuration and both
enable and force enable are refused with `Surcharging:PromotionHeld`.
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.
|
promotionHeldBy
required |
string
|
The user who placed the promotion hold currently in force.
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.
|
promotionHoldReason
required |
string
|
Why the promotion hold currently in force was placed, when a reason was given.
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.
|
disabledAt
required |
string (date-time)
|
When surcharging was last disabled on this configuration, or null when it has not been disabled
since it was last enabled. While it is set, the waiting-period sweep will not promote the
configuration, even after a notice filed since the disable has returned `status` to
`WaitingPeriod`. Enabling or force enabling the configuration clears 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.
|
disabledBy
required |
string
|
The user who applied the disable currently in force.
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.
|
autoPromotionBlockedReason
required |
SurchargeAutoPromotionBlockReason
SurchargeAutoPromotionBlockReason |
Why the deployment's auto-promotion source policy is refusing to promote this configuration, or
null when it is not refusing.
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.
NoApiFiledNotice |
The policy is ApiFiledOnly and none of the notices the waiting period counts was filed under an API key. Filing a fresh notice over the API clears it; the waiting period runs again from that notice. | PolicyNone |
The policy is None, so nothing promotes on this deployment whatever the notices say. Only an operator changing the policy clears it. |
|
networkPolicies
required |
array of SurchargeNetworkPolicyDto
array of SurchargeNetworkPolicyDto |
Per-network surcharge policies.
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 SurchargeNetworkPolicyDto:
| Field |
Type |
Description |
network
required |
string
|
The card network this policy applies to. Required, and it must be one of these spellings: Visa;
Mastercard, Master Card or MC; Discover; Amex or American Express; JCB; Diners, Diners Club or
Diners Club International; UnionPay, Union Pay, China Union Pay, China UnionPay or CUP; Interac.
Case and surrounding spaces are ignored, and the name is stored and returned as sent. A
configuration names each network once: two spellings of one network (Mastercard and MC) are the
same network.
nullablemax length 64
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.
| isAllowed
required |
boolean
|
Whether surcharging is allowed on this network.
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.
| customRate
required |
number (double)
|
Optional network-specific rate override (decimal fraction); null uses the default rate.
Conditional: When CustomRate is not null. Range: 0 to 0.03.
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.
|
This body has no documented fields. |
statePolicies
required |
array of SurchargeStatePolicyDto
array of SurchargeStatePolicyDto |
Per-state surcharge policies.
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 SurchargeStatePolicyDto:
| Field |
Type |
Description |
stateCode
required |
string
|
Two-letter US state code (e.g. "CO", "NY").
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.
| restrictionType
required |
SurchargeStateRestrictionType
SurchargeStateRestrictionType |
How the state restricts surcharging.
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.
Prohibited |
Surcharging is prohibited outright in the state. | Restricted |
Surcharging is allowed but constrained (e.g. a state cap or disclosure rules). | Permissive |
Surcharging is permitted with no state-specific restriction beyond network rules. |
| capRate
required |
number (double)
|
Optional state-imposed maximum rate (decimal fraction). Null means the state applies no numeric
cap beyond network rules.
Conditional: When CapRate is not null. Must be >= 0.
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.
|
This body has no documented fields. |
notices
required |
array of SurchargeNoticeRecordDto
array of SurchargeNoticeRecordDto |
Filed card-brand notices (per network).
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 SurchargeNoticeRecordDto:
| Field |
Type |
Description |
noticeId
required |
string (uuid)
|
The notice's identifier, used to name it in an amendment. Null on a notice recorded before
notice identifiers were assigned; such a notice cannot be amended and is corrected by filing a
new one.
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.
| network
required |
string
|
The card network the notice covers; null for an all-network notice.
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.
| filedAt
required |
string (date-time)
|
When this record was created in WinkPG.
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.
| attestedNoticeDate
required |
string (date-time)
|
The calendar date the merchant attested they filed notice with the card networks, when that
predates `filedAt`. Null when the notice was filed as of the record date.
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.
| effectiveAt
required |
string (date-time)
|
When the notice becomes effective (the network is surchargeable at/after this instant).
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.
| filedByUserId
required |
string
|
The user who filed the notice.
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.
| filedByApiKeyId
required |
string (uuid)
|
The API key the notice was filed under, or null when it was not filed over the API (a notice
filed from the portal records neither this nor `filedByApiKeyName`, and so does every
notice recorded before provenance was captured).
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.
| filedByApiKeyName
required |
string
|
The display name the API key carried when the notice was filed. Never re-resolved, so a key
renamed since keeps naming itself here the way it was named at the time.
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.
| referenceNumber
required |
string
|
The notice reference number issued by the network / processor. The only field an amendment
changes.
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.
| amendedAt
required |
string (date-time)
|
When the reference number was last amended, or null when it never has been.
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.
| amendedBy
required |
string (uuid)
|
The user who last amended the reference number, or null when it has never been amended or the
amending caller carried no user id.
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.
| processorAccountId
required |
string
|
The processor account the notice was filed under: a processor profile id from the merchant's
processing settings, or null for a notice that covers every processor. A value recorded before
filing checked it against the merchant's profiles reads back exactly as it was written.
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.
| coversAllProcessors
required |
boolean
|
Whether the notice covers every card processor the merchant is boarded on, which is true when it
names no processor account.
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.
| coveredProcessorProfileIds
required |
array of string (uuid)
array of |
The card processor profiles the notice covers: the one it names, or every card processor profile
on the merchant for a notice that names none. Empty when the stored processor account is not a
profile id, or when the merchant's profiles could not be read for an all-processor notice.
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.
|
This body has no documented fields. |
cardProcessorCoverage
required |
array of SurchargeCardProcessorCoverageDto
array of SurchargeCardProcessorCoverageDto |
Every card processor profile the merchant is boarded on, and whether a filed notice covers each
one. Null when the merchant's processing settings could not be read for this response.
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 SurchargeCardProcessorCoverageDto:
| Field |
Type |
Description |
processorProfileId
required |
string (uuid)
|
The processor profile id from the merchant's processing settings.
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.
| processorId
required |
string
|
The processor the profile routes to, for example `tsys`.
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.
| processorName
required |
string
|
The processor's display 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.
| isActive
required |
boolean
|
Whether the profile is active. Only an active profile needs a covering notice before surcharging
is activated, and only while the platform requires notice coverage per processor.
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.
| isCovered
required |
boolean
|
Whether a counted notice covers this profile.
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.
|
This body has no documented fields. |
concurrencyStamp
required |
string
|
Optimistic-concurrency token; supply the value read here when updating.
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.
|