Unipaas
기초
Unipaas는 디지털 플랫폼 및 마켓플레이스(SaaS, 긱 이코노미, B2B/B2C 마켓플레이스)를 위한 종단간 임베디드 결제를 제공합니다. 판매자(서브 머천트)를 온보딩하고, 결제를 수락하며, 계정(잔액)을 관리하고, 자금을 지급합니다. 또한 자금 흐름을 제어하고 PSD2/PCI 규정을 준수합니다.
샌드박스 키를 받으세요. https://portal.unipaas.com/signup에서 무료 테스트 계정을 만드세요. 테스트 계정은 무제한이며 항상 사용 가능합니다. 포털의 개발자/키 섹션에서 비공개 키(Private Key) 를 찾을 수 있습니다. 샌드박스와 라이브 자격 증명은 완전히 분리되어 있으며 데이터를 공유하지 않습니다.
기준 URL.
- 샌드박스:
https://sandbox.unipaas.com/platform - 프로덕션(라이브):
https://api.unipaas.com/platform
두 가지 인증 모드(자세한 내용은 references/auth.md 참조).
- 서버 간 통신: API 호출 시
Authorization: Bearer {{PRIVATE_KEY}}헤더로 비공개 키를 직접 전송합니다(체크아웃 생성, 결제 수락, 계정, 지급, 온보딩). 비공개 키는 반드시 서버 측에 보관해야 합니다. - 2단계
/authorize흐름(클라이언트 측 플랫폼 임베드용): 서버가scopes및 (일반적으로)vendorId와 함께/authorize에 비공개 키를POST하면 임시accessToken을 받습니다. 클라이언트는 이 액세스 토큰을 사용하며 비공개 키는 절대 사용하지 않습니다.
멱등성(Idempotency). 재시도 시 중복 실행을 방지하려면 POST 요청에 requestId: <id> 헤더를 추가하십시오. 동일한 requestId를 여러 번 적용하더라도 하나의 결과만 생성됩니다. 요청 ID는 24시간 동안 유효합니다.
의사 결정 맵
네 가지 제품, 세 가지 통합 수준. 개발 역량 및 PCI 상태에 맞는 수준을 선택하십시오.
| 제품 | 노코드 | 낮은 노력 | 중간 노력 |
|---|---|---|---|
| 온보딩 | 호스팅 온보딩 링크 | 임베디드 UI (unipaas.components) | 온보딩 API |
| 결제 수락 | 결제 링크 (포털) | 체크아웃 페이지 / 웹 SDK | 결제 수락 API (서버 간) |
| 계정 관리 | 포털 보기 | 계정/잔액 컴포넌트 | 계정 API |
| 자금 지급 | 포털을 통한 수동/예정 지급 | 지급 양식 / 계정 컴포넌트 | 지급 API |
지침:
- 코드 없이? 결제 링크, 호스팅 온보딩 링크, 포털 지급을 사용하십시오.
- 나만의 UI를 원하지만 낮은 노력 + 간소화된 PCI를 원한다면? 체크아웃 페이지(리디렉션), 웹 SDK 보안 필드 또는 구매자 웹 임베드를 사용하십시오. 온보딩/잔액/포털에는 플랫폼 임베드를 사용하십시오.
- 완전한 제어 / 화이트 라벨 / 네이티브 앱을 원한다면? API를 사용하십시오. 결제 수락 API(원시 카드 데이터)는 PCI SAQ D가 필요합니다.
참고: vendorId 없이 전송된 트랜잭션은 플랫폼 계정에 기록됩니다.
클라이언트 측 체크아웃 경로
전체 단계는 references/web-sdk.md를 참조하십시오. 두 가지 구매자 결제 경로가 있으며, 둘 다 서버 측 POST /pay-ins/checkout에서 반환된 sessionToken 으로 인증됩니다. /authorize 액세스 토큰이 아닙니다.
- 보안 필드 SDK —
https://cdn.unipaas.com/unipaas.sdk.js를 로드합니다(Unipaas전역 객체 노출). 나만의 카드 양식을 만든 다음new Unipaas().initTokenize(sessionToken, fields, options)를 실행합니다. 보안 필드는 이 번들의 기능이며 별도 패키지가 아닙니다. - 구매자 웹 임베드 —
https://cdn.unipaas.com/embedded-ui.js를 로드한 다음unipaas.buyerComponents(sessionToken, config)및.create("checkout"|"card"|"digitalWallet").mount("#id")를 실행합니다.
인증 경계 (중요):
- 구매자 결제(보안 필드 및 구매자 웹 임베드) →
POST /pay-ins/checkout의sessionToken. - 플랫폼 임베드(
unipaas.components: 잔액, 송장, 온보딩, payPortal, 알림) → scopes 및 vendorId가 포함된/authorize액세스 토큰. 구매자 체크아웃은/authorize액세스 토큰을 사용하지 않습니다.
클라이언트 측 인증 후에는 GET /pay-ins/{authorizationId}로 서버 측에서 확인하십시오. 상태가 CAPTURED여야 성공입니다.
참조
- references/auth.md —
/authorize흐름, 범위, 토큰 수명 주기, 멱등성. - references/accept-payments.md — 결제 수락 제품, 세 가지 계층, 체크아웃 페이지, 결제 생성, 토큰화, 웹훅.
- references/web-sdk.md —
sessionToken으로 제공되는 두 가지 클라이언트 측 구매자 결제 경로. - references/security.md — 키 처리, 서버 측에 유지해야 할 사항, PCI 범위.