Orchestrate
Processing Settings

Processing Settings

Configure payment processing capabilities, pricing, limits, and funding for processing accounts


Processing settings control how processing accounts handle payments, including which payment methods are accepted, pricing structure, transaction limits, fraud prevention features, and funding configuration. Each processing account has a set of processing settings that define its payment processing capabilities and behavior.

Prerequisites

Before configuring processing settings, it's helpful to learn about the following topics.


What are Processing Settings


Processing settings define the complete payment processing configuration for a processing account. They encompass several key areas:

  • Card Processing - Enable card payments, set which card types are accepted, configure pricing, transaction limits, and fraud prevention features like AVS
  • Bank Account Processing - Enable bank account payments, configure ACH processing, set pricing, enable account verification and balance checking
  • Funding Configuration - Control funding style, funding delay, default currency, and statement descriptors
  • Billing Configuration - Define how processing fees are collected and billed
  • Transaction Limits - Set duplicate transaction detection and global processing limits

Common use cases

  • Configure Payment Acceptance: Enable card and/or bank account payments for a processing account with appropriate pricing and limits
  • Implement Tiered Pricing: Set default pricing that can be overridden by processing rules for specific transaction types or amounts
  • Fraud Prevention: Configure AVS, balance checks, and account verification to reduce fraudulent transactions
  • Funding Control: Define how quickly funds are made available and which account receives deposits
  • Risk Management: Set transaction limits and duplicate detection windows to manage risk exposure

Card Processing Configuration


Card processing settings control how the processing account handles credit and debit card payments. Configure which card types are accepted, pricing structure, transaction limits, and fraud prevention features.

FieldDescriptionAPI Updatable
card_processing.enabledEnable or disable card payment acceptanceAdmin only
card_processing.allowed_card_types.creditAccept credit cardsYes
card_processing.allowed_card_types.debitAccept debit cardsYes
card_processing.allowed_card_types.prepaidAccept prepaid cardsYes
card_processing.default_pricing.trans_ratePercentage rate per transaction (e.g., 0.0275 for 2.75%)Admin only
card_processing.default_pricing.trans_costFixed cost per transaction (e.g., 0.30 for $0.30)Admin only
card_processing.default_pricing.trans_fee_capMaximum fee cap for high-value transactionsAdmin only
card_processing.default_pricing.conv_fee_allocConvenience fee allocation (0-1, where 1 passes all fees to customer)Yes
card_processing.features.avs.enabledEnable Address Verification ServiceYes
card_processing.features.avs.thresholdAVS match threshold requirementYes
card_processing.features.avs.nonparticipating_regionsAction for non-participating regions ('approve' or 'decline')Yes
card_processing.limits.trans_limitMaximum transaction amountAdmin only

Bank Account Processing Configuration


Bank account processing settings control ACH and bank-to-bank payment acceptance. Configure pricing, verification features, and transaction limits for bank account payments.

FieldDescriptionAPI Updatable
bank_account_processing.enabledEnable or disable bank account payment acceptanceAdmin only
bank_account_processing.default_pricing.trans_ratePercentage rate per transaction (typically lower than card rates)Admin only
bank_account_processing.default_pricing.trans_costFixed cost per transactionAdmin only
bank_account_processing.default_pricing.trans_fee_capMaximum fee cap for high-value transactionsAdmin only
bank_account_processing.default_pricing.conv_fee_allocConvenience fee allocation percentageYes
bank_account_processing.features.enhanced_account_verify.enabledEnable micro-deposit verification (customer confirms small deposit amounts)Yes
bank_account_processing.features.ach_verify.enabledEnable instant account verification (not available in sandbox)Admin only
bank_account_processing.features.balance_check.enabledEnable balance checking before processingYes
bank_account_processing.features.balance_check.services.plaidEnable Plaid for balance checksYes
bank_account_processing.limits.trans_limitMaximum transaction amountAdmin only

Funding Configuration


Funding settings control how and when funds are disbursed to the processing account after transaction settlement.

FieldDescriptionAPI Updatable
funding.styleHow funds are disbursed: gross (separate deposits/withdraws), itemized (per transaction), netted (debits minus credits), or manual (held until released)Yes
funding.delayNumber of days (0-10) to delay funding after settlementAdmin only
funding.default_currencyCurrency for transactions and settlements (USD or CAD). Must match account region.Admin only
funding.default_descriptorText appearing on customer bank/card statementsYes

Common uses for funding delay:

  • Risk management and reserve requirements
  • Allow time for chargebacks and disputes
  • Provide clearing time to avoid rejected bank transfers

Billing Configuration


Billing settings determine how processing fees are collected and charged.

FieldDescriptionAPI Updatable
billing.preferenceHow fees are charged: netted_daily (deducted from daily funding) or billed_monthly (invoiced monthly)Read-only
billing.monthly_account_feeFixed recurring charge for maintaining the processing accountAdmin only
billing.setupWho bills the fees: externally_billed (by processor) or auto_draft (by provider)Admin only
billing.flowBilling flow configuration (account-level or profile-level)Admin only

Querying Processing Settings


Retrieve processing settings to view current configuration for a processing account.

import payload
 
pl = payload.Session('secret_key_3bW9...', api_version='v2')
account = pl.Account.get('acct_processing123')
 
# Get processing account
 
# Get processing settings details
settings = account.processing['settings']
 
print(
    'Card Processing:',
    {
        'enabled': settings.card_processing.enabled,
        'allowed_card_types': settings.card_processing.allowed_card_types,
        'default_pricing': settings.card_processing.default_pricing,
    },
)
 
print(
    'Bank Account Processing:',
    {
        'enabled': settings.bank_account_processing.enabled,
        'default_pricing': settings.bank_account_processing.default_pricing,
    },
)
 
print(
    'Funding:',
    {
        'style': settings.funding.style,
        'delay': settings.funding.delay,
        'default_descriptor': settings.funding.default_descriptor,
    },
)

This example retrieves the processing settings for an account and displays the card processing, bank account processing, and funding configuration.

Transaction Limits and Duplicate Detection


Global transaction limits and fraud prevention rules apply across all payment methods.

FieldDescriptionAPI Updatable
limits.duplicate_limitTime window for duplicate transaction detection. Rejects transactions with same account details and amount within the specified period (e.g., "1 day", "24 hours", "2 hours"). Helps prevent double-charges and fraud.Yes

Note: Duplicate detection applies to bank account transactions to prevent accidental duplicate charges and certain fraud patterns.

Updating Processing Settings


Processing settings are typically created automatically when a processing account is created. You can update specific fields via the API, while most pricing and billing fields require administrative permissions.

Update funding configuration

Update funding style and statement descriptor:

import payload
 
pl = payload.Session('secret_key_3bW9...', api_version='v2')
account = pl.Account.get('acct_processing123')
 
# Get processing account
 
# Update funding style and descriptor
account.processing['settings'].update(
    funding={
        'style': 'netted',
        'default_descriptor': 'ACME CORP',
    }
)
 
print('Funding configuration updated')

Update allowed card types

Configure which card types are accepted and convenience fee allocation:

import payload
 
pl = payload.Session("secret_key_3bW9...", api_version="v2")
 
# Get processing account
account = pl.Account.get("acct_processing123")
 
# Update allowed card types and convenience fee allocation
account.processing["settings"].update(
    card_processing={
        "allowed_card_types": {
            "credit": True,
            "debit": True,
            "prepaid": False,
        },
        "default_pricing": {"conv_fee_alloc": 0.5},
    }
)
 
print("Card types and convenience fee allocation updated")

Enable Address Verification Service

Configure AVS fraud prevention settings:

import payload
 
pl = payload.Session('secret_key_3bW9...', api_version='v2')
account = pl.Account.get('acct_processing123')
 
# Get processing account
 
# Enable and configure AVS
account.processing['settings'].update(
    card_processing={
        'features': {
            'avs': {
                'enabled': True,
                'threshold': 'street_match',
                'nonparticipating_regions': 'decline',
            }
        }
    }
)
 
print('AVS fraud prevention enabled')

Enable bank account verification

Configure balance checking and micro-deposit verification:

import payload
 
pl = payload.Session("secret_key_3bW9...", api_version="v2")
account = pl.Account.get("acct_processing123")
 
# Get processing account
 
# Enable balance checking and micro-deposit verification
account.processing["settings"].update(
    bank_account_processing={
        "features": {
            "balance_check": {
                "enabled": True,
                "services": {"plaid": True},
            },
            "enhanced_account_verify": {"enabled": True},
        }
    }
)
 
print("Bank account verification features enabled")

Configure duplicate transaction detection

Set the time window for duplicate transaction detection:

import payload
 
pl = payload.Session("secret_key_3bW9...", api_version="v2")
 
# Get processing account
account = pl.Account.get("acct_processing123")
 
# Update duplicate transaction limit
account.processing["settings"].update(
    limits={
        "duplicate_limit": "24 hours",
    }
)
 
print("Duplicate limit updated to 24 hours")

Schema Reference

The following fields define the processing settings configuration:

ProcessingSetting Schema

Complete configuration object for processing account payment handling:

account_id
stringImmutable
The unique identifier of the account or organization that owns and controls these processing settings. Links the settings to a specific account. This field is immutable after creation and determines which merchant these settings apply to. (ID prefix: acct)
Pattern: ^acct_[A-Za-z0-9]+$
card_processing
object
Configuration for credit and debit card payment processing. This object controls whether card payments are enabled, which card types are accepted, which processor is used, transaction limits, fraud prevention features, and Level 3 processing defaults. Essential for processing accounts that want to accept card payments.
allowed_card_brands
object
Controls which card brands (payment networks) are accepted for card transactions. Processing accounts can selectively enable or disable specific card brands. At least one card brand must be enabled when card processing is active.
american_express
boolean
Enable or disable acceptance of American Express branded cards. When disabled, transactions attempted with American Express cards will be declined.
discover
boolean
Enable or disable acceptance of Discover branded cards. When disabled, transactions attempted with Discover cards will be declined.
mastercard
boolean
Enable or disable acceptance of Mastercard branded cards. When disabled, transactions attempted with Mastercard cards will be declined.
visa
boolean
Enable or disable acceptance of Visa branded cards. When disabled, transactions attempted with Visa cards will be declined.
allowed_card_types
object
Controls which types of payment cards are accepted. Processing accounts can selectively enable or disable credit, debit, and prepaid cards based on business needs, risk tolerance, use-case restrictions, pricing sensitivity, and target customers. At least one card type must be enabled when card processing is active.
credit
boolean
Enable or disable acceptance of credit cards. In some use-cases, payments made with credit are not allowed. Also, the pricing impact of credit cards may be a factor in if a business accepts credit card payments.
debit
boolean
Enable or disable acceptance of debit cards. Debit cards withdraw funds directly from the customer's bank account.
prepaid
boolean
Enable or disable acceptance of prepaid cards. Prepaid cards are pre-loaded with funds and not connected to a bank account or credit line. Some businesses choose to not accept prepaid card payments for fraud prevention or business policy reasons.
default_pricing
object
Default pricing structure for card transactions. Defines the percentage rate, fixed cost per transaction, maximum fee cap, and convenience fee allocation. These defaults apply unless overridden by a processing rule. Most pricing fields are read-only except for administrators on updates.
conv_fee_alloc
number (double)
Convenience fee allocation for card transactions. Specifies what percentage of the processing fee should be passed to the customer as a convenience fee rather than absorbed by the processing account. For example, a value of 1 means the entire fee is passed to the customer, while 0 means the processing account absorbs all fees. Note that card brand rules and regulations may restrict convenience fee usage, particularly for credit cards. Always ensure compliance with applicable card network rules.
trans_cost
number (double)
Fixed cost charged per card transaction, regardless of the transaction amount. This flat fee is added to the percentage-based rate (trans_rate) to calculate the total transaction fee. For example, a cost of 0.30 means $0.30 is charged per transaction. Total fee = (amount × trans_rate%) + trans_cost. This fixed cost helps cover gateway and authorization fees. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
trans_fee_cap
number (double)
Maximum fee cap for card transactions. This value limits the total fee charged on high-value card transactions, preventing fees from becoming excessive on large payment amounts. For example, if trans_rate is 2.9% and trans_fee_cap is 25.00, a $2,000 transaction would be capped at $25.00 instead of $58.00. Must be non-zero if set. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
trans_rate
number (double)
Percentage rate charged per card transaction. This rate is applied to the transaction amount to calculate the percentage-based portion of the fee. For example, a rate of 0.0275 means 2.75% of the transaction amount. Combined with the fixed cost (trans_cost) to determine total transaction fees. Card rates are typically higher than bank account rates due to interchange fees. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
enabled
boolean
Controls whether credit and debit card payments are allowed on this processing account. When enabled, customers can pay using their payment cards. When disabled, only other payment methods (if configured) will be available. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
features
object
Advanced features and fraud prevention tools for card processing. These features enhance security and reduce chargebacks by validating cardholder information before approving transactions.
avs
object
Address Verification Service (AVS) configuration for fraud prevention. AVS validates that the billing address provided matches the cardholder's address on file, helping reduce fraudulent card-not-present transactions.
enabled
boolean
Enable Address Verification Service (AVS) for card transactions. AVS compares the billing address provided by the customer with the address on file with the card issuer to help prevent fraud.
nonparticipating_regions
enum[string]
Action to take for cards from regions that don't participate in AVS. Set to "approve" to allow these transactions or "decline" to reject them. Some international cards may not support AVS verification.
Values: approve, decline
threshold
string
The AVS match threshold required to approve transactions. Defines which level of address matching is acceptable (e.g., street address match, zip code match, etc.) before approving a payment.
limits
object
Transaction limits for card payments. Controls the maximum amount that can be processed in a single card transaction. Used for risk management and fraud prevention.
trans_limit
number (double)
Maximum transaction amount allowed for a single card payment. Transactions exceeding this limit will be declined. Used for risk management and fraud prevention. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
bank_account_processing
object
Configuration for bank account payment processing. This object controls whether bank payments are enabled, which processor is used, transaction limits, verification features, and duplicate transaction prevention. Essential for processing accounts that want to accept bank-to-bank payments in addition to or instead of card payments.
default_pricing
object
Default pricing structure for bank account transactions. Defines the percentage rate, fixed cost per transaction, maximum fee cap, and convenience fee allocation. These defaults apply unless overridden by a processing rule. Most pricing fields are read-only except for administrators on updates.
conv_fee_alloc
number (double)
Convenience fee allocation for bank account transactions. Specifies what percentage of the processing fee should be passed to the customer as a convenience fee rather than absorbed by the processing account. For example, a value of 1 means the entire fee is passed to the customer, while 0 means the processing account absorbs all fees. This allows processing accounts to offset processing costs while staying compliant with card brand rules.
trans_cost
number (double)
Fixed cost charged per bank account transaction, regardless of the transaction amount. This flat fee is added to the percentage-based rate (trans_rate) to calculate the total transaction fee. For example, a cost of 0.25 means $0.25 is charged per transaction. Total fee = (amount × trans_rate%) + trans_cost. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
trans_fee_cap
number (double)
Maximum fee cap for bank account transactions. This value limits the total fee charged on high-value transactions, preventing fees from becoming excessive on large payment amounts. For example, if trans_rate is 1% and trans_fee_cap is 10.00, a $5,000 transaction would be capped at $10.00 instead of $50.00. Must be non-zero if set. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
trans_rate
number (double)
Percentage rate charged per bank account transaction. This rate is applied to the transaction amount to calculate the percentage-based portion of the fee. For example, a rate of 0.0125 means 1.25% of the transaction amount. Combined with the fixed cost (trans_cost) to determine total transaction fees. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
enabled
boolean
Controls whether bank account payments are allowed on this processing account. When enabled, customers can pay using their bank accounts. When disabled, only other payment methods (if configured) will be available. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
features
object
Advanced features and capabilities for bank account processing. These features enhance security, reduce fraud, and improve success rates by providing account verification and balance checking before processing payments.
ach_verify
object
Instant bank account verification feature. When enabled, provides real-time validation of bank account information to ensure accounts are valid and open before processing transactions. This reduces failed payments and fraud risk.
enabled
boolean
Enable enhanced instant account verification. This provides real-time bank account validation. Not available for sandbox/test accounts.
balance_check
object
Balance checking configuration to verify sufficient funds before processing bank account transactions. Helps reduce failed payments and NSF fees.
enabled
boolean
Enable balance checking before processing transactions. When enabled, the system checks if sufficient funds are available before attempting to process the payment, reducing NSF (non-sufficient funds) failures.
services
object
Configuration for balance check service providers. Specify which third-party services to use for checking account balances before processing.
plaid
boolean
Enable Plaid for real-time balance checks. Plaid provides instant account balance verification through secure bank connections, helping reduce failed transactions due to insufficient funds.
enhanced_account_verify
object
Micro-deposit account verification feature. When enabled, bank accounts are verified by sending two small deposits (typically less than $1 each) that the customer must confirm. This traditional verification method ensures the customer has access to the bank account and that it is active.
enabled
boolean
Enable ACH account verification through micro-deposits. When enabled, bank accounts are verified by sending small deposits ensuring the account is open and valid.
limits
object
Transaction limits for bank account payments. Controls the maximum amount that can be processed in a single transaction. Used for risk management and fraud prevention.
trans_limit
number (double)
Maximum transaction amount allowed for a single bank account payment. Transactions exceeding this limit will be declined. Used for risk management and fraud prevention. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
funding
object
Funding configuration for this processing account, including funding style, delay, default currency, and transaction descriptor. These settings control how and when funds are disbursed to the processing account and what information appears on bank statements.
default_currency
enum[string]
The default currency for all transactions and funding for this processing account. Supported values are "USD" (US Dollars) or "CAD" (Canadian Dollars). This determines the currency for settlements and must match the account's operating region. Read-only except for administrators on updates.
Values: USD, CAD
Read-only permissions: "Undocumented"
default_descriptor
string
The default text descriptor that appears on the customer's bank or card statement for transactions. This helps customers identify the merchant on their statements. Typically includes the business name or recognizable identifier. Maximum length varies by processor.
Max length: 128
delay
number (double)
Number of days to delay funding after transaction settlement. Valid range is 0-10 days. For example, a delay of 2 means funds are deposited 2 business days after settlement. Used for risk management and reserve requirements. Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
style
enum[string]
The funding style that determines how funds are disbursed to the merchant. Possible values: "gross" (all debits amounts in a single deposit and all credit amounts split into a separate single wihtdraw), "itemized" (separate deposits for each transaction), "netted" (debit amounts minus any credits in a single deposit or withdraw), "manual" (funds held until manually released), or null. Required for payfac processing, cannot be null for those accounts.
Values: gross, itemized, netted, manual
billing
object
Billing configuration for this processing account, including how fees are collected, when they are charged, and the monthly account fee. These settings determine the billing cycle and payment method for processing fees. Most billing fields are read-only or admin-only.
flow
string
The billing flow configuration for this processing account. Determines if this account should be billed with account-level billing or profile-level billing. This field is read-only and can only be modified by administrators.
Max length: 10
Read-only permissions: "Undocumented"
monthly_account_fee
number (double)
Fixed monthly fee charged for maintaining this processing account. This is a flat recurring charge that applies regardless of transaction volume. The fee is typically billed according to the billing preference (netted daily or billed monthly). Read-only except for administrators on updates.
Read-only permissions: "Undocumented"
preference
enum[string]
The billing preference indicating how processing fees are charged. Possible values: "netted_daily" (fees are deducted from daily funding), or "billed_monthly" (fees are invoiced monthly).
Values: netted_daily, billed_monthly
setup
string
The billing setup method for processing fees. Values can be either "externally_billed" (fees billed by processor) or "auto_draft" (fees automatically drafted by provider). Read-only except for administrators on updates.
Max length: 9
Read-only permissions: "Undocumented"
limits
object
Global transaction limits and restrictions for this processing account. Controls duplicate transaction detection and other transaction-level restrictions to prevent fraud and accidental duplicate charges.
duplicate_limit
string
Time-based limit to prevent duplicate bank account transactions. Specify the duration window (e.g., "1 day", "24 hours") during which duplicate transactions with the same account number, routing number, and amount will be rejected. Helps prevent accidental double-charges and certain types of fraud.
Max length: 16

Refer to the configuration tables above for detailed field descriptions and API updateability. The schema includes nested objects for card processing, bank account processing, funding, billing, and transaction limits.

Next Steps

Fine-tune pricing with rules, implement fraud prevention, and configure advanced processing features


Create Conditional Pricing with Processing Rules

Configure processing rules to apply conditional pricing, funding delays, and processing behavior based on transaction characteristics like amount, card type, or payment method.

Configure Automated Funding

Set up automated funding to control when and how funds are disbursed to processing accounts after transaction settlement.

Enable Fraud Prevention

Implement fraud prevention features like AVS, balance checks, and account verification to reduce chargebacks and failed transactions.