{"id":38722211,"url":"https://github.com/junhoyeo/iamport-typings","last_synced_at":"2026-01-17T11:10:37.831Z","repository":{"id":45134381,"uuid":"263606416","full_name":"junhoyeo/iamport-typings","owner":"junhoyeo","description":"💳✨📘 TypeScript type definitions for PortOne (formerly Iamport) / 국내 PG 결제연동 서비스, 포트원(구 아임포트)를 위한 타입스크립트 타입 선언을 제공합니다.","archived":false,"fork":false,"pushed_at":"2025-05-21T05:07:19.000Z","size":45,"stargazers_count":35,"open_issues_count":0,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-08T11:56:52.132Z","etag":null,"topics":["iamport","types","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/junhoyeo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-13T11:10:15.000Z","updated_at":"2025-05-21T05:07:23.000Z","dependencies_parsed_at":"2024-03-03T18:24:18.553Z","dependency_job_id":"b99e12c7-9ab9-4778-a4fc-24f8276cebe0","html_url":"https://github.com/junhoyeo/iamport-typings","commit_stats":{"total_commits":20,"total_committers":5,"mean_commits":4.0,"dds":0.55,"last_synced_commit":"372c217afc5cc989596dca8561c2d273e6708516"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/junhoyeo/iamport-typings","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junhoyeo%2Fiamport-typings","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junhoyeo%2Fiamport-typings/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junhoyeo%2Fiamport-typings/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junhoyeo%2Fiamport-typings/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/junhoyeo","download_url":"https://codeload.github.com/junhoyeo/iamport-typings/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junhoyeo%2Fiamport-typings/sbom","scorecard":{"id":542726,"data":{"date":"2025-08-11","repo":{"name":"github.com/junhoyeo/iamport-typings","commit":"f5ea804c152d61c2d7b1113b22cd36740703ab4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.9,"checks":[{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"1 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":2,"reason":"Found 3/12 approved changesets -- score normalized to 2","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T08:38:30.931Z","repository_id":45134381,"created_at":"2025-08-20T08:38:30.932Z","updated_at":"2025-08-20T08:38:30.932Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28506616,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T10:25:30.148Z","status":"ssl_error","status_checked_at":"2026-01-17T10:25:29.718Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["iamport","types","typescript"],"created_at":"2026-01-17T11:10:37.198Z","updated_at":"2026-01-17T11:10:37.808Z","avatar_url":"https://github.com/junhoyeo.png","language":"TypeScript","funding_links":["https://developer.paypal.com/docs/reports/reference/paypal-supported-currencies/"],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n  \u003cimg alt=\"credit-card\" src=\"https://em-content.zobj.net/source/microsoft-teams/363/credit-card_1f4b3.png\" width=\"128px\" /\u003e\u003cimg alt=\"man-mage\" src=\"https://em-content.zobj.net/source/microsoft-teams/363/man-mage_1f9d9-200d-2642-fe0f.png\" width=\"128px\" /\u003e \u003cbr /\u003e\n  Iamport Typings\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca aria-label=\"NPM version\" href=\"https://www.npmjs.com/package/iamport-typings\"\u003e\n    \u003cimg alt=\"\" src=\"https://img.shields.io/npm/v/iamport-typings.svg?style=for-the-badge\u0026labelColor=000000\"\u003e\n  \u003c/a\u003e\n  \u003ca aria-label=\"NPM downloads\" href=\"https://github.com/\"\u003e\n    \u003cimg alt=\"\" src=\"https://img.shields.io/npm/dt/iamport-typings?style=for-the-badge\u0026labelColor=000\"\u003e\n  \u003c/a\u003e\n  \u003ca aria-label=\"License\" href=\"https://www.npmjs.com/package/iamport-typings\"\u003e\n    \u003cimg alt=\"\" src=\"https://img.shields.io/npm/l/iamport-typings.svg?style=for-the-badge\u0026labelColor=000000\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003e 국내 PG 결제연동 서비스, [포트원(구 아임포트)](https://portone.io)를 위한 타입스크립트 타입 선언을 제공합니다.\n\n## ⚔️ 사용하는 곳\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://pocketlesson.com\"\u003e\n    \u003cimg src=\"https://user-images.githubusercontent.com/7247848/148687957-9102924d-5282-4526-a8c6-baddd9f26c39.png\" align=\"center\" height=\"50\" alt=\"PocketLesson\" hspace=\"16\"\u003e\n   \u003c/a\u003e\n\u003c/p\u003e\n\n## 📦 설치\n\n```bash\nnpm install -D iamport-typings\n# Or using yarn\nyarn add -D iamport-typings\n```\n\n패키지를 설치합니다.\n\n## 📌 로드맵\n\n메소드별 지원 상황입니다. PR은 언제나 환영! 🙌\n\n- [x] `init`\n- [x] `request_pay`\n- [ ] `agency`\n- [ ] `certification`\n- [ ] `close`\n- [ ] `communicate`\n- [ ] `naver_zzim`\n\n## 🚀 사용 방법\n\n```json\n// tsconfig.json\n{\n  \"compilerOptions\": {\n    \"types\": [\"iamport-typings\"]\n  }\n}\n```\n\n사용할 프로젝트 루트 디렉토리에 있는 `tsconfig.json` 파일의 `compilerOptions.types`에 `iamport-typings`를 추가하기만 하면 끝!\n\n```tsx\nconst { IMP } = window;\n```\n\n`Window` 인터페이스를 확장하기 때문에, 기존처럼 위와 같이 바로 사용할 수 있답니다! 😋\n\n```tsx\nimport Iamport from 'iamport-typings';\n\ndeclare global {\n  interface Window {\n    IMP?: Iamport;\n  }\n}\n```\n\n```tsx\nimport { RequestPayParams, RequestPayResponse } from 'iamport-typings';\n\nconst onClickPayment = () =\u003e {\n  const { IMP } = window;\n  IMP.init('your_imp_uid');\n\n  const params: RequestPayParams = {\n    ...\n  };\n\n  IMP.request_pay(params, onPaymentAccepted);\n};\n\nconst onPaymentAccepted = (response: RequestPayResponse) =\u003e {\n  const { imp_uid, merchant_uid } = response;\n  console.log(imp_uid, merchant_uid);\n};\n```\n\n위와 같이 각각의 인터페이스를 가져와 사용하는 것도 가능합니다.\n\n### 아임포트 객체\n\n| 인터페이스 이름 | 설명 |\n| ----------- | --- |\n| `Iamport` | 아임포트 객체 |\n\n### [결제요청 파라미터](https://developers.portone.io/docs/ko/sdk/javascript-sdk/payrq?v=v1)\n\n| 인터페이스 이름 | 설명 |\n| ----------- | --- |\n| `RequestPayParams` | `request_pay` 메소드를 위한 결제 승인에 필요한 정보를 담고 있는 객체로, `RequestPayAdditionalParams`에서 확장됨 |\n| `RequestPayAdditionalParams` | `request_pay` 메소드를 위한 추가 속성 |\n\n| 인터페이스 이름 | 설명 |\n| ----------- | --- |\n| `RequestPayNaverAdditionalParams` | [네이버페이 연동 시 `RequestPayParams` 에 추가되는 파라미터](https://github.com/iamport/iamport-manual/blob/master/NAVERPAY/sample/naverpay-pg.md) |\n| `RequestPayNaverParams` | `RequestPayParams \u0026 RequestPayNaverAdditionalParams` |\n\n#### 기타\n\n| 타입 이름 | 설명 | Codegen |\n| ------- | --- | ------- |\n| [`Pg`](https://github.com/junhoyeo/iamport-typings/blob/main/src/Pg.ts) | | [Codegen](https://github.com/junhoyeo/iamport-typings/blob/main/scripts/codegen-pg.js) |\n| [`PaymentMethod`](https://github.com/junhoyeo/iamport-typings/blob/main/src/PaymentMethod.ts) | | [Codegen](https://github.com/junhoyeo/iamport-typings/blob/main/scripts/codegen-payment-method.js) |\n| [`PayPalSupportedCurrency`](https://github.com/junhoyeo/iamport-typings/blob/main/src/paypal/PayPalSupportedCurrency.ts) | [PayPal 지원 결제통화](https://developer.paypal.com/docs/reports/reference/paypal-supported-currencies/)의 유니언 타입(union type) | [Codegen](https://github.com/junhoyeo/iamport-typings/blob/main/scripts/codegen-paypal.js) |\n| `Currency` | 결제통화 구분코드 (`'KRW' \\| 'USD' \\| 'EUR' \\| 'JPY' \\| PayPalSupportedCurrency`) | |\n| [`CardCode`](https://github.com/junhoyeo/iamport-typings/blob/main/src/card/CardCode.ts) | [카드사 금융결제원 표준 코드](https://chaifinance.notion.site/53589280bbc94fab938d93257d452216?v=eb405baf52134b3f90d438e3bf763630)의 유니언 타입(union type) | [Codegen](https://github.com/junhoyeo/iamport-typings/blob/main/scripts/codegen-card-codes.js) |\n| `Language` | `'en' \\| 'ko' \\| 'zh'` | |\n| `EscrowProduct` | | |\n\n| 타입 이름 | 설명 |\n| ----------- | --- |\n| `NaverProductCategoryType` | |\n| `NaverProductCategoryId` | |\n| `NaverPayReferrer` | |\n| `NaverProduct` | [네이버페이 상품 정보](https://github.com/iamport/iamport-manual/blob/master/NAVERPAY/sample/naverpay-pg.md#naverproducts-%ED%8C%8C%EB%9D%BC%EB%AF%B8%ED%84%B0) |\n\n### [결제응답 파라미터](https://developers.portone.io/docs/ko/sdk/javascript-sdk/payrt?v=v1)\n\n| 인터페이스 이름 | 설명 |\n| ----------- | --- |\n| `RequestPayResponse` | 결제 결과의 정보를 담고 있는 객체로, `request_pay` 메소드에 지정되는 콜백 함수의 인자로, `RequestPayAdditionalResponse`에서 확장됨 |\n| `RequestPayAdditionalResponse` | `request_pay` 메소드의 콜백을 위한 추가 속성 |\n| `RequestPayResponseCallback` | `request_pay` 메소드의 함수 타입 리터럴 |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjunhoyeo%2Fiamport-typings","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjunhoyeo%2Fiamport-typings","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjunhoyeo%2Fiamport-typings/lists"}