내가 셀프 호스팅 PayPal 및 Stripe 체크아웃을 만든 방법 (그리고 중개자를 피한 이유)

발행: (2025년 12월 29일 오전 02:43 GMT+9)
6 min read
원문: Dev.to

Source: Dev.to

결제 받는 일은 쉬워야 합니다.

하지만 새로운 사이드 프로젝트나 SaaS를 시작할 때마다 나는 다음 중 하나를 고르는 데 막혔습니다:

  • 오래된 문서에서 복사‑붙여넣기한 PayPal 버튼
  • 완전히 제어할 수 없는 Stripe Checkout 흐름과 씨름
  • 수수료, 락인, 혹은 필요 없는 추상화를 추가하는 호스팅 도구 사용

나는 더 간단한 것이 필요했습니다:

👉 작은 자체‑호스팅 레이어 하나로 스니펫을 실제 PayPal 또는 Stripe 결제 버튼으로 변환

중개인 없음. 플랫폼 락인 없음. 내 키, 내 서버, 내 자금.

그래서 직접 만들었습니다.

“just use Stripe / PayPal”의 문제

Don’t get me wrong — Stripe와 PayPal은 훌륭한 결제 프로세서입니다.
The problem isn’t them. It’s everything around them.

Common issues I kept hitting:

  • 간단한 결제에 비해 과도한 보일러플레이트
  • PayPal과 Stripe 각각 다른 흐름

Hosted tools that:

  • 수수료를 차감한다
  • 거래 데이터를 저장한다
  • 가격이 바뀔 때 깨진다

UI와 동작에 대한 제어가 거의 없다.

많은 프로젝트에서 저는 단지 다음만 원했습니다:

  • 버튼 하나
  • 가격
  • 콜백

내가 원했던 것

내 요구 사항은 간단했습니다:

  • ✅ 자체 호스팅
  • ✅ 내 PayPal 및 Stripe API 키와 함께 작동
  • ✅ 거래 수수료 없음
  • ✅ 간단한 임베드 스니펫
  • ✅ 호스팅을 원하지 않는 사용자를 위한 선택적 클라우드 버전

그것이 결국 FreshLimePay가 되게 만든 아이디어였습니다.

작동 방식 (고수준)

  1. PayPal 또는 Stripe 키를 연결합니다.
  2. 제품 또는 금액을 정의합니다.
  3. 시스템이 작은 스니펫을 생성합니다.
  4. 해당 스니펫이 실제 결제 버튼을 렌더링합니다.

결제는 직접 귀하의 계정으로 들어갑니다 — 돈을 중계하지 않고, 자금을 보유하지 않으며, “플랫폼 지갑”도 없습니다.

예시: 스니펫에서 버튼으로

목표는 다음과 같은 형태였습니다:

PayPal

PayPal 통합

Stripe

Stripe 통합

그리고 즉시 작동하는 결제 버튼을 얻을 수 있습니다. 끝입니다.

자체 호스팅 vs 클라우드 (왜 두 가지를 모두 지원하는가)

이 작업을 하면서 중요한 사실을 깨달았습니다: 모든 사람이 자체 호스팅을 원하는 것은 아니라는 점입니다. 그래서 FreshLimePay는 두 가지 모드를 제공하게 되었습니다:

🔒 자체 호스팅

  • 자체 서버에 설치
  • 완전한 제어권
  • 일회성 또는 연간 라이선스
  • 개발자, 에이전시, SaaS 창업자에게 최적

☁️ 클라우드

  • 설치 불필요
  • 즉시 설정 가능
  • 구독 모델
  • 비기술 사용자 또는 빠른 출시를 원하는 경우에 최적

자체 호스팅이 여전히 중요한 이유 (우리 중 일부에게는)

  • 소유권
  • 예측 가능한 비용
  • 의존성 감소
  • 다른 곳에서 가격 페이지가 바뀔 때 더 편안히 잠을 잘 수 있음 😅

개발자라면, 그 느낌을 잘 알 겁니다.

직접 만들고 싶지 않다면

이것을 FreshLimePay에 패키징해서 다른 사람들이 같은 것을 반복해서 다시 만들 필요가 없게 했습니다.

  • Website:
  • Cloud app:

직접 만들고 싶다면 — 좋습니다. 만들고 싶지 않다면, 이것이 시간을 절약해 줄 수 있습니다.

최종 생각

이것은 Stripe나 PayPal을 대체하기 위한 것이 아닙니다. 특히 소규모 제품, MVP, 인디 프로젝트에서 더 쉽게 사용할 수 있도록 하는 것이 목적입니다.

관심이 있으시면, 질문에 답변하거나 댓글에 구현 세부 사항을 공유해 드리겠습니다.

읽어 주셔서 감사합니다 👋

Back to Blog

관련 글

더 보기 »