ProPay Validation Reference

This reference helps you resolve ProPay validation errors returned by propay.canExecute. When validation fails, follow the troubleshooting steps below to identify and fix the issues.

Quick Troubleshooting

When propay.canExecute returns can_execute: false, follow this workflow:

  1. Check the error codes: Review the missing_requirements array in the response
  2. Look up error meanings: Use the PROPAY_MISSING_REQUIREMENTS reference for each error code
  3. Fix using API endpoints: Each error description includes links to the relevant API endpoints
  4. Retry validation: Call propay.canExecute again until can_execute: true

Key Resources

Error Code Reference

PROPAY_MISSING_REQUIREMENTS - Complete list of validation error codes with descriptions and resolution links.

Integration Guides

Choose the guide that matches your workflow:

API Documentation

For detailed field requirements and examples:

ProPay-Specific Requirements

Unlike standard API calls where many fields are optional, ProPay validation requires specific data to be populated:

Business Registration Type

  • Required for all operations: Must be one of the valid registration types
  • Valid values: Corporation (private/public), LLC (private/public), Sole Proprietorship, Partnership (private/public), Government, Non-Profit
  • When to add: During business.create or via business.update
  • Field name: registration_type

Required Entity Completeness

While API endpoints allow partial data, ProPay requires:

  • Complete business information (legal name, tax ID, addresses, MCC, registration type, phone, email)
  • At least one business owner with full personal details (including SSN, DOB, and ownership percentage)
  • Bank account with routing number, account number, and account type
  • Sales information with monthly volume, average ticket, and highest ticket amounts

Tier Code

  • Configuration requirement: Tier Code must be configured in partner settings
  • Set by: Kompliant support team during partner onboarding
  • When needed: Required for all ProPay provisioning operations
  • Error code: TIER_CODE_REQUIRED

Common Validation Patterns

Missing Core Entities

Error: ENTITY_REQUIRED
Fix: Create missing entities using the create endpoints listed above

Business Information Requirements

Error: BUSINESS_LEGAL_NAME_REQUIRED
Fix: Provide the business legal name via business.create or business.update

Error: BUSINESS_TAX_NUMBER_REQUIRED
Fix: Provide the business tax ID number (EIN) via business.create or business.update

Error: MERCHANT_CATEGORY_CODE_REQUIRED
Fix: Provide a valid MCC (Merchant Category Code) via business.create or business.update

Error: BUSINESS_REGISTRATION_TYPE_REQUIRED, INVALID_BUSINESS_REGISTRATION_TYPE
Fix: Provide a valid business registration type. Must be one of: Corporation (private/public), LLC (private/public), Sole Proprietorship, Partnership (private/public), Government, or Non-Profit

Incomplete Field Data

Error: FIELDS_REQUIRED
Fix: Check the fields array in the error response, then populate missing fields using the appropriate update endpoints

Configuration Issues

Error: PROVISIONER_DISABLED
Fix: Contact support to enable ProPay provisioning for your partner account

Error: TIER_CODE_REQUIRED
Fix: ProPay tier code must be configured in partner settings. Contact support to configure the tier code.

Business Owner Requirements

Error: BUSINESS_OWNER_REQUIRED, OWNER_SSN_REQUIRED, OWNER_DOB_REQUIRED, OWNER_OWNERSHIP_PERCENTAGE_REQUIRED
Fix: Ensure at least one business owner is added with complete information including SSN, date of birth, and ownership percentage

Bank Account Requirements

Error: BANK_ACCOUNT_REQUIRED
Fix: Create and associate a bank account using bankAccount.create and business.addBankAccount

Errors: ROUTING_NUMBER_REQUIRED, ACCOUNT_NUMBER_REQUIRED, ACCOUNT_TYPE_REQUIRED
Fix: Bank account must include routing number, account number, and account type

Error: INVALID_ACCOUNT_TYPE
Fix: Account type must be one of: savings, checking, or general_ledger

Error: INVALID_ACCOUNT_OWNERSHIP_TYPE
Fix: Account ownership type must be either business or individual

Sales Details Requirements

Error: SALES_DETAILS_REQUIRED
Fix: Sales information entity must be created using business.salesInfo.create

Errors: MONTHLY_VOLUME_REQUIRED, AVERAGE_TICKET_REQUIRED, HIGHEST_TICKET_REQUIRED
Fix: Sales information must include monthly volume, average ticket amount, and highest ticket amount projections

Address Requirements

Error: PRIMARY_ADDRESS_REQUIRED
Fix: Business must have a primary (physical) address. Add via business.create or business.update

Errors: PRIMARY_ADDRESS_LINE1_REQUIRED, PRIMARY_CITY_REQUIRED, PRIMARY_STATE_REQUIRED, PRIMARY_POSTAL_CODE_REQUIRED
Fix: Primary address must include line 1, city, state, and postal code fields

Error: BUSINESS_ADDRESS_REQUIRED
Fix: Business must have a business (mailing) address. Add via business.create or business.update

Errors: BUSINESS_ADDRESS_LINE1_REQUIRED, BUSINESS_CITY_REQUIRED, BUSINESS_STATE_REQUIRED, BUSINESS_POSTAL_CODE_REQUIRED
Fix: Business address must include line 1, city, state, and postal code fields

Best Practices

  1. Validate early: Call propay.canExecute before attempting operations to catch issues upfront
  2. Build complete entities: Populate all required fields during initial entity creation rather than updating later
  3. Use integration guides: Follow the step-by-step workflows rather than building ad-hoc API call sequences
  4. Test in sandbox: Verify your validation logic works before production deployment
  5. Verify ownership data: ProPay requires SSN and DOB for business owners - ensure you collect this information during application
  6. Check account types: Only use valid account types (savings, checking, general_ledger) when creating bank accounts