Overview
This page lists all valid enumeration values accepted by the Onboarding API. Use these exact string values when submitting merchant onboarding requests.All enum values are case-sensitive. Make sure to use the exact capitalization shown below.
Business Type
Determines the type of business entity and affects which fields are required during onboarding.Usage Example
STARTER
STARTER
Best for: Small businesses, sole traders, freelancersRequirements:
- Barangay Business Permit
- No incorporators needed
- No registered address needed
- Legal name optional
SOLE_PROPRIETOR
SOLE_PROPRIETOR
Best for: Individual business ownersRequirements:
- 1 incorporator required
- Legal name required
- Registered address required
- Additional KYC documents
PARTNERSHIP
PARTNERSHIP
Best for: Business partnerships, joint venturesRequirements:
- 2 incorporators required
- Legal name required
- Registered address required
- Partnership agreement documents
CORPORATION
CORPORATION
Best for: Registered corporationsRequirements:
- Minimum 3 incorporators required
- Legal name required
- Registered address required
- Corporate registration documents
Mode of Payment
Specifies which payment channels the merchant wants to enable.Usage Example
Currency
Three-letter ISO 4217 currency codes for customer transactions.Usage Example
Currently, only
PHP and USD are supported. The default currency is PHP.Bank Names
bankName is free text (up to 500 characters) - the name of the bank holding the settlement account. There is no fixed enum on the v2 onboarding API; send the bank’s name as a plain string.
Usage Example
Bank Account Type
Account type for traditional bank accounts.Usage Example
This field is required only when
accountDepositType is "BANK".Bank Account Deposit Type
Specifies the type of settlement account.Usage Examples
BANK - Traditional Bank Account
BANK - Traditional Bank Account
Required fields:
accountType(SAVINGS or CHECKING_CURRENT)bankName(the bank’s name, free text)accountNameaccountNumbercurrency
GCASH - E-wallet
GCASH - E-wallet
Required fields:
bankName(must be “GCASH”)accountNameaccountNumber(GCash mobile number)
PAYMAYA - E-wallet
PAYMAYA - E-wallet
Required fields:
bankName(must be “PAYMAYA”)accountNameaccountNumber(PayMaya mobile number)
NO_ACCOUNT
NO_ACCOUNT
Use for: Special cases where no settlement account is needed
Gender
Gender options for incorporators and representatives.Usage Example
Onboarding Status
Lifecycle states for merchant onboarding applications.Status Flow
NEW
NEW
When: Initial merchant onboarding submissionMerchant Action: Wait for Modulus Labs reviewNext Steps: Status will change to either APPROVED or DECLINED
APPROVED
APPROVED
When: Merchant passes KYC verificationMerchant Action: Can start accepting paymentsNote: Approved merchants can be declined later if compliance issues are discovered
DECLINED
DECLINED
When: Merchant fails KYC verification or documents are incompleteMerchant Action: Review decline reason, update information, and resubmitNext Steps: Resubmitting will change status to PENDING
PENDING
PENDING
When: Merchant has updated information after being declinedMerchant Action: Wait for re-review by Modulus LabsNext Steps: Status will change to either APPROVED or DECLINED
Validation Quick Reference
Use this table for quick validation during implementation:Common Mistakes
Wrong Capitalization
Wrong Capitalization
Wrong:
"businessType": "starter" or "GCASH" as bankName for bank typeCorrect: "businessType": "STARTER" and proper account deposit typeSolution: Always use uppercase for enum valuesInvalid Bank for Deposit Type
Invalid Bank for Deposit Type
Wrong:Correct:Solution: Match bankName with accountDepositType
Incorporator count
Incorporator count
The schema accepts 1 to 5 incorporators. Sending zero or more than five is rejected. The per-business-type counts above (1 for sole proprietor, 3+ for a corporation) are a guideline for approval, not an API validation - your application can submit with a different count and be reviewed on its merits.
Invalid Enum Value
Invalid Enum Value
Wrong:
"modeOfPayments": ["E-COMMERCE"]Correct: "modeOfPayments": ["ECOM"]Solution: Use exact enum values from this documentationNext Steps
Onboard Merchant API
Use these enums in your onboarding requests
Authentication
Set up JWT authentication
Introduction
Back to Onboarding API overview
Error Handling
Handle validation errors