# ApmData

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

The instrument block for an alternative payment method: a payment the cardholder approved inside
a provider (PayPal, Venmo, Pay Later, Affirm, Klarna, Afterpay) rather than by presenting an
instrument to the gateway.

## Fields
- `providerKey` (string): The processor key of the provider that owns the approval (for example `loopback`,  `paypal`). Recorded so the routing trail and every read surface can name the provider  without quoting a reference. (nullable)
- `fundingSource` (string): The wallet or scheme the cardholder chose inside the provider, as a  `PaymentMethodKeys` alternative-payment key (`paypal`, `venmo`,  `paylater`, `affirm`, `klarna`, `afterpay`). (nullable)
- `providerOrderId` (string): The provider's identifier for the order or checkout session the approval belongs to. (nullable)
- `approvalToken` (string): The bearer value the provider handed back for the approval, exchanged for a charge. (nullable)
- `payerReference` (string): The provider's identifier for the payer, typically the email address the payer holds their  provider account under. (nullable)
- `providerAuthorizationId` (string): The provider's authorization identifier, written from `ProcessorOutcome.References` after  the processor answers. A capture or a void quotes it. (nullable)
- `providerCaptureId` (string): The provider's capture identifier, written from `ProcessorOutcome.References` after the  processor answers. A refund quotes it. (nullable)
- `providerRefundId` (string): The provider's refund identifier, on a refund transaction. Written by the processor when the  platform asks for a refund, or by the webhook receiver when it records a refund the provider  initiated; a refund webhook is matched to its refund transaction by it. (nullable)
- `providerInitiatedRefund` (boolean): True on a refund transaction the platform recorded from a provider webhook rather than asked for:  the merchant refunded in the provider's own dashboard, or the provider refunded on its own account.  No processor was called for it; the money had already moved. (nullable)
- `refundExceededCapacity` (boolean): True on a provider-initiated refund that exceeded the parent's remaining refundable amount when it  was recorded. Recorded rather than rejected, because the provider has already returned the money;  flagged so an operator can reconcile it. (nullable)
- `providerFeeAmount` (number(double)): The fee the provider charged for the transaction, when it reported one on the response. (nullable)
- `approvedAtUtc` (string(date-time)): When the provider reported the approval, in UTC. (nullable)
- `clientParameters` (object): The values the provider's own button produced in the cardholder's browser, carried onto the  begin-approval request the processor is dispatched with. (nullable)
- `clientPassthrough` (object): Opaque provider values the processor produced that the surface which began the approval has  to hand back to the provider's own script. (nullable)
- `returnUri` (string): Where the provider returns the cardholder on approval, as the surface that started the  approval supplied it. (nullable)
- `cancelUri` (string): Where the provider returns the cardholder on cancellation, as the surface that started the  approval supplied it. (nullable)

## See also

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