Payment Adapter
amerta / Payments/Types / PaymentAdapter
Interface: PaymentAdapter
Defined in: amerta/payload/payments/types/index.d.ts:81
Payment Adapter Interface
Defines the contract for payment gateway adapters. Each payment provider (Stripe, PayPal, etc.) must implement this interface to integrate with the system.
PaymentAdapter
Example
// Implementing a payment adapter
const stripeAdapter: PaymentAdapter = {
slug: "stripe",
label: "Stripe",
settingsFields: [...],
onSaveSettings: async (args) => { ... },
executeAction: async (action, data, method) => { ... },
confirm: async (amount, currency, orderNumber, redirectUrl, locale, order) => { ... }
};
Properties
callback()?
optionalcallback: (req,order) =>Promise<any>
Defined in: amerta/payload/payments/types/index.d.ts:168
Optional server-side callback for payment gateway confirmations
Parameters
| Parameter | Type |
| ------ | ------ |
| req | PayloadRequest |
| order | Order |
Returns
Promise<any>
confirm()
confirm: (
amount,currency,orderNumber,redirectUrl,locale,order) =>Promise<{redirectUrl:string;success:boolean; }>
Defined in: amerta/payload/payments/types/index.d.ts:121
Confirm payment after customer submission
Parameters
| Parameter | Type |
| ------ | ------ |
| amount | number |
| currency | Currency |
| orderNumber | string |
| redirectUrl | string |
| locale | string |
| order | Order |
Returns
Promise<{ redirectUrl: string; success: boolean; }>
executeAction()
executeAction: (
actionName,actionData,method) =>Promise<any>
Defined in: amerta/payload/payments/types/index.d.ts:107
Execute a payment action (charge, refund, etc.)
Parameters
| Parameter | Type |
| ------ | ------ |
| actionName | string |
| actionData | {[key: string]: any; amount: number; currencyCode?: string; } |
| actionData.amount | number |
| actionData.currencyCode? | string |
| method | PaymentMethod |
Returns
Promise<any>
handleWebhook()?
optionalhandleWebhook: (req) =>Promise<Response>
Defined in: amerta/payload/payments/types/index.d.ts:140
Optional webhook handler for payment notifications
Parameters
| Parameter | Type |
| ------ | ------ |
| req | PayloadRequest |
Returns
Promise<Response>
label
label:
string
Defined in: amerta/payload/payments/types/index.d.ts:83
Human-readable name of the payment provider
onSaveSettings()
onSaveSettings: (
args) =>Promise<any>
Defined in: amerta/payload/payments/types/index.d.ts:97
Callback when payment settings are saved
Parameters
| Parameter | Type |
| ------ | ------ |
| args | { data: Partial<PaymentMethod>; operation: CreateOrUpdateOperation; originalDoc?: any; req: PayloadRequest; } |
| args.data | Partial<PaymentMethod> |
| args.operation | CreateOrUpdateOperation |
| args.originalDoc? | any |
| args.req | PayloadRequest |
Returns
Promise<any>
settingsFields
settingsFields:
Field[]
Defined in: amerta/payload/payments/types/index.d.ts:85
Dynamic form fields for payment provider configuration
slug
slug:
string
Defined in: amerta/payload/payments/types/index.d.ts:82
Unique identifier for the payment adapter (e.g., "stripe", "paypal")