Skip to main content

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

Best for: Small businesses, sole traders, freelancersRequirements:
  • Barangay Business Permit
  • No incorporators needed
  • No registered address needed
  • Legal name optional
Settlement accounts: Must provide at least one bank account
Best for: Individual business ownersRequirements:
  • 1 incorporator required
  • Legal name required
  • Registered address required
  • Additional KYC documents
Validation: System checks that exactly 1 incorporator is provided
Best for: Business partnerships, joint venturesRequirements:
  • 2 incorporators required
  • Legal name required
  • Registered address required
  • Partnership agreement documents
Validation: System checks that exactly 2 incorporators are provided
Best for: Registered corporationsRequirements:
  • Minimum 3 incorporators required
  • Legal name required
  • Registered address required
  • Corporate registration documents
Validation: System checks that at least 3 incorporators are provided

Mode of Payment

Specifies which payment channels the merchant wants to enable.

Usage Example

Merchants can enable multiple payment methods. Provide an array of values based on the merchant’s needs.

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

All supported banks for settlement accounts. Use these exact values for the bankName field.

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

Required fields:
  • accountType (SAVINGS or CHECKING_CURRENT)
  • bankName (from supported banks list)
  • accountName
  • accountNumber
  • currency
Use for: Standard bank transfers and settlements
Required fields:
  • bankName (must be “GCASH”)
  • accountName
  • accountNumber (GCash mobile number)
Use for: GCash wallet settlements
The account number should be the GCash mobile number (e.g., “09123456789”)
Required fields:
  • bankName (must be “PAYMAYA”)
  • accountName
  • accountNumber (PayMaya mobile number)
Use for: PayMaya wallet settlements
Use for: Special cases where no settlement account is needed
Contact Modulus Labs before using NO_ACCOUNT to confirm it’s appropriate for your use case.

Source of Funds

Indicates the source of funds for incorporators.

Usage Example

Gender

Gender options for incorporators and representatives.

Usage Example

Onboarding Status

Lifecycle states for merchant onboarding applications.

Status Flow

When: Initial merchant onboarding submissionMerchant Action: Wait for Modulus Labs reviewNext Steps: Status will change to either APPROVED or DECLINED
When: Merchant passes KYC verificationMerchant Action: Can start accepting paymentsNote: Approved merchants can be declined later if compliance issues are discovered
When: Merchant fails KYC verification or documents are incompleteMerchant Action: Review decline reason, update information, and resubmitNext Steps: Resubmitting will change status to 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

Avoid these common enum-related errors:
Wrong: "businessType": "starter" or "GCASH" as bankName for bank typeCorrect: "businessType": "STARTER" and proper account deposit typeSolution: Always use uppercase for enum values
Wrong:
Correct:
Solution: Match bankName with accountDepositType
Wrong: CORPORATION with only 1 incorporatorCorrect: CORPORATION with at least 3 incorporatorsSolution: Check business type requirements in the table above
Wrong: "modeOfPayments": ["E-COMMERCE"]Correct: "modeOfPayments": ["ECOM"]Solution: Use exact enum values from this documentation

Next 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