Install
openclaw skills install @clink/clink-integ-skillsDesign, scaffold, validate, and review ClinkBill/Clink payment integrations, including clink-integ-cli usage, local clink login Secret Key bootstrap, browserless manual Secret Key setup, webhook endpoint automation, product/price/subscription catalog import, checkout and subscription APIs, webhook s
openclaw skills install @clink/clink-integ-skillsUse this skill when the user wants to guide a coding agent through a Clink integration, validate the integration approach, review an existing design, or answer a documentation-backed integration question.
This skill is modular:
This skill covers four primary guidance paths:
@clink-ai/clink-elementsclink login Secret Key bootstrap when optional Playwright is already provisioned, browserless manual Secret Key setup, CLI request-domain environment switching, catalog import, webhook endpoint automation, signing-secret sync, smoke tests, and sandbox flowsagentic-payment-skills, adapter design, clink-cli payment execution, callback, and task resume behavioropenclaw-payment-skills and merchant backend webhook support for email verificationIt also provides support capabilities for:
Use this path when the user wants help with:
clink login and clink dashboard apikey ensure-secret --save --jsonRead:
references/retrieval-protocol.mdreferences/clink-integ-cli-integration.mdnode scripts/load_official_docs.mjsreferences/new-user-onboarding.mdAfter drafting the solution, review it with:
references/review-checklist.mdreferences/output-artifacts.mdUse this path when the user wants help with:
clink-integ-cli@clink-ai/clink-elements, loadClinkElements, createElement, paymentMethod, currencySelect, submit-enabled, submit-visible, amount-change, session-success, session-pending, or promoCodeChangeRead:
references/retrieval-protocol.mdreferences/clink-integ-cli-integration.mdreferences/standard-integration.mdreferences/elements-integration.md when the request mentions Elements, embedded checkout, SDK iframe components, loadClinkElements, paymentMethod, currencySelect, or Elements eventsAfter drafting the solution, review it with:
references/review-checklist.mdreferences/output-artifacts.mdUse this path when the user wants help with:
openclaw-payment-skillscustomer.verifycustomer.verify webhook handlingRead:
references/retrieval-protocol.mdnode scripts/load_payment_skill_contexts.mjs --dependency openclaw-payment-skills --print-path, then read the generated OpenClaw payment skill contextreferences/agent-integration.mdAfter drafting the solution, review it with:
references/review-checklist.mdreferences/output-artifacts.mdUse this path when the user wants help with:
agentic-payment-skillsclink-payment-skill and clink-cli dependency designagentic-payment-skills402 Payment Required handoff from a merchant API or tool into agentic-payment-skillsRead:
references/retrieval-protocol.mdnode scripts/load_payment_skill_contexts.mjs --dependency agentic-payment-skills --print-path, then read the generated generic agent payment skill contextreferences/generic-agent-integration.mdAfter drafting the solution, review it with:
references/review-checklist.mdreferences/output-artifacts.mdUse this path when the user wants help with:
Read:
references/retrieval-protocol.mdAfter drafting the answer, review it with:
references/review-checklist.md when the question is about contract correctnessUse this path when the user wants help with:
Read:
references/retrieval-protocol.md when official docs are neededreferences/validation-workflow.mdreferences/output-artifacts.mdAfter drafting the answer, review it with:
references/review-checklist.mdnode scripts/load_official_docs.mjsnode scripts/load_payment_skill_contexts.mjs --dependency openclaw-payment-skills --print-path before generating code, integration guidance, or review output, then read the generated payment skill contextnode scripts/load_payment_skill_contexts.mjs --dependency agentic-payment-skills --print-path before generating code, integration guidance, or review output, then read the generated payment skill contextreferences/review-checklist.md as the final self-review passvendor/clink-integ-cli/clink-integ-cli.js; do not install clink-integ-cli from GitHub or npm during normal skill execution; check node vendor/clink-integ-cli/clink-integ-cli.js env list --help, env add --help, auth secret set --help, api request --help, catalog import --help, and webhook endpoint ensure --help; confirm catalog help supports imageId/imageUrl/imageFile and webhook endpoint ensure help supports --sync-env-file; for local desktop fallback only, use clink login only when optional Playwright browser support is already provisioned offline outside the bundleclink env list, clink env show <name> --json, clink env add <name> --api-base-url <url>, --env <name>, or CLINK_ENV; use --base-url or CLINK_BASE_URL only for one-off debugging overrides, and never to bypass the production validation gateclink login only if optional Playwright browser support has already been provisioned offline outside the bundle; otherwise route to browserless manual Secret Key setup; pause for the human to complete Dashboard login, then run clink dashboard whoami --json and clink dashboard apikey ensure-secret --save --json to create or resolve the sandbox Secret Key and save it to the CLI profileCLINK_SECRET_KEY, use clink dashboard apikey ensure-secret --save --show-secret --json only in a controlled local secret-write step; write the value to an ignored .env, platform Secret, or secret manager, and never echo it in final outputclink login cannot run, ask only for CLINK_SECRET_KEY when authentication is needed; store it with clink auth secret set --api-key env:CLINK_SECRET_KEY --env sandbox; do not initially ask for CLINK_WEBHOOK_SIGNING_KEYclink webhook endpoint ensure --url <public-webhook-url> --events core --save-secret --jsonCLINK_WEBHOOK_SIGNING_KEY when the agent can run clink webhook endpoint ensure --save-secret --show-secret --json and write platform Secrets itselfpublishKey, environment, and sessionId in browser code, and keep webhook reconciliation authoritativepresetOptionsopenclaw-payment-skills responsibilitiesagentic-payment-skills, callback, and resume responsibilitiesnode scripts/lint_contract.mjs, node scripts/lint_webhook_design.mjs, and node scripts/generate_guidance_artifacts.mjsagentic-payment-skills or openclaw-payment-skills, do not generate or review code from static memory alone; refresh and read the latest available payment skill context firstnode scripts/load_official_docs.mjs means: use cache if it is within 7 days, refresh only if missing or older than 7 days, and fall back to stale cache only when refresh failsnode scripts/load_payment_skill_contexts.mjs means: download the latest GitHub codeload zip payment skill context into this skill's .cache when possible, never mutate sibling payment skill worktrees, and fall back to local sibling skill files only with an explicit warningmerchantReferenceId as an idempotency keyCLINK_SECRET_KEY is configuredclink-integ-cli from GitHub, npm, or another remote source during normal skill execution; use the vendored single-file bundle in vendor/clink-integ-cli/clink-integ-cli.jsclink login only as a local desktop, human-assisted bootstrap for obtaining or initializing the Secret Key; after that, continue through Secret Key API commandsJUSTCLINK, is automatically approved after registration, and succeeds, so users can obtain the sandbox Secret Key directly; production registration requires waiting for approval before production key or go-live guidance, and users can proactively contact supportMerchant Dashboard > Developers > API Keys by clicking Initialize Key, then copying and securely storing the key because it is displayed only onceclink webhook endpoint ensure --save-secret, then sync the returned or rotated signing secret into the merchant runtime as CLINK_WEBHOOK_SIGNING_KEYCLINK_WEBHOOK_SIGNING_KEY into hosted/low-code Secrets" as a successful automated handoff unless the platform has no agent-accessible Secret write capability; in that case, state the platform permission blocker explicitlyclink-catalog.json with one image source per product: imageId, imageUrl, or imageFileimageId; use imageUrl, or use imageFile for local public/static assets so clink catalog import can upload themmerchantReferenceId or only on sessionId when both exist; match both fields and quarantine mismatchesclink dashboard webhook ensure is only a compatibility alias for clink webhook endpoint ensure--save-secret unless the signing secret was also synced to the app runtime and the service was restarted or redeployedclink webhook endpoint ensure --save-secret --json, syncing CLINK_WEBHOOK_SIGNING_KEY, and restarting or redeploying the servicetheme, primaryColor, radius, and skeleton behavior through presetOptionssession-success, session-pending, successUrl, or iframe callback behavior as authoritative payment confirmationsubmit-enabled; true means the host can submit, so disabled UI must be derived as !enabled plus local loading or initialization statereferences/retrieval-protocol.mdreferences/clink-integ-cli-integration.mdreferences/new-user-onboarding.mdreferences/standard-integration.mdreferences/elements-integration.mdreferences/agent-integration.mdreferences/generic-agent-integration.mdreferences/output-artifacts.mdreferences/validation-workflow.mdreferences/review-checklist.mdreferences/environment-strategy.mdreferences/agent-prompt.zh-CN.mdreferences/universal-agent-prompt.zh-CN.md