import * as z from "zod/v3"; import { CardScheme } from "./cardscheme.js"; export type MerchantAccountUpdate = { /** * Whether the Real-Time Account Updater service is enabled for this merchant account. The Account Updater service is used to update card details when cards are lost, stolen or expired. If the field is not set or if it's set to `false`, the Account Updater service doesn't get called if a payment fails with expired or invalid card details. If the field is set to `true`, the service is called. Please note that for this to work the other `account_updater_* fields` must be set as well. */ accountUpdaterEnabled?: boolean | undefined; /** * The public key used to encrypt the request to the Real-Time Account Updater service. The Account Updater service is used to update card details when cards are lost, stolen or expired. If the field is not set or if it's set to `null`, the Account Updater service doesn't get called. If the field is set, the other `account_updater_*` fields must be set as well. * * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ accountUpdaterRequestEncryptionKey?: string | null | undefined; /** * The ID of the key used to encrypt the request to the Real-Time Account Updater service. The Account Updater service is used to update card details when cards are lost, stolen or expired. If the field is not set or if it's set to `null`, the Account Updater service doesn't get called. If the field is set, the other `account_updater_*` fields must be set as well. * * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ accountUpdaterRequestEncryptionKeyId?: string | null | undefined; /** * The key used to decrypt the response from the Real-Time Account Updater service. The Account Updater service is used to update card details when cards are lost, stolen or expired. If the field is not set or if it's set to `null`, the Account Updater service doesn't get called. If the field is set, the other `account_updater_*` fields must be set as well. * * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ accountUpdaterResponseDecryptionKey?: string | null | undefined; /** * The ID of the key used to decrypt the request from the Real-Time Account Updater service. The Account Updater service is used to update card details when cards are lost, stolen or expired. If the field is not set or if it's set to `null`, the Account Updater service doesn't get called. If the field is set, the other `account_updater_*` fields must be set as well. * * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ accountUpdaterResponseDecryptionKeyId?: string | null | undefined; /** * The maximum monetary amount allowed for over-capture, in the smallest currency unit, for example `1299` cents to allow for an over-capture of `$12.99`. */ overCaptureAmount?: number | null | undefined; /** * The maximum percentage allowed for over-capture, for example `25` to allow for an over-capture of `25%` of the original transaction amount. */ overCapturePercentage?: number | null | undefined; /** * Client key provided by Pagos to authenticate to the Loon API. Loon is the Account Updater service we use and if the field is not set or if it's set to null, the Account Updater service doesn't get configured. If the field is set to `null`, the other `loon_*` fields must be set to null as well. * * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ loonClientKey?: string | null | undefined; /** * Secret key provided by Pagos to authenticate to the Loon API. Loon is the Account Updater service we use and if the field is not set or if it's set to null, the Account Updater service doesn't get configured. If the field is set to `null`, the other `loon_*` fields must be set to null as well. * * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible. */ loonSecretKey?: string | null | undefined; /** * Card schemes accepted when creating jobs using this set of Loon API keys. Loon is the Account Updater service we use and if the field is not set or if it's set to null, the Account Updater service doesn't get configured. If the field is set to `null`, the other `loon_*` fields must be set to null as well. */ loonAcceptedSchemes?: Array | null | undefined; /** * Merchant account ID provided by Pagos to identify this merchant account on the Loon API. Loon is the Account Updater service we use and if the field is not set or if it's set to null, the Account Updater service doesn't get configured. If the field is set to `null`, the other `loon_*` fields must be set to null as well. */ loonMerchantAccountId?: string | null | undefined; /** * Requestor ID provided for Visa after onboarding to use Network Tokens. */ visaNetworkTokensRequestorId?: string | null | undefined; /** * Application ID provided for Visa after onboarding to use Network Tokens. */ visaNetworkTokensAppId?: string | null | undefined; /** * Requestor ID provided for American Express after onboarding to use Network Tokens. */ amexNetworkTokensRequestorId?: string | null | undefined; /** * Application ID provided for American Express after onboarding to use Network Tokens. */ amexNetworkTokensAppId?: string | null | undefined; /** * Requestor ID provided for Mastercard after onboarding to use Network Tokens. */ mastercardNetworkTokensRequestorId?: string | null | undefined; /** * Application ID provided for Mastercard after onboarding to use Network Tokens. */ mastercardNetworkTokensAppId?: string | null | undefined; /** * Requestor ID provided for Discover after onboarding to use Network Tokens. */ discoverNetworkTokensRequestorId?: string | null | undefined; /** * Application ID provided for Discover after onboarding to use Network Tokens. */ discoverNetworkTokensAppId?: string | null | undefined; /** * When enabled network tokens will be generated asynchronously and only used on subsequent transactions to speed up transaction processing. */ asyncNetworkTokensEnabled?: boolean | undefined; /** * The display name for the merchant account. */ displayName?: string | null | undefined; }; /** @internal */ export type MerchantAccountUpdate$Outbound = { account_updater_enabled: boolean; account_updater_request_encryption_key?: string | null | undefined; account_updater_request_encryption_key_id?: string | null | undefined; account_updater_response_decryption_key?: string | null | undefined; account_updater_response_decryption_key_id?: string | null | undefined; over_capture_amount?: number | null | undefined; over_capture_percentage?: number | null | undefined; loon_client_key?: string | null | undefined; loon_secret_key?: string | null | undefined; loon_accepted_schemes?: Array | null | undefined; loon_merchant_account_id?: string | null | undefined; visa_network_tokens_requestor_id?: string | null | undefined; visa_network_tokens_app_id?: string | null | undefined; amex_network_tokens_requestor_id?: string | null | undefined; amex_network_tokens_app_id?: string | null | undefined; mastercard_network_tokens_requestor_id?: string | null | undefined; mastercard_network_tokens_app_id?: string | null | undefined; discover_network_tokens_requestor_id?: string | null | undefined; discover_network_tokens_app_id?: string | null | undefined; async_network_tokens_enabled: boolean; display_name?: string | null | undefined; }; /** @internal */ export declare const MerchantAccountUpdate$outboundSchema: z.ZodType; export declare function merchantAccountUpdateToJSON(merchantAccountUpdate: MerchantAccountUpdate): string; //# sourceMappingURL=merchantaccountupdate.d.ts.map