Class PaymentApiHooks
PaymentApiHooks interface containing extension points for customizing Payment API requests for authorization, and their responses.
These hooks are executed in a transaction.
The extension points (hook names), and the functions that are called by each extension point. A function must be defined inside a JavaScript source and must be exported. The script with the exported hook function must be located inside a site cartridge. Inside the site cartridge a 'package.json' file with a 'hooks' entry must exist.
The hooks entry links to a json file, relative to the 'package.json' file. This file lists all registered hooks inside the hooks property:
A hook entry has a 'name' and a 'script' property.
- The 'name' contains the extension point, the hook name.
- The 'script' contains the script relative to the hooks file, with the exported hook function.
| Constant | Description |
|---|---|
| extensionPointAfterAuthorization: String = "dw.extensions.paymentapi.afterAuthorization" | The extension point name dw.extensions.paymentapi.afterAuthorization. |
| extensionPointBeforeAuthorization: String = "dw.extensions.paymentapi.beforeAuthorization" | The extension point name dw.extensions.paymentapi.beforeAuthorization. |
This class does not have a constructor, so you cannot create it directly.
| Method | Description |
|---|---|
| afterAuthorization(Order, OrderPaymentInstrument, Object, Status) | Called after the response has been handled for a request to authorize payment for the given order. |
| beforeAuthorization(Order, OrderPaymentInstrument, Object) | Called when a request is to be made to authorize payment for the given order. |
assign, create, create, defineProperties, defineProperty, entries, freeze, fromEntries, getOwnPropertyDescriptor, getOwnPropertyNames, getOwnPropertySymbols, getPrototypeOf, hasOwnProperty, is, isExtensible, isFrozen, isPrototypeOf, isSealed, keys, preventExtensions, propertyIsEnumerable, seal, setPrototypeOf, toLocaleString, toString, valueOf, values
- extensionPointAfterAuthorization: String = "dw.extensions.paymentapi.afterAuthorization"
The extension point name dw.extensions.paymentapi.afterAuthorization.
- extensionPointBeforeAuthorization: String = "dw.extensions.paymentapi.beforeAuthorization"
The extension point name dw.extensions.paymentapi.beforeAuthorization.
- afterAuthorization(order: Order, payment: OrderPaymentInstrument, custom: Object, status: Status): Status
Called after the response has been handled for a request to authorize payment for the given order.
The given status is the result of handling the response without customization. That status will be used unless an implementation of this hook returns an alternative status.
Parameters:
- order - the order whose payment to authorize
- payment - the payment instrument to authorize
- custom - container of custom properties included in the PSP response
- status - the result of handling the response without customization
Returns:
- a non-null result ends the hook execution
- beforeAuthorization(order: Order, payment: OrderPaymentInstrument, custom: Object): Status
Called when a request is to be made to authorize payment for the given order.
Return an error status to indicate a problem. The request will not be made to the payment provider.
Parameters:
- order - the order whose payment to authorize
- payment - the payment instrument to authorize
- custom - container for custom properties to include in request
Returns:
- a non-null result ends the hook execution