# VirtualTerminalSettings

A model the API reference uses in a request or a response. The operation pages link every field typed as this model here.

## Fields
- `cardBinPrompting` ([VirtualTerminalCardBinPrompting](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalCardBinPrompting.md))
  Fields:
  - `enableCommercial` (boolean)
  - `enableGsa` (boolean)
  - `enableFsa` (boolean)
- `allowRepeatSales` (boolean)
- `allowRefunds` (boolean)
- `enableEmailReceipts` (boolean)
- `fields` ([VirtualTerminalFields](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalFields.md))
  Fields:
  - `customer` ([VirtualTerminalCustomerField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalCustomerField.md))
  - `invoiceNumber` ([VirtualTerminalInvoiceNumField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalInvoiceNumField.md))
  - `purchaseOrderNumber` ([VirtualTerminalPurchaseOrderNumField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalPurchaseOrderNumField.md))
  - `billingAddress` ([VirtualTerminalBillingAddressFieldGroup](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalBillingAddressFieldGroup.md))
  - `shippingAddress` ([VirtualTerminalShippingAddressFieldGroup](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalShippingAddressFieldGroup.md))
  - `contactPhone` ([VirtualTerminalPhoneField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalPhoneField.md))
  - `level3Amount` ([VirtualTerminalLevel3AmountField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalLevel3AmountField.md))
  - `shippingAmount` ([VirtualTerminalShippingAmountField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalShippingAmountField.md))
  - `convenienceAmount` ([VirtualTerminalConvenienceFeeField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalConvenienceFeeField.md))
  - `dutyAmount` ([VirtualTerminalDutyAmountField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalDutyAmountField.md))
  - `tipAmount` ([VirtualTerminalTipAmountField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalTipAmountField.md))
  - `taxAmount` ([VirtualTerminalTaxField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalTaxField.md))
  - `emailAddress` ([VirtualTerminalEmailField](https://devportal.demo.winkpg.io/docs/api/models/VirtualTerminalEmailField.md))
- `allowPartialApprovals` (boolean): Merchant-level master switch for partial approvals. When false, no processor profile can  enable partial approvals for this merchant; when true, each profile still decides per card  type through its own partial-auth field. A merchant document written before this setting  existed carries no value, which reads as the default (available). Conditional: When AllowPartialApprovals is false and CardBinPrompting is not null and CardBinPrompting.EnableFsa is true. (nullable)
- `partialApprovalStrategy` ([PartialApprovalStrategy](https://devportal.demo.winkpg.io/docs/api/models/PartialApprovalStrategy.md)): What the platform does with a partial approval. Null means unconfigured and resolves to  `RequireOperatorAcknowledgment`. (nullable)
  Values:
  - `RequireOperatorAcknowledgment`: Hold the partial authorization and wait for an operator to accept the approved amount or void it. The platform takes no action of its own until the operator answers, or until partialApprovalAckTimeoutMinutes elapses.
  - `AutoAccept`: Keep the approved amount without asking. The remainder is collected as a second tender when split tender is permitted, or left uncollected when it is not.
  - `AutoVoid`: Void the partial authorization immediately and treat the sale as not completed. Use where a short payment is never acceptable and the cardholder should be asked for another card.
- `allowSplitTender` (boolean): Whether the remainder of a partially approved sale may be collected on a second tender.  Null reads as the default (permitted). (nullable)
- `allowTipAdjustmentOnPartialApproval` (boolean): Whether a tip may be adjusted on a transaction the issuer already reduced. Opt-in; null  reads as the default (not permitted). Conditional: When AllowPartialApprovals is false and AllowTipAdjustmentOnPartialApproval is true. (nullable)
- `splitTenderMaxTenders` (integer(int32)): Maximum number of tenders a single sale may be split across. Null reads as the default  (`DefaultSplitTenderMaxTenders`). Conditional: When AllowPartialApprovals is false and SplitTenderMaxTenders is not null. (nullable, min 1, max 4)
- `partialApprovalAckTimeoutMinutes` (integer(int32)): How long the platform waits for an operator to accept or void a partial approval before the  acknowledgment window closes. Only meaningful under  `RequireOperatorAcknowledgment`. Null  reads as the default (`DefaultPartialApprovalAckTimeoutMinutes`). Conditional: When PartialApprovalAckTimeoutMinutes is not null and PartialApprovalStrategy is not null and PartialApprovalStrategy != RequireOperatorAcknowledgment. (nullable, min 1, max 1440)

## See also

- [All documentation](https://devportal.demo.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
