Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.
If you need the short version, this page answers three things first: which integration modes HaiPay supports, which communication rules apply, and what the API request structure looks like.
One integration supports multiple payment methods worldwide. The system automatically redirects users to the corresponding country’s payment page based on their IP, allowing users to choose payment methods to complete payment.
Local Cashier
North America, South America, Europe, Asia, Middle East, etc.
Single Country Business
Independent integration, API synchronously returns payment pages supported by specific countries for users to choose and complete payment.
Pure API Payment Interface
North America, South America, Europe, Asia, Middle East, etc.
Single Country Business
Independent integration, API synchronously returns relevant information for specific payment methods, facilitating customer-customized payment pages.
Other Payment Interfaces
Global (International Credit Cards, Credit Card Subscriptions)
Below is the structure for calling HaiPay APIs. The API name is appended to the request URL. The content inside data contains the concatenated payload for different business operations.
POST https://uat-interface.haipay.asia/{currency}/{api_endpoint}{ "appId": 1054, "orderId": "M233323000059", ... "sign": "af0gAHkUOyYHu9owQp8NJ4mPEeUW4vuJcjdxqLIzrVw8AvpLSjD1DXupReSG/CyuSkFRyiIvCp5u703AuGGmfgD2gKDH3Ywau41bAbG2jnHJ8mtjiSJ5iWUzanyd4Kr7d1+rETbzUl7/BkW3t0X8UUFdqpxwG8DPUjAwUKfplWDHV7koG51Ozexd80DCsmW6eWdouAZ1uNXGLYmV3ftE3BmfNRtuv1C5bfTJWrTEIOxbF6g2uYOFZTlIgrQgd7/2PsAYwQQXNz8Q8CYl4OxqCv4pXJxaLWPbR5tqZu9og5kn32C9aHW/NlU1y39vzz+4ef81yPAqUV9oHlSMSPrMmw=="}
The example request above uses the test environment URL. For the production URL, please contact HaiPay business support at go-live. Test and production environments use separate accounts; appId is not interchangeable.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"HaiPay","description":"HaiPay payment API documentation for merchant onboarding, integration guides, testing workflows, and global payment references.","colors":{"primary":"#5F3CC7","light":"#9289FE","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/haipay-3385f6e8/Fh2duvg55RQO2xS-/images/logo/light.png?fit=max\u0026auto=format\u0026n=Fh2duvg55RQO2xS-\u0026q=85\u0026s=573f6622ee2aed0dbd22a52f7f1f3a5c","dark":"https://mintcdn.com/haipay-3385f6e8/Fh2duvg55RQO2xS-/images/logo/dark.png?fit=max\u0026auto=format\u0026n=Fh2duvg55RQO2xS-\u0026q=85\u0026s=ad633d1ef0dc99aafb8332e178794edf"},"favicon":"https://mintcdn.com/haipay-3385f6e8/bzbfpf1uH8h6Eq93/images/logo/favicon.png?fit=max\u0026auto=format\u0026n=bzbfpf1uH8h6Eq93\u0026q=85\u0026s=26754ae182abdf6a3e10188d15ff9d0d","api":{"playground":{"display":"interactive","proxy":true},"examples":{"languages":["bash","python","node","php","java"],"prefill":true}},"appearance":{"default":"light"},"navbar":{"links":[{"href":"https://www.haipay.net","label":"HaiPay.net"},{"href":"mailto:support@haipay.net","label":"Support"}]},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/haipay-global","github":"https://github.com/HaipayGroup"}},"search":{"prompt":"Search HaiPay docs..."},"seo":{"metatags":{"og:site_name":"HaiPay Documentation","og:image":"https://www.haipay.net/og-default.png","twitter:card":"summary_large_image","twitter:site":"@HaiPay_official","canonical":"https://doc.haipay.net"},"indexing":"navigable"},"contextual":{"options":["copy","chatgpt",{"title":"在通义千问中打开","description":"向qwen询问有关此页面的问题","icon":"/images/ai/qwen.svg","href":{"base":"https://www.qianwen.com/","query":[{"key":"q","value":"查看这份文档:$page"}]}},"claude","perplexity","mcp","cursor","vscode",{"title":"连接到Qoder","description":"在Qoder中安装HaiPay MCP","icon":"/images/ai/qoder.svg","href":"qoder://aicoding.aicoding-deeplink/mcp/add?name=HaiPay\u0026config=JTdCJTIydXJsJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZkb2MuaGFpcGF5Lm5ldCUyRm1jcCUyMiU3RA%3D%3D"}],"display":"header"},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"languages":[{"language":"zh","href":"zh/overview"},{"language":"en","href":"en/overview"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"haipay-3385f6e8","hasAudioNarration":false,"actualSubdomain":"haipay-3385f6e8","customDomains":["doc.haipay.net"],"gitSource":{"type":"github","owner":"haipaygroup","repo":"haipayapidoc","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae1723c3fdc9920443c6392","collectionId":"23a4a8d0-337c-4f9d-a74c-84cb305801f7","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae1723c3fdc9920443c6392"},"feedback":{"thumbs":false,"agentFeedback":false},"entitlements":{},"buildId":"6ae3371b4d48ffa49b8a7d92","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"en","tag":"API","count":516},{"language":"zh","tag":"API","count":516},{"language":"en","tag":"Documentation Center","count":228},{"language":"zh","tag":"文档中心","count":228},{"language":"en","tag":"Global Payment","count":143},{"language":"zh","tag":"全球支付","count":143},{"language":"zh","tag":"亚洲","count":111},{"language":"en","tag":"Asia Pacific","count":59},{"language":"en","tag":"Asia","count":52},{"language":"en","tag":"Africa","count":43},{"language":"en","tag":"Payments","count":43},{"language":"zh","tag":"非洲","count":43},{"language":"zh","tag":"支付接入","count":43},{"language":"en","tag":"Merchant Guide","count":38},{"language":"zh","tag":"商户指南","count":38},{"language":"en","tag":"Local Payments","count":32},{"language":"zh","tag":"国家/地区支付","count":32},{"language":"en","tag":"Middle East","count":30},{"language":"zh","tag":"中东","count":30},{"language":"zh","tag":"中东与北非","count":27}],"searchSettings":{"showContentSnippets":true,"maxResults":10}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","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":"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":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".dark #sidebar-title,.light #sidebar-title{font-weight:700!important;color:#000!important;font-size:14px}.dark #sidebar-title{color:#fff!important}:lang(zh){font-family:\"Noto Sans SC\",sans-serif}:lang(en){font-family:\"Inter\",sans-serif}a.related-link:hover span{color:#5f3cc7}.frame{margin:24px 0;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}.frame img{width:100%;display:block;margin:0!important}.frame-caption{padding:10px 16px;font-size:13px;color:#6b7280;background:#fff;border-top:1px solid #f3f4f6}.dark .frame{border-color:#374151;background:#111827}.dark .frame-caption{color:#9ca3af;background:#111827;border-top-color:#374151}.badge-recommended{display:inline-block;padding:1px 8px;border-radius:4px;font-size:12px;font-weight:600;background:#f3eeff;color:#7b3ff2;vertical-align:middle;line-height:1.6}.dark .badge-recommended{background:rgba(123,63,242,.18);color:#c4b5fd}.doc-footer{font-size:13px;color:#9ca3af}.doc-footer p{margin:4px 0!important}.dark .doc-footer{color:#6b7280}"}],"page":{"pagePath":"en/get-started/api-conventions","slug":"/en/get-started/api-conventions","pageMetadata":{"title":"API Conventions and Common Rules","sidebarTitle":"API Description","description":"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.","keywords":["HaiPay","API description","signing rules","callback","API reference"],"href":"/en/get-started/api-conventions"},"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: \"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.\"\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={a:`a`,code:`code`,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},{CodeBlock,Heading,Table,Tip}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`If you need the short version, this page answers three things first: which integration modes HaiPay supports, which communication rules apply, and what the API request structure looks like.`}),`\n`,_jsx(Heading,{level:`2`,id:`1-integration-methods`,children:`1. Integration Methods`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Interface Type`}),_jsx(_components.th,{style:{textAlign:`left`},children:`API Documentation Path`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Business Scope`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Global Cashier`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Global (Cashier)`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Global Business`}),_jsx(_components.td,{style:{textAlign:`left`},children:`One integration supports multiple payment methods worldwide. The system automatically redirects users to the corresponding country’s payment page based on their IP, allowing users to choose payment methods to complete payment.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Local Cashier`}),_jsx(_components.td,{style:{textAlign:`left`},children:`North America, South America, Europe, Asia, Middle East, etc.`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Single Country Business`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Independent integration, API synchronously returns payment pages supported by specific countries for users to choose and complete payment.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Pure API Payment Interface`}),_jsx(_components.td,{style:{textAlign:`left`},children:`North America, South America, Europe, Asia, Middle East, etc.`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Single Country Business`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Independent integration, API synchronously returns relevant information for specific payment methods, facilitating customer-customized payment pages.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Other Payment Interfaces`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Global (International Credit Cards, Credit Card Subscriptions)`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Global Business`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Independent integration, API synchronously returns payment pages, credit Cards supports subscription deductions.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`2-communication-protocol`,children:`2. Communication Protocol`}),`\n`,_jsx(_components.p,{children:`When merchants integrate with HaiPay services and call the API, they must follow the rules below:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Type`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Transmission`}),_jsx(_components.td,{style:{textAlign:`left`},children:`To ensure transaction security, HTTPS transmission is required`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Submission`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Requests must be submitted using the POST method`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Data Format`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Both requests and responses must use application/json format`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Character Set`}),_jsx(_components.td,{style:{textAlign:`left`},children:`UTF-8 character encoding must be used`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Signature Algo`}),_jsx(_components.td,{style:{textAlign:`left`},children:`SHA256WithRSA`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Signature Req.`}),_jsxs(_components.td,{style:{textAlign:`left`},children:[`Both request and response data must be signed and verified. See `,_jsx(_components.a,{href:`/en/get-started/configuration-and-signatures`,children:`Configuration \u0026 Signature Rules`}),` for details`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`SSL/TLS Version`}),_jsx(_components.td,{style:{textAlign:`left`},children:`TLSv1.2, TLSv1.3`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`3-api-structure`,children:`3. API Structure`}),`\n`,_jsxs(_components.p,{children:[`Below is the structure for calling HaiPay APIs. The API name is appended to the request URL. The content inside `,_jsx(_components.code,{children:`data`}),` contains the concatenated payload for different business operations.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`json`,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:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`POST https:`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`//uat-interface.haipay.asia/{currency}/{api_endpoint}`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"appId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1054`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"orderId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"M233323000059\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#82071E`,\"--shiki-light-font-style\":`italic`,\"--shiki-dark\":`#F44747`,\"--shiki-dark-font-style\":`inherit`},children:` ...`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sign\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"af0gAHkUOyYHu9owQp8NJ4mPEeUW4vuJcjdxqLIzrVw8AvpLSjD1DXupReSG/CyuSkFRyiIvCp5u703AuGGmfgD2gKDH3Ywau41bAbG2jnHJ8mtjiSJ5iWUzanyd4Kr7d1+rETbzUl7/BkW3t0X8UUFdqpxwG8DPUjAwUKfplWDHV7koG51Ozexd80DCsmW6eWdouAZ1uNXGLYmV3ftE3BmfNRtuv1C5bfTJWrTEIOxbF6g2uYOFZTlIgrQgd7/2PsAYwQQXNz8Q8CYl4OxqCv4pXJxaLWPbR5tqZu9og5kn32C9aHW/NlU1y39vzz+4ef81yPAqUV9oHlSMSPrMmw==\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`Request URL:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Environment`}),_jsx(_components.th,{style:{textAlign:`left`},children:`URL`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Test`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.a,{href:`https://uat-interface.haipay.asia`,children:`https://uat-interface.haipay.asia`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`Production`}),_jsx(_components.td,{style:{textAlign:`left`},children:`To be provided at go-live`})]})]})]}),`\n`,_jsxs(Tip,{children:[`The example request above uses the `,_jsx(_components.strong,{children:`test environment`}),` URL. For the production URL, please contact HaiPay business support at go-live. Test and production environments use separate accounts; appId is not interchangeable.`]}),`\n`,_jsx(Heading,{level:`2`,id:`4-api-list`,children:`4. API List`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Product`}),_jsx(_components.th,{children:`API Name`}),_jsx(_components.th,{children:`Endpoint`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Collection`}),_jsx(_components.td,{children:`Collection Apply`}),_jsx(_components.td,{children:`/collect/apply`}),_jsx(_components.td,{children:`User makes a payment to the merchant (Top-up)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Collection`}),_jsx(_components.td,{children:`Collection Query`}),_jsx(_components.td,{children:`/collect/query`}),_jsx(_components.td,{})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Refund Apply`}),_jsx(_components.td,{children:`Refund Apply`}),_jsx(_components.td,{children:`/refund/apply`}),_jsx(_components.td,{})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Disbursement`}),_jsx(_components.td,{children:`Disbursement Apply`}),_jsx(_components.td,{children:`/pay/apply`}),_jsx(_components.td,{children:`Merchant makes a payment to the user (Withdrawal)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Disbursement`}),_jsx(_components.td,{children:`Disbursement Query`}),_jsx(_components.td,{children:`/pay/query`}),_jsx(_components.td,{})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Account Balance`}),_jsx(_components.td,{children:`Account Query`}),_jsx(_components.td,{children:`/account/ledger`}),_jsx(_components.td,{children:`Merchant queries account balance`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`For details, see `,_jsx(_components.a,{href:`/en/get-started/documentation-map`,children:`API Documentation`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`5-parameters`,children:`5. Parameters`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Common Request Parameters`})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Parameter`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Required`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Type`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`appId`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Yes`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Integer`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Business ID (retrieved from the backend, must correspond to the currency in the request URL)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`sign`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Yes`}),_jsx(_components.td,{style:{textAlign:`left`},children:`String`}),_jsxs(_components.td,{style:{textAlign:`left`},children:[`Signature (see `,_jsx(_components.a,{href:`/en/get-started/configuration-and-signatures`,children:`Configuration \u0026 Signature Rules`}),`)`]})]})]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Request Example:`})}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`json`,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:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"appId\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1000`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},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:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sign\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"fCywFPOojpRIPi4ph81+CwoAvMXV1va2XR1DQVJeGnZwzNVd0hmvpud7nbP/3lc5JeTVELomruwVTGLtr+BTGT0IweAFTGNvNUuqOs3I4KG5tjvhPM7wm9NtwK2uAX1niLoylt4DcLfy2TeaxPQYDCJJRf7Qm7sDwJX5VoFt8RO9EC2ih+0Ike2+cAyRpIfKENPoIGQbUwvH6KkzHzjljcuvcSqq4D+iZid7up58A866RFrrJH9vkwaF+2mYxa/7awQIwAq8HPOxHkzLfVg74MZC8I1TOKvQAxkAquoNMMyrcAqRIopURfrgEaAtyW/ThPdyduYVlFeMg7BkpGLqZQ==\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Common Response Parameters`})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Parameter`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Required`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Type`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`status`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Yes`}),_jsx(_components.td,{style:{textAlign:`left`},children:`String`}),_jsx(_components.td,{style:{textAlign:`left`},children:`1: Normal, 0: Exception`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`error`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Yes`}),_jsx(_components.td,{style:{textAlign:`left`},children:`String`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Error code`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`msg`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Yes`}),_jsx(_components.td,{style:{textAlign:`left`},children:`String`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Error description`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:`data`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Yes`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Object`}),_jsxs(_components.td,{style:{textAlign:`left`},children:[`Business data (`,_jsx(_components.strong,{children:`included in signature check`}),`)`]})]})]})]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Response Example:`})}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`json`,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:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`9`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"1\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"error\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"00000000\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"msg\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},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:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"...\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},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:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sign\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"PWA7B2u1hGr1VRxOCZbRuXQXtJiA6BgPExFnFv73hKJ+zcZfOe/R+y+inlwWcdDBzfix35+dl6raEs/yG/hcYyQOwDQ+mVjIt5wFk6iX7GPw557138yBdAmuMqvWM2IF+omLFcQFJvzfbR84rCyOmebDJlhkYMga5TTFHVLicUx3bPIrOJLoWJHrnZfcVFAJ+P5mUQhMH/cf+YmYZvrqq34pMJh6PcP5vyruJ8aNV0QfyHR42AHLIgp+HnOcZpA0aUzFXM5zpsgXK3QR/KO3vLiKd77UaZNO6g5TN/Ck2MtLkBVxyvIHstgXFXKF1e+uc91FdBHK5nfmrjLQ2wyeUA==\"`})]}),`\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`]})})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Error Codes`})}),`\n`,_jsxs(_components.p,{children:[`For the complete error codes, the error response structure, and scenario-based error messages with handling advice, see `,_jsx(_components.a,{href:`/en/resources/error-responses`,children:`HaiPay Error Codes and Error Response Reference`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`related-topics`,children:`Related Topics`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/docs/en/guide/api_parameters_doc`,children:`HaiPay Integration Environment and Request URLs`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/get-started/configuration-and-signatures`,children:`HaiPay Configuration and Signature Guide`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/resources/error-responses`,children:`HaiPay Error Codes and Error Response Reference`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/get-started/integration-steps`,children:`Payment Integration Steps`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/en/get-started/integration-process`,children:`Merchant Integration Process`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`https://www.haipay.net/contact`,children:`Contact HaiPay`})}),`\n`]})]})}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":"API Conventions and Common Rules","sidebarTitle":"API Description","description":"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.","keywords":["HaiPay","API description","signing rules","callback","API reference"],"href":"/en/get-started/api-conventions"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"1. Integration Methods","slug":"1-integration-methods","depth":2,"children":[]},{"title":"2. Communication Protocol","slug":"2-communication-protocol","depth":2,"children":[]},{"title":"3. API Structure","slug":"3-api-structure","depth":2,"children":[]},{"title":"4. API List","slug":"4-api-list","depth":2,"children":[]},{"title":"5. Parameters","slug":"5-parameters","depth":2,"children":[]},{"title":"Related Topics","slug":"related-topics","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/haipay-3385f6e8/f9eb4046a3d2a66d/public/inject-sign.js"],"subdomain":"haipay-3385f6e8","siteName":"HaiPay","title":"API Conventions and Common Rules - HaiPay","navMaps":{"firstHrefInVersion":{"V20261001":{"href":"/en/get-started/api-conventions","matchLevel":0},"V20260801":{"href":"/zh/history/V20260801/overview","matchLevel":4},"V20260701":{"href":"/zh/history/V20260701/overview","matchLevel":4},"V20260628":{"href":"/zh/history/V20260628/overview","matchLevel":4},"V20260623":{"href":"/zh/history/V20260623/overview","matchLevel":4}},"firstHrefInLanguage":{"zh":{"href":"/zh/get-started/api-conventions","matchLevel":1},"en":{"href":"/en/get-started/api-conventions","matchLevel":0}}},"lastModified":"2026-10-29T12:09:22.548Z","gitLastModified":"2026-10-29T11:11:35.000Z","originalFileLocation":"en/get-started/api-conventions.mdx","locale":"en"},"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=\"light\"}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=\"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.\">\u003cmeta data-mint-head name=\"application-name\" content=\"HaiPay\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"API Conventions and Common Rules - HaiPay\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"HaiPay Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://doc.haipay.net/en/get-started/api-conventions\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://www.haipay.net/og-default.png\">\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=\"API Conventions and Common Rules - HaiPay\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://www.haipay.net/og-default.png\">\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/haipay-3385f6e8/zF8MnpYOAB0QG9P5/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"HaiPay\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5F3CC7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://doc.haipay.net/en/get-started/api-conventions\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/get-started/api-conventions.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://doc.haipay.net/en/get-started/api-conventions\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://doc.haipay.net/zh/get-started/api-conventions\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://doc.haipay.net/zh/get-started/api-conventions\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://doc.haipay.net/#organization\",\"name\":\"HaiPay\",\"url\":\"https://doc.haipay.net\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/haipay-3385f6e8/Fh2duvg55RQO2xS-/images/logo/light.png?fit=max\u0026auto=format\u0026n=Fh2duvg55RQO2xS-\u0026q=85\u0026s=573f6622ee2aed0dbd22a52f7f1f3a5c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://doc.haipay.net#website\",\"name\":\"HaiPay\",\"url\":\"https://doc.haipay.net\",\"publisher\":{\"@id\":\"https://doc.haipay.net/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://doc.haipay.net/en/get-started/api-conventions#webpage\",\"url\":\"https://doc.haipay.net/en/get-started/api-conventions\",\"name\":\"API Conventions and Common Rules\",\"description\":\"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.\",\"dateModified\":\"2026-10-29T11:11:35.000Z\",\"isPartOf\":{\"@id\":\"https://doc.haipay.net#website\"},\"breadcrumb\":{\"@id\":\"https://doc.haipay.net/en/get-started/api-conventions#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://doc.haipay.net/en/get-started/api-conventions#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Configuration \u0026 Integration\",\"item\":\"https://doc.haipay.net/en/get-started/integration-process\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API Conventions and Common Rules\",\"item\":\"https://doc.haipay.net/en/get-started/api-conventions\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://doc.haipay.net/en/get-started/api-conventions#article\",\"headline\":\"API Conventions and Common Rules\",\"name\":\"API Conventions and Common Rules\",\"description\":\"Learn interface types, shared fields, signing rules, callback handling, and common response structures before implementation.\",\"url\":\"https://doc.haipay.net/en/get-started/api-conventions\",\"mainEntityOfPage\":{\"@id\":\"https://doc.haipay.net/en/get-started/api-conventions#webpage\"},\"image\":\"https://www.haipay.net/og-default.png\",\"dateModified\":\"2026-10-29T11:11:35.000Z\",\"keywords\":\"HaiPay, API description, signing rules, callback, API reference\",\"publisher\":{\"@id\":\"https://doc.haipay.net/#organization\"},\"isPartOf\":{\"@id\":\"https://doc.haipay.net#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"HaiPay\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"HaiPay","nav":{"global":null,"languages":[{"language":"zh","pages":[{"title":"zh","href":"/zh/get-started/api-conventions"}]},{"language":"en","versions":[{"version":"V20261001","default":true,"tag":"Latest","tabs":[{"tab":"Get Started","groups":[{"group":"Overview","pages":[{"title":"Merchant Integration Overview","sidebarTitle":"Guide","href":"/en/overview"}]},{"group":"Configuration \u0026 Integration","pages":[{"title":"Merchant Integration Process","sidebarTitle":"Integration Process","href":"/en/get-started/integration-process"},{"title":"Configuration and Signatures","sidebarTitle":"Config \u0026 Signature","href":"/en/get-started/configuration-and-signatures"},{"title":"Payment Integration Steps","sidebarTitle":"Integration Steps","description":"Understand the Direct API integration flow, including payment method display, parameter handling, callback processing, and compliance requirements.","href":"/en/get-started/integration-steps"},{"title":"API Conventions and Common Rules","sidebarTitle":"API Description","href":"/en/get-started/api-conventions"},{"title":"Payment Documentation Index","sidebarTitle":"API Documentation","description":"Browse payment API documentation by region and product, including public APIs, global payment methods, and local country integrations.","href":"/en/get-started/documentation-map"}]}]},{"tab":"Payments","pages":[{"title":"Payments","href":"/en/payments/cashier"}]},{"tab":"API","pages":[{"title":"API","href":"/en/api-reference/overview"}]},{"tab":"Operations","pages":[{"title":"Operations","href":"/en/operations/callback"}]},{"tab":"Testing \u0026 Go-Live","pages":[{"title":"Testing \u0026 Go-Live","href":"/en/testing/end-to-end"}]},{"tab":"Resources","pages":[{"title":"Resources","href":"/en/resources/error-responses"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/en/changelog"}]}]},{"version":"V20260801","pages":[{"title":"V20260801","href":"/en/history/V20260801/overview"}]},{"version":"V20260701","pages":[{"title":"V20260701","href":"/en/history/V20260701/overview"}]},{"version":"V20260628","pages":[{"title":"V20260628","href":"/en/history/V20260628/overview"}]},{"version":"V20260623","pages":[{"title":"V20260623","href":"/en/history/V20260623/overview"}]}]}]},"title":"API Conventions and Common Rules - HaiPay","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":[],"chunks":[]}