Create Merchant
Creates a sub-merchant under the authenticated partner and starts underwriting lifecycle tracking.
For the partner API contract, id is server-managed and is not accepted in the request payload. Resolve derives/assigns the merchant identifier from merchant naming inputs (dba_name or legal_business_name) with random alphanumeric fallback for collisions.
Core merchant validation includes:
- business_phone must be a valid US phone number
- formation_state must map to a valid US state
- US business addresses validate state and postal_code
- beneficial owner US addresses validate state and postal_code
- authorized_signer.phone, when provided, must be a valid US phone number
- ein must be a valid EIN format
- banking fields validate account-number shape and ABA routing number format
- bank_account_number must be different from bank_routing_number
This endpoint also supports optional inline document URL ingestion. If document arrays are provided (bank_statements, financial_statements, credit_references, personal_guarantee, other_documents), Resolve queues download_url ingestion jobs equivalent to the document endpoint.
Inline document requests require:
- filename with an extension
- supported filetype for the merchant underwriting document profile
- download_url using http or https
- matching filename extension and filetype
Merchant creation is not rolled back for inline document ingestion failures.
Inline download dispatch is performed after database commit. Dispatch failures are surfaced per-item in document_ingestion.results, and the affected merchant document/file metadata is marked failed even though the merchant and some/all document rows were already persisted.
Request
- Base URLhttps://app-sandbox.resolvepay.com/api
- Auth
- HTTP bearer
- or HTTP basic
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Request body
Example request
{
"reference_id": "partner-crm-12345",
"legal_business_name": "Acme Supply LLC",
"business_address": {
"line1": "100 Main St",
"line2": "Suite 200",
"city": "Austin",
"state": "TX",
"postal_code": "78701",
"country": "US"
},
"business_email": "ops@acmesupply.com",
"business_phone": "+15125550123",
"entity_type": "llc",
"formation_state": "TX",
"ein": "12-3456789",
"dba_name": "Acme Industrial",
"annual_revenue": 4500000,
"years_in_business": 6,
"industry": "Manufacturing",
"business_description": "Industrial hardware distributor",
"website": "https://acmesupply.com",
"estimated_monthly_net_terms_volume": 350000,
"existing_net_terms_info": {
"provider": "Internal",
"average_days_past_due": 12
},
"beneficial_owners": [
{
"first_name": "John",
"last_name": "Owner",
"date_of_birth": "1987-04-14",
"address": {
"line1": "100 Main St",
"line2": "Suite 200",
"city": "Austin",
"state": "TX",
"postal_code": "78701",
"country": "US"
},
"ssn_last_4": "1234",
"ownership_percentage": 35
}
],
"authorized_signer": {
"first_name": "Jane",
"last_name": "Doe",
"email": "jane.doe@acmesupply.com",
"title": "Controller",
"phone": "+15125550123"
},
"plaid_access_token": "access-sandbox-1234567890",
"bank_account_number": "****6789",
"bank_routing_number": "*****021",
"metadata": {
"partner_reference": "mt-merchant-1029"
},
"bank_statements": [
{
"filename": "bank_statement_2026_01.pdf",
"filetype": "application/pdf",
"download_url": "https://partner-files.example.com/bank_statement_2026_01.pdf"
}
],
"financial_statements": [
{
"filename": "bank_statement_2026_01.pdf",
"filetype": "application/pdf",
"download_url": "https://partner-files.example.com/bank_statement_2026_01.pdf"
}
],
"credit_references": [
{
"filename": "bank_statement_2026_01.pdf",
"filetype": "application/pdf",
"download_url": "https://partner-files.example.com/bank_statement_2026_01.pdf"
}
],
"personal_guarantee": [
{
"filename": "bank_statement_2026_01.pdf",
"filetype": "application/pdf",
"download_url": "https://partner-files.example.com/bank_statement_2026_01.pdf"
}
],
"other_documents": [
{
"filename": "bank_statement_2026_01.pdf",
"filetype": "application/pdf",
"download_url": "https://partner-files.example.com/bank_statement_2026_01.pdf"
}
]
}Response
A merchant object.
Example response
{
"id": "mrc_1234567890abcdef",
"reference_id": "partner-crm-12345",
"legal_business_name": "Acme Supply LLC",
"dba_name": "Acme Industrial",
"business_address": {
"line1": "100 Main St",
"line2": "Suite 200",
"city": "Austin",
"state": "TX",
"postal_code": "78701",
"country": "US"
},
"business_email": "ops@acmesupply.com",
"business_phone": "+15125550123",
"entity_type": "llc",
"formation_state": "TX",
"industry": "Manufacturing",
"website": "https://acmesupply.com",
"underwriting_status": "pending",
"seller_amount_approved": 50000,
"active_subscription": {
"id": "sub_1234567890abcdef",
"tier": "trial"
},
"document_ingestion": {
"requested_count": 2,
"queued_count": 1,
"failed_count": 1,
"results": [
{
"document_id": "md_1234567890abcdef"
}
]
},
"created_at": "2026-02-26T10:00:00.000Z",
"updated_at": "2026-02-26T10:05:00.000Z"
}Changes
No recorded changes to this operation across all 1 revision of this API.