Handle VP3350 surcharge callbacks
Use gateway-provided eligibility and limits and preserve the surcharge through result handling and refunds.
Check eligibility before offering the option
The documented VP3350 flow is US-only and online-only, for enabled merchants and supported sale/auth/linked-refund operations. Register the observer before requesting Surcharge TRUE or the SDK returns SurchargeObserverRequired. This is a technical feature description, not legal approval for a merchant’s pricing policy.
Provide the transaction location
Without address overrides the gateway uses the merchant address. If supplying any TransactionAddress field, provide the complete address including TransactionAddressCountry. An incomplete override can return TransactionAddressMissing.
Answer the limit callback
When ResponseRequired is TRUE, continueSurcharge must receive Result. For acceptance supply nonnegative SurchargeAmount in minor units within the returned maximum, plus OperatorPin when required. Ineligible/error cases can return zero limits; respond FALSE rather than inventing a fee.
Reconcile totals and refunds
Amount includes surcharge; SubtotalAmount and SurchargeAmount identify the components. Missing SurchargeAmount means none. Partial approvals of surcharged transactions are voided. Linked refunds need the prorated surcharge portion; requesting surcharge refund where none existed is rejected.