Uploads business documents required for merchant onboarding and KYC (Know Your Customer) verification. This endpoint accepts multiple document types including valid IDs, business permits, certificates, and supporting documents.
Binary File Upload Required: This endpoint expects actual binary file content via multipart/form-data. Do NOT send base64-encoded strings, file paths, or URLs. Upload the actual file data using proper multipart form encoding.
Security: This endpoint implements OWASP File Upload Cheat Sheet best practices including file extension validation, MIME type validation, content validation using magic bytes, file size limits, and secure storage with randomized file names.
Authentication
This endpoint requires JWT Bearer Token authentication.
Uses file-type library to detect actual file content
File Size Limits
Maximum 25MB per file to prevent DoS attacks
File Name Sanitization
Strips dangerous characters from file names
Secure Storage
Files are stored with randomized names to prevent path traversal
Use Cases
Initial Document Upload
Upload required documents when first creating an onboarding application
Document Updates
Replace or add documents after application has been declined
Additional Documents
Submit supplementary documents requested by compliance team
Document Corrections
Re-upload documents with better quality or correct information
Troubleshooting
Sending Strings Instead of Binary Files
Error:No files received or Invalid file content typeIssue: Sending file paths, URLs, or base64-encoded strings instead of actual binary file dataIncorrect Examples:
// CORRECT - Node.js with file streamconst fs = require('fs');formData.append('idsOfValidSignatories', fs.createReadStream('/path/to/file.jpg'));// CORRECT - Browser with File objectconst fileInput = document.getElementById('fileInput');formData.append('idsOfValidSignatories', fileInput.files[0]);// CORRECT - Python with file handlefiles = {'idsOfValidSignatories': open('/path/to/file.jpg', 'rb')}// CORRECT - PHP with CURLFile$file = new CURLFile('/path/to/file.jpg', 'image/jpeg', 'file.jpg');
Solution: Always use proper file upload mechanisms that send binary data, not text representations
Magic Bytes Validation Failure
Error:Invalid file content typeIssue: File extension doesn’t match actual file contentCommon Causes:
Renamed file with wrong extension (e.g., .txt renamed to .jpg)
Corrupted file
File created by unsupported software
Solution:
Use legitimate image editing or PDF software
Don’t just rename file extensions
Verify file opens correctly before uploading
Try converting file to correct format using standard tools
File Too Large Even After Compression
Error:File size exceeds 25MB limitSolutions:
For PDFs: Split multi-page documents across front/back/signature fields
For images: Reduce resolution (1920px width is usually sufficient)
For images: Convert to JPEG with 80-85% quality
For images: Use online compression tools like TinyPNG or Squoosh
Consider splitting document into multiple logical files
Multipart Form Data Encoding Issues
Issue: Files not being received by server or showing as undefinedSolutions for Different Languages:Node.js:
// Use form-data package, not URLSearchParamsconst FormData = require('form-data');const form = new FormData();form.append('idsOfValidSignatories', fs.createReadStream(filePath));// Include form headersaxios.post(url, form, { headers: { 'Authorization': `Bearer ${token}`, ...form.getHeaders() // Important! }});
Python:
# Let requests handle Content-Type headerfiles = {'idsOfValidSignatories': open(file_path, 'rb')}headers = {'Authorization': f'Bearer {token}'}# Don't set Content-Type manuallyrequests.post(url, headers=headers, files=files)
PHP:
// Use CURLFile, not @ syntax (deprecated)$file = new CURLFile($filePath, 'image/jpeg', 'filename.jpg');
File Name Sanitization Concerns
Issue: Uploaded file name doesn’t match originalExplanation: File names are sanitized for security:
Special characters removed
Path traversal sequences removed (../, ..)
Length truncated to 255 characters
Best Practice:
Use simple, descriptive file names
Avoid special characters
Use the returned id field to reference files, not name
Store your own mapping of file IDs to original names if needed
Document Checklist
Use this checklist to ensure you have all required documents before uploading:
STARTER
SOLE_PROPRIETOR
PARTNERSHIP
CORPORATION
Valid ID(s) of Signatory
Photo of store with store name
Barangay Business Permit
Incorporator’s Government Issued ID
Signatory’s Government Issued ID
Authorized Representative Government Issued ID
Valid ID(s) of Signatory
Incorporator’s Government Issued ID
Signatory’s Government Issued ID
Authorized Representative Government Issued ID
Either of the two:
Business / Mayor’s Permit OR
BIR Certificate of Registration (2303)
Valid ID(s) of Signatory
Incorporator’s Government Issued ID
Signatory’s Government Issued ID
Authorized Representative Government Issued ID
List of Goods/Services sold with Pricing
Refund and Refund Policy
Fulfillment Policy
Privacy Policy
At least one of the following:
Business / Mayor’s Permit OR
BIR Certificate of Registration (2303) OR
SEC Registration Certificate
Optional files (not mandatory but can be uploaded):
AOI and By Laws
Secretary’s Certificate
Valid ID(s) of Signatory
Incorporator’s Government Issued ID
Signatory’s Government Issued ID
Authorized Representative Government Issued ID
List of Goods/Services sold with Pricing
Refund and Refund Policy
Fulfillment Policy
Privacy Policy
At least one of the following:
Mayor’s or Business Permit OR
BIR Certificate 2303 OR
SEC Certificate
Either of the two:
Article of Partnership/Incorporation (AOI) and By-Laws OR
General Information Sheet (GIS)
Secretary’s Certificate
Next Steps
Onboard Merchant
Submit onboarding application after uploading files
Retrieve Onboarding Status
Check onboarding application status
Update Onboarding Data
Update declined application with corrected documents
Error Handling
Complete error code reference
Authorizations
Authorization
string
header
required
JWT Bearer token authentication
Path Parameters
merchantId
string
required
The merchant's account ID (numeric string)
Pattern: ^\d+$
Body
multipart/form-data
idsOfValidSignatories
file
Valid government-issued IDs of authorized signatories (front side)
idsOfValidSignatoriesBack
file
Back side of valid IDs
idsOfValidSignatoriesSignature
file
Signature specimen from valid IDs
mayorsOrBusinessPermit
file
Mayor's Permit or Business Permit (front)
mayorsOrBusinessPermitBack
file
Back side of Mayor's/Business Permit
mayorsOrBusinessPermitSignature
file
Signature page of Mayor's/Business Permit
birCert2303
file
BIR Certificate of Registration (Form 2303) - front
birCert2303Back
file
Back side of BIR Certificate 2303
birCert2303Signature
file
Signature page of BIR Certificate 2303
secCert
file
SEC Certificate - front
secCertBack
file
Back side of SEC Certificate
secCertSignature
file
Signature page of SEC Certificate
gis
file
General Information Sheet - front
gisBack
file
Back side of GIS
gisSignature
file
Signature page of GIS
aoiAndByLaws
file
Articles of Incorporation and By-Laws - front
aoiAndByLawsBack
file
Back side of AOI and By-Laws
aoiAndByLawsSignature
file
Signature page of AOI and By-Laws
secretarysCert
file
Secretary's Certificate - front
secretarysCertBack
file
Back side of Secretary's Certificate
secretarysCertSignature
file
Signature page of Secretary's Certificate
barangayBusinessPermit
file
Barangay Business Permit - front
barangayBusinessPermitBack
file
Back side of Barangay Business Permit
barangayBusinessPermitSignature
file
Signature page of Barangay Business Permit
storePhoto
file
Photo of the store/business establishment (must show visible store name)
Response
Files uploaded successfully
files
object[]
List of successfully uploaded files
Show child attributes
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Modulus Labs API","colors":{"primary":"#6366F1","light":"#818CF8","dark":"#4F46E5"},"logo":{"light":"https://mintcdn.com/moduluslabsinc/-g2JuykdH6NQMhpI/logo/light.svg?fit=max\u0026auto=format\u0026n=-g2JuykdH6NQMhpI\u0026q=85\u0026s=cdd5299c31d35441c6c6cab379ca0363","dark":"https://mintcdn.com/moduluslabsinc/-g2JuykdH6NQMhpI/logo/dark.svg?fit=max\u0026auto=format\u0026n=-g2JuykdH6NQMhpI\u0026q=85\u0026s=4be7c52f34d4ef4a0ca4b775b9e6792e"},"favicon":"https://mintcdn.com/moduluslabsinc/Hug35GYfKojSeqvX/favicon.svg?fit=max\u0026auto=format\u0026n=Hug35GYfKojSeqvX\u0026q=85\u0026s=65fea7bcc7fbf1163d727867c0623188","api":{"openapi":["api-reference/qr/openapi.json","api-reference/onboarding/openapi.json","api-reference/webhooks/openapi.json","api-reference/payment-webhooks/openapi.json","api-reference/terminal-gateway/openapi.json","api-reference/transaction-reporting/openapi.json","api-reference/ecom/openapi.json"],"playground":{"display":"interactive"},"examples":{"languages":["curl","python","javascript","php","go","java","csharp"]}},"footer":{"socials":{"website":"https://moduluslabs.io"}},"search":{"prompt":"Search Modulus Labs API documentation..."},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Support","icon":"envelope","href":"mailto:support@moduluslabs.io"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"moduluslabsinc","hasAudioNarration":false,"actualSubdomain":"moduluslabsinc","customDomains":["docs.moduluslabs.io"],"gitSource":{"type":"github","owner":"modulus-labs-io","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae44ceef49f5b7aedfd0755","clientVersion":"0.0.4128","searchFilterCounts":[{"language":"default","tag":"Documentation","count":51},{"language":"default","tag":"API Reference","count":40},{"language":"default","tag":"Webhooks API","count":27},{"language":"default","tag":"Ecom API","count":17},{"language":"default","tag":"Payment Webhooks","count":16},{"language":"default","tag":"Onboarding API","count":11},{"language":"default","tag":"Terminal Gateway API","count":10},{"language":"default","tag":"QR Ph Webhooks (Legacy)","count":10},{"language":"default","tag":"Transaction Reporting API","count":9},{"language":"default","tag":"Payment Links","count":8}]},"assistantConfig":{"enableStarterQuestions":true,"enableContextualStarterQuestions":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"starterQuestions":[{"_id":"6979644a4ee895505c300ecd","deploymentId":"68ec6943b3c0516c1a13b4bf","questionText":"What is JWE","status":"active","generatedBy":"manual","createdAt":"2026-01-28T01:20:10.549Z","updatedAt":"2026-01-28T01:20:10.549Z","__v":0},{"_id":"6979643f4ee895505c300ea5","deploymentId":"68ec6943b3c0516c1a13b4bf","questionText":"How do I test before going live?","status":"active","generatedBy":"manual","createdAt":"2026-01-28T01:19:59.128Z","updatedAt":"2026-01-28T01:19:59.128Z","__v":0},{"_id":"6979643a4ee895505c300ea0","deploymentId":"68ec6943b3c0516c1a13b4bf","questionText":"What authentication does the API need?","status":"active","generatedBy":"manual","createdAt":"2026-01-28T01:19:54.290Z","updatedAt":"2026-01-28T01:19:54.290Z","__v":0}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/onboarding/upload-onboarding-files","slug":"/api-reference/onboarding/upload-onboarding-files","pageMetadata":{"title":"Upload Onboarding Files","openapi":"POST /v2/onboard/{merchantId}/files","description":"Upload business documents for merchant onboarding verification","href":"/api-reference/onboarding/upload-onboarding-files"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Upload business documents for merchant onboarding verification\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,input:`input`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Card,CardGroup,CodeBlock,Heading,Info,Tab,Table,Tabs,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Card)_missingMdxReference(`Card`,true);if(!CardGroup)_missingMdxReference(`CardGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`overview`,children:`Overview`}),`\n`,_jsx(_components.p,{children:`Uploads business documents required for merchant onboarding and KYC (Know Your Customer) verification. This endpoint accepts multiple document types including valid IDs, business permits, certificates, and supporting documents.`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Binary File Upload Required:`}),` This endpoint expects actual binary file content via `,_jsx(_components.code,{children:`multipart/form-data`}),`. Do NOT send base64-encoded strings, file paths, or URLs. Upload the actual file data using proper multipart form encoding.`]})}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Security:`}),` This endpoint implements OWASP File Upload Cheat Sheet best practices including file extension validation, MIME type validation, content validation using magic bytes, file size limits, and secure storage with randomized file names.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`authentication`,children:`Authentication`}),`\n`,_jsx(_components.p,{children:`This endpoint requires JWT Bearer Token authentication.`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`Authorization:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Bearer`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`authorization-rules`,children:`Authorization Rules`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`User Role`}),_jsx(_components.th,{children:`Allowed Actions`})]})}),_jsx(_components.tbody,{children:_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Regular User/Merchant`}),_jsx(_components.td,{children:`Can only upload files for their own account (merchantId must match authenticated user)`})]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`security-features`,children:`Security Features`}),`\n`,_jsx(_components.p,{children:`This endpoint implements OWASP File Upload Cheat Sheet best practices:`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`Extension Validation`,icon:`file-check`,children:_jsx(_components.p,{children:`Only .jpg, .jpeg, .png, .pdf extensions allowed`})}),_jsx(Card,{title:`MIME Type Validation`,icon:`shield-check`,children:_jsx(_components.p,{children:`Validates Content-Type header matches allowed types`})}),_jsx(Card,{title:`Magic Bytes Validation`,icon:`fingerprint`,children:_jsx(_components.p,{children:`Uses file-type library to detect actual file content`})}),_jsx(Card,{title:`File Size Limits`,icon:`scale-balanced`,children:_jsx(_components.p,{children:`Maximum 25MB per file to prevent DoS attacks`})}),_jsx(Card,{title:`File Name Sanitization`,icon:`broom`,children:_jsx(_components.p,{children:`Strips dangerous characters from file names`})}),_jsx(Card,{title:`Secure Storage`,icon:`lock`,children:_jsx(_components.p,{children:`Files are stored with randomized names to prevent path traversal`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`use-cases`,children:`Use Cases`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`Initial Document Upload`,icon:`upload`,children:_jsx(_components.p,{children:`Upload required documents when first creating an onboarding application`})}),_jsx(Card,{title:`Document Updates`,icon:`arrows-rotate`,children:_jsx(_components.p,{children:`Replace or add documents after application has been declined`})}),_jsx(Card,{title:`Additional Documents`,icon:`file-plus`,children:_jsx(_components.p,{children:`Submit supplementary documents requested by compliance team`})}),_jsx(Card,{title:`Document Corrections`,icon:`pen-to-square`,children:_jsx(_components.p,{children:`Re-upload documents with better quality or correct information`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting`,children:`Troubleshooting`}),`\n`,_jsxs(AccordionGroup,{children:[_jsxs(Accordion,{title:`Sending Strings Instead of Binary Files`,icon:`triangle-exclamation`,id:`sending-strings-instead-of-binary-files`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Error:`}),` `,_jsx(_components.code,{children:`No files received`}),` or `,_jsx(_components.code,{children:`Invalid file content type`})]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Issue:`}),` Sending file paths, URLs, or base64-encoded strings instead of actual binary file data`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Incorrect Examples:`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// WRONG - Sending file path as string`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`formData`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`append`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'/path/to/file.jpg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// WRONG - Sending base64 string`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`formData`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`append`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'data:image/jpeg;base64,/9j/4AAQ...'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// WRONG - Sending URL`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`formData`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`append`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'https://example.com/file.jpg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`]})})}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Correct Examples:`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`14`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`14`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// CORRECT - Node.js with file stream`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` fs`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` require`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'fs'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`formData`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`append`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` fs`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`createReadStream`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'/path/to/file.jpg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`));`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// CORRECT - Browser with File object`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` fileInput`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` document`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`getElementById`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'fileInput'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`formData`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`append`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`fileInput`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`files`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]);`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// CORRECT - Python with file handle`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`files`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` open`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'/path/to/file.jpg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'rb'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)}`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// CORRECT - PHP with CURLFile`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$file`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` CURLFile`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'/path/to/file.jpg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'image/jpeg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'file.jpg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`]})})}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Solution:`}),` Always use proper file upload mechanisms that send binary data, not text representations`]})]}),_jsxs(Accordion,{title:`Magic Bytes Validation Failure`,icon:`file-slash`,id:`magic-bytes-validation-failure`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Error:`}),` `,_jsx(_components.code,{children:`Invalid file content type`})]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Issue:`}),` File extension doesn’t match actual file content`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Common Causes:`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Renamed file with wrong extension (e.g., .txt renamed to .jpg)`}),`\n`,_jsx(_components.li,{children:`Corrupted file`}),`\n`,_jsx(_components.li,{children:`File created by unsupported software`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Solution:`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Use legitimate image editing or PDF software`}),`\n`,_jsx(_components.li,{children:`Don’t just rename file extensions`}),`\n`,_jsx(_components.li,{children:`Verify file opens correctly before uploading`}),`\n`,_jsx(_components.li,{children:`Try converting file to correct format using standard tools`}),`\n`]})]}),_jsxs(Accordion,{title:`File Too Large Even After Compression`,icon:`circle-exclamation`,id:`file-too-large-even-after-compression`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Error:`}),` `,_jsx(_components.code,{children:`File size exceeds 25MB limit`})]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Solutions:`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`For PDFs: Split multi-page documents across front/back/signature fields`}),`\n`,_jsx(_components.li,{children:`For images: Reduce resolution (1920px width is usually sufficient)`}),`\n`,_jsx(_components.li,{children:`For images: Convert to JPEG with 80-85% quality`}),`\n`,_jsx(_components.li,{children:`For images: Use online compression tools like TinyPNG or Squoosh`}),`\n`,_jsx(_components.li,{children:`Consider splitting document into multiple logical files`}),`\n`]})]}),_jsxs(Accordion,{title:`Multipart Form Data Encoding Issues`,icon:`code`,id:`multipart-form-data-encoding-issues`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Issue:`}),` Files not being received by server or showing as undefined`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Solutions for Different Languages:`})}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Node.js:`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`12`,language:`javascript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`javascript`,children:_jsxs(_components.code,{language:`javascript`,numberOfLines:`12`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Use form-data package, not URLSearchParams`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` FormData`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` require`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'form-data'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`const`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4FC1FF`},children:` form`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:` FormData`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`();`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`form`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`append`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`fs`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`createReadStream`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`filePath`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`));`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Include form headers`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`axios`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`post`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`url`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`form`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:` headers:`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'Authorization'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\" `Bearer \"}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:\"${\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`token`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:\"`\"}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` ...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`form`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`.`}),_jsx(_components.span,{style:{color:`#8250DF`,\"--shiki-dark\":`#DCDCAA`},children:`getHeaders`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`() `}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Important!`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`});`})}),`\n`]})})}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Python:`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Let requests handle Content-Type header`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`files `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'idsOfValidSignatories'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`open`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(file_path, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'rb'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)}`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`headers `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'Authorization'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'Bearer `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`token`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Don't set Content-Type manually`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`requests.post(url, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`headers`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`headers, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`files`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`files)`})]}),`\n`]})})}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`PHP:`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`php`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`php`,children:_jsxs(_components.code,{language:`php`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`// Use CURLFile, not @ syntax (deprecated)`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$file`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` =`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:` new`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#4EC9B0`},children:` CURLFile`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$filePath`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'image/jpeg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`'filename.jpg'`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`);`})]}),`\n`]})})})]}),_jsxs(Accordion,{title:`File Name Sanitization Concerns`,icon:`shield`,id:`file-name-sanitization-concerns`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Issue:`}),` Uploaded file name doesn’t match original`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Explanation:`}),` File names are sanitized for security:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Special characters removed`}),`\n`,_jsx(_components.li,{children:`Path traversal sequences removed (../, ..)`}),`\n`,_jsx(_components.li,{children:`Length truncated to 255 characters`}),`\n`]}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Best Practice:`})}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Use simple, descriptive file names`}),`\n`,_jsx(_components.li,{children:`Avoid special characters`}),`\n`,_jsxs(_components.li,{children:[`Use the returned `,_jsx(_components.code,{children:`id`}),` field to reference files, not `,_jsx(_components.code,{children:`name`})]}),`\n`,_jsx(_components.li,{children:`Store your own mapping of file IDs to original names if needed`}),`\n`]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`document-checklist`,children:`Document Checklist`}),`\n`,_jsx(_components.p,{children:`Use this checklist to ensure you have all required documents before uploading:`}),`\n`,_jsxs(Tabs,{children:[_jsx(Tab,{title:`STARTER`,id:`starter`,children:_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Valid ID(s) of Signatory`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Photo of store with store name`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Barangay Business Permit`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Incorporator’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Signatory’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Authorized Representative Government Issued ID`]}),`\n`]})}),_jsx(Tab,{title:`SOLE_PROPRIETOR`,id:`sole_proprietor`,children:_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Valid ID(s) of Signatory`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Incorporator’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Signatory’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Authorized Representative Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,_jsx(_components.strong,{children:`Either of the two:`}),`\n`,_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Business / Mayor’s Permit `,_jsx(_components.strong,{children:`OR`})]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`BIR Certificate of Registration (2303)`]}),`\n`]}),`\n`]}),`\n`]})}),_jsx(Tab,{title:`PARTNERSHIP`,id:`partnership`,children:_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Valid ID(s) of Signatory`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Incorporator’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Signatory’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Authorized Representative Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`List of Goods/Services sold with Pricing`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Refund and Refund Policy`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Fulfillment Policy`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Privacy Policy`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,_jsx(_components.strong,{children:`At least one of the following:`}),`\n`,_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Business / Mayor’s Permit `,_jsx(_components.strong,{children:`OR`})]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`BIR Certificate of Registration (2303) `,_jsx(_components.strong,{children:`OR`})]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`SEC Registration Certificate`]}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,_jsx(_components.strong,{children:`Optional files (not mandatory but can be uploaded):`}),`\n`,_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`AOI and By Laws`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Secretary’s Certificate`]}),`\n`]}),`\n`]}),`\n`]})}),_jsx(Tab,{title:`CORPORATION`,id:`corporation`,children:_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Valid ID(s) of Signatory`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Incorporator’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Signatory’s Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Authorized Representative Government Issued ID`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`List of Goods/Services sold with Pricing`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Refund and Refund Policy`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Fulfillment Policy`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Privacy Policy`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,_jsx(_components.strong,{children:`At least one of the following:`}),`\n`,_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Mayor’s or Business Permit `,_jsx(_components.strong,{children:`OR`})]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`BIR Certificate 2303 `,_jsx(_components.strong,{children:`OR`})]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`SEC Certificate`]}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,_jsx(_components.strong,{children:`Either of the two:`}),`\n`,_jsxs(_components.ul,{className:`contains-task-list`,children:[`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Article of Partnership/Incorporation (AOI) and By-Laws `,_jsx(_components.strong,{children:`OR`})]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`General Information Sheet (GIS)`]}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{className:`task-list-item`,children:[_jsx(_components.input,{type:`checkbox`,disabled:true}),` `,`Secretary’s Certificate`]}),`\n`]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`next-steps`,children:`Next Steps`}),`\n`,_jsxs(CardGroup,{cols:2,children:[_jsx(Card,{title:`Onboard Merchant`,icon:`user-plus`,href:`/api-reference/onboarding/onboard-merchant`,children:_jsx(_components.p,{children:`Submit onboarding application after uploading files`})}),_jsx(Card,{title:`Retrieve Onboarding Status`,icon:`clipboard-check`,href:`/api-reference/onboarding/retrieve-onboarding-status`,children:_jsx(_components.p,{children:`Check onboarding application status`})}),_jsx(Card,{title:`Update Onboarding Data`,icon:`pen-to-square`,href:`/api-reference/onboarding/update-onboarding-data`,children:_jsx(_components.p,{children:`Update declined application with corrected documents`})}),_jsx(Card,{title:`Error Handling`,icon:`triangle-exclamation`,href:`/docs/errors`,children:_jsx(_components.p,{children:`Complete error code reference`})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Upload Onboarding Files","openapi":"POST /v2/onboard/{merchantId}/files","description":"Upload business documents for merchant onboarding verification","href":"/api-reference/onboarding/upload-onboarding-files"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":2,"children":[]},{"title":"Authentication","slug":"authentication","depth":2,"children":[]},{"title":"Authorization Rules","slug":"authorization-rules","depth":2,"children":[]},{"title":"Security Features","slug":"security-features","depth":2,"children":[]},{"title":"Use Cases","slug":"use-cases","depth":2,"children":[]},{"title":"Troubleshooting","slug":"troubleshooting","depth":2,"children":[]},{"title":"Document Checklist","slug":"document-checklist","depth":2,"children":[]},{"title":"Next Steps","slug":"next-steps","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"uploadOnboardingFiles","summary":"Upload Onboarding Files","description":"Upload business documents for merchant onboarding verification","tags":["Onboarding"],"security":["3d9e559c-307b-47c1-9013-3f5b95be1595"],"parameters":["9ffc7cfa-342d-4de8-9602-0898816976d6"],"requestBody":"d1622661-17d1-4ed8-9bfd-32c705dfe670","responses":{"200":"f9751548-c093-47b2-8b3e-d632bc470c71","400":"e2b1e14a-298e-45a4-bad1-780ecd06e947","401":"cd7d9a1e-40a9-447c-ac87-c641b11fa43b"},"method":"post","type":"path","servers":["782942e0-ba61-4a6d-9c63-1e825c9af994"],"path":"/v2/onboard/{merchantId}/files","baseUrlOptions":["https://kyc.sbx.moduluslabs.io"],"title":"Upload Onboarding Files","codeSamples":[],"requestExampleLanguages":["bash","python","javascript","php","go","java","csharp"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"9ffc7cfa-342d-4de8-9602-0898816976d6":{"name":"merchantId","in":"path","required":true,"description":"The merchant's account ID (numeric string)","schema":{"type":"string","pattern":"^\\d+$","isRequired":true,"description":"The merchant's account ID (numeric string)","uniqueKey":"","typeLabel":"string"},"example":"12345"}},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"idsOfValidSignatories":{"type":"string","format":"binary","description":"Valid government-issued IDs of authorized signatories (front side)","uniqueKey":"idsOfValidSignatories","typeLabel":"file"},"idsOfValidSignatoriesBack":{"type":"string","format":"binary","description":"Back side of valid IDs","uniqueKey":"idsOfValidSignatoriesBack","typeLabel":"file"},"idsOfValidSignatoriesSignature":{"type":"string","format":"binary","description":"Signature specimen from valid IDs","uniqueKey":"idsOfValidSignatoriesSignature","typeLabel":"file"},"mayorsOrBusinessPermit":{"type":"string","format":"binary","description":"Mayor's Permit or Business Permit (front)","uniqueKey":"mayorsOrBusinessPermit","typeLabel":"file"},"mayorsOrBusinessPermitBack":{"type":"string","format":"binary","description":"Back side of Mayor's/Business Permit","uniqueKey":"mayorsOrBusinessPermitBack","typeLabel":"file"},"mayorsOrBusinessPermitSignature":{"type":"string","format":"binary","description":"Signature page of Mayor's/Business Permit","uniqueKey":"mayorsOrBusinessPermitSignature","typeLabel":"file"},"birCert2303":{"type":"string","format":"binary","description":"BIR Certificate of Registration (Form 2303) - front","uniqueKey":"birCert2303","typeLabel":"file"},"birCert2303Back":{"type":"string","format":"binary","description":"Back side of BIR Certificate 2303","uniqueKey":"birCert2303Back","typeLabel":"file"},"birCert2303Signature":{"type":"string","format":"binary","description":"Signature page of BIR Certificate 2303","uniqueKey":"birCert2303Signature","typeLabel":"file"},"secCert":{"type":"string","format":"binary","description":"SEC Certificate - front","uniqueKey":"secCert","typeLabel":"file"},"secCertBack":{"type":"string","format":"binary","description":"Back side of SEC Certificate","uniqueKey":"secCertBack","typeLabel":"file"},"secCertSignature":{"type":"string","format":"binary","description":"Signature page of SEC Certificate","uniqueKey":"secCertSignature","typeLabel":"file"},"gis":{"type":"string","format":"binary","description":"General Information Sheet - front","uniqueKey":"gis","typeLabel":"file"},"gisBack":{"type":"string","format":"binary","description":"Back side of GIS","uniqueKey":"gisBack","typeLabel":"file"},"gisSignature":{"type":"string","format":"binary","description":"Signature page of GIS","uniqueKey":"gisSignature","typeLabel":"file"},"aoiAndByLaws":{"type":"string","format":"binary","description":"Articles of Incorporation and By-Laws - front","uniqueKey":"aoiAndByLaws","typeLabel":"file"},"aoiAndByLawsBack":{"type":"string","format":"binary","description":"Back side of AOI and By-Laws","uniqueKey":"aoiAndByLawsBack","typeLabel":"file"},"aoiAndByLawsSignature":{"type":"string","format":"binary","description":"Signature page of AOI and By-Laws","uniqueKey":"aoiAndByLawsSignature","typeLabel":"file"},"secretarysCert":{"type":"string","format":"binary","description":"Secretary's Certificate - front","uniqueKey":"secretarysCert","typeLabel":"file"},"secretarysCertBack":{"type":"string","format":"binary","description":"Back side of Secretary's Certificate","uniqueKey":"secretarysCertBack","typeLabel":"file"},"secretarysCertSignature":{"type":"string","format":"binary","description":"Signature page of Secretary's Certificate","uniqueKey":"secretarysCertSignature","typeLabel":"file"},"barangayBusinessPermit":{"type":"string","format":"binary","description":"Barangay Business Permit - front","uniqueKey":"barangayBusinessPermit","typeLabel":"file"},"barangayBusinessPermitBack":{"type":"string","format":"binary","description":"Back side of Barangay Business Permit","uniqueKey":"barangayBusinessPermitBack","typeLabel":"file"},"barangayBusinessPermitSignature":{"type":"string","format":"binary","description":"Signature page of Barangay Business Permit","uniqueKey":"barangayBusinessPermitSignature","typeLabel":"file"},"storePhoto":{"type":"string","format":"binary","description":"Photo of the store/business establishment (must show visible store name)","uniqueKey":"storePhoto","typeLabel":"file"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"idsOfValidSignatories":"\u003cstring>","idsOfValidSignatoriesBack":"\u003cstring>","idsOfValidSignatoriesSignature":"\u003cstring>","mayorsOrBusinessPermit":"\u003cstring>","mayorsOrBusinessPermitBack":"\u003cstring>","mayorsOrBusinessPermitSignature":"\u003cstring>","birCert2303":"\u003cstring>","birCert2303Back":"\u003cstring>","birCert2303Signature":"\u003cstring>","secCert":"\u003cstring>","secCertBack":"\u003cstring>","secCertSignature":"\u003cstring>","gis":"\u003cstring>","gisBack":"\u003cstring>","gisSignature":"\u003cstring>","aoiAndByLaws":"\u003cstring>","aoiAndByLawsBack":"\u003cstring>","aoiAndByLawsSignature":"\u003cstring>","secretarysCert":"\u003cstring>","secretarysCertBack":"\u003cstring>","secretarysCertSignature":"\u003cstring>","barangayBusinessPermit":"\u003cstring>","barangayBusinessPermitBack":"\u003cstring>","barangayBusinessPermitSignature":"\u003cstring>","storePhoto":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"f9751548-c093-47b2-8b3e-d632bc470c71":{"description":"Files uploaded successfully","content":{"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier assigned to the file","uniqueKey":"files.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","description":"Sanitized original file name","uniqueKey":"files.items.[INDEX].name","typeLabel":"string"},"fileType":{"type":"string","description":"Category/type of the uploaded file","uniqueKey":"files.items.[INDEX].fileType","typeLabel":"string"}},"uniqueKey":"files.items.[INDEX]","typeLabel":"object"},"description":"List of successfully uploaded files","uniqueKey":"files","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"files":[{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","name":"\u003cstring>","fileType":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"e2b1e14a-298e-45a4-bad1-780ecd06e947":{"description":"Bad Request - Invalid file, merchant ID mismatch, or validation error","content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP status code","uniqueKey":"statusCode","typeLabel":"integer"},"message":{"type":"string","description":"Error message","uniqueKey":"message","typeLabel":"string"},"error":{"type":"string","description":"Error type","uniqueKey":"error","typeLabel":"string"},"details":{"type":"object","description":"Additional error details","uniqueKey":"details","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":123,"message":"\u003cstring>","error":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"cd7d9a1e-40a9-447c-ac87-c641b11fa43b":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"HTTP status code","uniqueKey":"statusCode","typeLabel":"integer"},"message":{"type":"string","description":"Error message","uniqueKey":"message","typeLabel":"string"},"error":{"type":"string","description":"Error type","uniqueKey":"error","typeLabel":"string"},"details":{"type":"object","description":"Additional error details","uniqueKey":"details","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"statusCode":123,"message":"\u003cstring>","error":"\u003cstring>","details":{}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"3d9e559c-307b-47c1-9013-3f5b95be1595":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"JWT Bearer token authentication","scopes":[]}}},"servers":{"782942e0-ba61-4a6d-9c63-1e825c9af994":{"url":"https://kyc.sbx.moduluslabs.io","description":"Sandbox"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"JWT Bearer token authentication","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"JWT Bearer token authentication","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/onboarding/openapi.json"},"subdomain":"moduluslabsinc","siteName":"Modulus Labs API","title":"Upload Onboarding Files - Modulus Labs API","contextualStarterQuestions":[{"_id":"6a9a880870f2052206eddc83","deploymentId":"68ec6943b3c0516c1a13b4bf","questionText":"How do I upload documents?","status":"active","generatedBy":"contextual","path":"api-reference/onboarding/upload-onboarding-files","createdAt":"2026-09-04T08:57:44.761Z","updatedAt":"2026-09-04T08:57:44.761Z","__v":0},{"_id":"6a9a880870f2052206eddc82","deploymentId":"68ec6943b3c0516c1a13b4bf","questionText":"What file formats are accepted?","status":"active","generatedBy":"contextual","path":"api-reference/onboarding/upload-onboarding-files","createdAt":"2026-09-04T08:57:44.761Z","updatedAt":"2026-09-04T08:57:44.761Z","__v":0},{"_id":"6a9a880870f2052206eddc84","deploymentId":"68ec6943b3c0516c1a13b4bf","questionText":"What's the file size limit?","status":"active","generatedBy":"contextual","path":"api-reference/onboarding/upload-onboarding-files","createdAt":"2026-09-04T08:57:44.761Z","updatedAt":"2026-09-04T08:57:44.761Z","__v":0}],"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-04T08:57:19.905Z","originalFileLocation":"api-reference/onboarding/upload-onboarding-files.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Upload business documents for merchant onboarding verification\">\u003cmeta data-mint-head name=\"application-name\" content=\"Modulus Labs API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Upload Onboarding Files - Modulus Labs API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Upload business documents for merchant onboarding verification\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Modulus Labs API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://moduluslabsinc.mintlify.site/_mintlify/api/og/v2?division=Onboarding+API\u0026amp;title=Upload+Onboarding+Files\u0026amp;description=Upload+business+documents+for+merchant+onboarding+verification\u0026amp;theme=0e23bf0ca39f87857ce30bad\u0026amp;signature=f75ad26bf41078f79918e328ee660ddbaca152d36563b368cbb7c2f1b5e08756\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Upload Onboarding Files - Modulus Labs API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Upload business documents for merchant onboarding verification\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://moduluslabsinc.mintlify.site/_mintlify/api/og/v2?division=Onboarding+API\u0026amp;title=Upload+Onboarding+Files\u0026amp;description=Upload+business+documents+for+merchant+onboarding+verification\u0026amp;theme=0e23bf0ca39f87857ce30bad\u0026amp;signature=f75ad26bf41078f79918e328ee660ddbaca152d36563b368cbb7c2f1b5e08756\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/moduluslabsinc/b12xWXezBf3lDUti/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Modulus Labs API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6366F1\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/onboarding/upload-onboarding-files.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.moduluslabs.io/#organization\",\"name\":\"Modulus Labs API\",\"url\":\"https://docs.moduluslabs.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/moduluslabsinc/-g2JuykdH6NQMhpI/logo/light.svg?fit=max\u0026auto=format\u0026n=-g2JuykdH6NQMhpI\u0026q=85\u0026s=cdd5299c31d35441c6c6cab379ca0363\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.moduluslabs.io#website\",\"name\":\"Modulus Labs API\",\"url\":\"https://docs.moduluslabs.io\",\"publisher\":{\"@id\":\"https://docs.moduluslabs.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files#webpage\",\"url\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files\",\"name\":\"Upload Onboarding Files\",\"description\":\"Upload business documents for merchant onboarding verification\",\"dateModified\":\"2026-09-04T08:57:19.905Z\",\"isPartOf\":{\"@id\":\"https://docs.moduluslabs.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Onboarding API\",\"item\":\"https://docs.moduluslabs.io/api-reference/onboarding/ping\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Upload Onboarding Files\",\"item\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files#apireference\",\"headline\":\"Upload Onboarding Files\",\"name\":\"Upload Onboarding Files\",\"description\":\"Upload business documents for merchant onboarding verification\",\"url\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files\",\"mainEntityOfPage\":{\"@id\":\"https://docs.moduluslabs.io/api-reference/onboarding/upload-onboarding-files#webpage\"},\"dateModified\":\"2026-09-04T08:57:19.905Z\",\"publisher\":{\"@id\":\"https://docs.moduluslabs.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.moduluslabs.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Modulus Labs API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Modulus Labs API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/onboarding/upload-onboarding-files.md","siteName":"Modulus Labs API","nav":{"global":{"anchors":[{"anchor":"Support","icon":"envelope","href":"mailto:support@moduluslabs.io"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"API Reference","groups":[{"group":"QR API","pages":[{"title":"Ping","openapi":"api-reference/qr/openapi.json GET /ping","href":"/api-reference/qr/ping"},{"title":"Create Dynamic QR Ph","openapi":"POST /v1/pay/qr","href":"/api-reference/qr/create"}]},{"group":"Webhooks API","pages":[{"group":"Payment Webhooks","pages":[{"title":"Create Webhook Endpoint","openapi":"api-reference/payment-webhooks/openapi.json POST /v1/webhook_endpoints","href":"/api-reference/payment-webhooks/create-endpoint"},{"title":"List Webhook Endpoints","openapi":"api-reference/payment-webhooks/openapi.json GET /v1/webhook_endpoints","href":"/api-reference/payment-webhooks/list-endpoints"},{"title":"Retrieve Webhook Endpoint","openapi":"api-reference/payment-webhooks/openapi.json GET /v1/webhook_endpoints/{id}","href":"/api-reference/payment-webhooks/get-endpoint"},{"title":"Update Webhook Endpoint","openapi":"api-reference/payment-webhooks/openapi.json PATCH /v1/webhook_endpoints/{id}","href":"/api-reference/payment-webhooks/update-endpoint"},{"title":"Delete Webhook Endpoint","openapi":"api-reference/payment-webhooks/openapi.json DELETE /v1/webhook_endpoints/{id}","href":"/api-reference/payment-webhooks/delete-endpoint"},{"title":"Retrieve Signing Secret","openapi":"api-reference/payment-webhooks/openapi.json GET /v1/webhook_endpoints/{id}/signing_secret","href":"/api-reference/payment-webhooks/get-signing-secret"},{"title":"Rotate Signing Secret","openapi":"api-reference/payment-webhooks/openapi.json POST /v1/webhook_endpoints/{id}/signing_secret/rotate","href":"/api-reference/payment-webhooks/rotate-signing-secret"},{"title":"List Webhook Events","openapi":"api-reference/payment-webhooks/openapi.json GET /v1/webhook_events","href":"/api-reference/payment-webhooks/list-events"},{"title":"Retrieve Webhook Event","openapi":"api-reference/payment-webhooks/openapi.json GET /v1/webhook_events/{event_id}","href":"/api-reference/payment-webhooks/get-event"},{"title":"Retrigger Webhook Event","openapi":"api-reference/payment-webhooks/openapi.json POST /v1/webhook_events/{event_id}/retrigger","href":"/api-reference/payment-webhooks/retrigger-event"}]},{"group":"QR Ph Webhooks (Legacy)","pages":[{"title":"Ping","openapi":"api-reference/webhooks/openapi.json GET /ping","href":"/api-reference/webhooks/ping"},{"title":"Create Webhook","openapi":"POST /v1/webhooks","href":"/api-reference/webhooks/create"},{"title":"List Webhooks","openapi":"GET /v1/webhooks","href":"/api-reference/webhooks/list"},{"title":"Update Webhook","openapi":"PUT /v1/webhooks/{id}","href":"/api-reference/webhooks/update"},{"title":"Delete Webhook","openapi":"DELETE /v1/webhooks/{id}","href":"/api-reference/webhooks/delete"},{"title":"Simulate Webhook","openapi":"POST /v1/webhooks/qrph/simulate","href":"/api-reference/webhooks/simulate"}]}]},{"group":"Onboarding API","pages":[{"title":"Ping","openapi":"api-reference/onboarding/openapi.json GET /ping","href":"/api-reference/onboarding/ping"},{"title":"Create Account","openapi":"POST /v2/onboard/signup","href":"/api-reference/onboarding/create-account"},{"title":"Onboard Merchant","openapi":"POST /v2/onboard","href":"/api-reference/onboarding/onboard-merchant"},{"title":"Retrieve Onboarding Data","openapi":"GET /v2/onboard/{refNo}","href":"/api-reference/onboarding/retrieve-onboarding-data"},{"title":"Retrieve Onboarding Status","openapi":"GET /v2/onboard/{refNo}/status","href":"/api-reference/onboarding/retrieve-onboarding-status"},{"title":"Update Onboarding Data","openapi":"PUT /v2/onboard/{refNo}","description":"Update merchant onboarding data after being declined","href":"/api-reference/onboarding/update-onboarding-data"},{"title":"Upload Onboarding Files","openapi":"POST /v2/onboard/{merchantId}/files","href":"/api-reference/onboarding/upload-onboarding-files"}]},{"group":"Transaction Reporting API","pages":[{"title":"Ping","openapi":"api-reference/transaction-reporting/openapi.json GET /ping","description":"Public health check endpoint to verify Transaction Reporting API connectivity and availability","href":"/api-reference/transaction-reporting/ping"},{"title":"List Transactions","openapi":"api-reference/transaction-reporting/openapi.json GET /v1/transactions","href":"/api-reference/transaction-reporting/list-transactions"},{"title":"Retrieve Transaction","openapi":"api-reference/transaction-reporting/openapi.json GET /v1/transactions/{id}","href":"/api-reference/transaction-reporting/get-transaction"},{"title":"List Merchants","openapi":"api-reference/transaction-reporting/openapi.json GET /v1/merchants","href":"/api-reference/transaction-reporting/list-merchants"},{"title":"List Branches","openapi":"api-reference/transaction-reporting/openapi.json GET /v1/branches","href":"/api-reference/transaction-reporting/list-branches"}]},{"group":"Terminal Gateway API","pages":[{"title":"List Terminals","openapi":"api-reference/terminal-gateway/openapi.json GET /v1/terminals","href":"/api-reference/terminal-gateway/list-terminals"},{"title":"Create Payment","openapi":"api-reference/terminal-gateway/openapi.json POST /v1/terminals/{terminalId}/payments","href":"/api-reference/terminal-gateway/create-payment"},{"title":"Retrieve Transaction","openapi":"api-reference/terminal-gateway/openapi.json GET /v1/transactions/{transactionId}","href":"/api-reference/terminal-gateway/get-transaction"}]},{"group":"Ecom API","pages":[{"group":"Payment Links","pages":[{"title":"Create Payment Link","openapi":"api-reference/ecom/openapi.json POST /payment-links","href":"/api-reference/ecom/create-payment-link"},{"title":"Retrieve Payment Link","openapi":"api-reference/ecom/openapi.json GET /payment-links/{id}","href":"/api-reference/ecom/retrieve-payment-link"},{"title":"List Payment Links","openapi":"api-reference/ecom/openapi.json GET /payment-links","href":"/api-reference/ecom/list-payment-links"},{"title":"Update Payment Link","openapi":"api-reference/ecom/openapi.json PATCH /payment-links/{id}","href":"/api-reference/ecom/update-payment-link"},{"title":"Cancel Payment Link","openapi":"api-reference/ecom/openapi.json POST /payment-links/{id}/cancel","href":"/api-reference/ecom/cancel-payment-link"}]},{"group":"JavaScript SDK","pages":[{"title":"Create Payment Intent","openapi":"api-reference/ecom/openapi.json POST /payment-intents","href":"/api-reference/ecom/create-payment-intent"},{"title":"Retrieve Payment Intent","openapi":"api-reference/ecom/openapi.json GET /payment-intents/{id}","href":"/api-reference/ecom/retrieve-payment-intent"}]}]}]}]},"basePath":"","title":"Upload Onboarding Files - Modulus Labs API","buildId":"dpl_5tKr6cUUeuVJdEZ9JAEY3h4soMJ8","deploymentId":"dpl_5tKr6cUUeuVJdEZ9JAEY3h4soMJ8","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DbeN8Wo6.js","utils-CwSb5Doc.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BmREeM3N.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-AYjWerCj.js","snippetPresets-QD4ULQlp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-Digj5cjF.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CiHrzluR.js","shallow-D7h7pFGg.js","getApiPlaygroundDisplay-mlxkpAUf.js","CodeSnippet-D2rH5lZI.js","CodeSnippets-B53ulOaL.js","Page-CqcDm2To.js","getPastedJson-DxGeNMih.js","icon-BHbyrebp.js","MethodPill-C7F_KEEJ.js","DuplicateIcon-j3c5-73z.js","createIcon-OvCnyFqD.js","DynamicMarkdown-DpAS3GCb.js","SectionHeading-DMPpdrvW.js","axios-vUo_bRtp.js","Markdown-D7pDRguu.js","clsx-2_c6mSt_.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cu7_SikL.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ydqCcy4b.js"]}