# ProCourse Memberships 💸

**URL:** https://meta.discourse.org/t/procourse-memberships/57558
**Category:** Plugin
**Tags:** broken
**Created:** [2월 17, 2017, 5:14오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558 "2017-02-17T17:14:34Z")
**Posts on this page:** 20
**Page:** 6

<div class="post-metadata">

### Author: ![Lynn](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lynn/32/139637_2.png) [@Lynn](https://meta.discourse.org/u/Lynn)
#### Post date: [8월 14, 2019, 3:29오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/103 "2019-08-14T15:29:47Z")

</div>

@Steven Thanks so much for this response, it’s very helpful.

Looks like custom fields solves most of my issue, I use the teaser plug-in, and come up with a working solution for membership types based on what the plug-in allows.

I looked at the table (Google translate for the win!) and it looks like we can have multiple membership levels of different costs through ProCourse, correct? If so, I can just create an add-on membership, that provides the exact same access but at a lower cost. We’re a small enough group that we can work with that as a solution and have someone manually make sure there is a “master” membership for these users.

---

<div class="post-metadata">

### Author: ![Steven](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/steven/32/187890_2.png) [@Steven](https://meta.discourse.org/u/Steven)
#### Post date: [8월 14, 2019, 7:04오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/104 "2019-08-14T19:04:45Z")

</div>

> [@Lynn](#):
>
> and it looks like we can have multiple membership levels of different costs through ProCourse, correct?

Exactly, each cost will have its own membership page, that’s where the static page is the most helpful and the table was the best solution in my case.

---

<div class="post-metadata">

### Author: ![blueve.in](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blueve.in/32/156131_2.png) [@blueve.in](https://meta.discourse.org/u/blueve.in)
#### Post date: [9월 18, 2019, 9:01오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/105 "2019-09-18T21:01:16Z")

</div>

Error: `VM193:1 POST https://sandbox.example.com/memberships/checkout/submit-payment 500`

Everything is configed to be live. Any ideas?

---

<div class="post-metadata">

### Author: ![blueve.in](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/blueve.in/32/156131_2.png) [@blueve.in](https://meta.discourse.org/u/blueve.in)
#### Post date: [9월 22, 2019, 11:57오전 UTC](https://meta.discourse.org/t/procourse-memberships/57558/106 "2019-09-22T11:57:55Z")

</div>

This is the actual debug log from Discourse.

> <https://pastebin.com/n3pabZVS>

---

<div class="post-metadata">

### Author: ![christian\_01](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/christian_01/32/162392_2.png) [@christian\_01](https://meta.discourse.org/u/christian_01)
#### Post date: [10월 8, 2019, 12:53오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/107 "2019-10-08T12:53:16Z")

</div>

월간 구독으로 플러그인을 내 사이트에 성공적으로 실행하고 있습니다.

하지만, 사용자에게 월간 액세스를 제공하는 대신 단일 주제/게시물을 작성할 때 비용을 부과할 수 있는 옵션이 있나요?

---

<div class="post-metadata">

### Author: ![rmccown](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rmccown/32/155375_2.png) [@rmccown](https://meta.discourse.org/u/rmccown)
#### Post date: [10월 31, 2019, 1:26오전 UTC](https://meta.discourse.org/t/procourse-memberships/57558/108 "2019-10-31T01:26:35Z")

</div>

이것을 설정하는 중인데, 한 가지 질문이 있습니다. “Bronze” 그룹에 12개월짜리 멤버십이 설정되어 있다면, 12개월이 끝난 후 해당 그룹의 멤버십이 제거됩니까? 이 일이 발생했거나 곧 발생한다는 경고가 사용자에게 표시됩니까?

---

<div class="post-metadata">

### Author: ![madbaker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/madbaker/32/147564_2.png) [@madbaker](https://meta.discourse.org/u/madbaker)
#### Post date: [11월 7, 2019, 6:09오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/109 "2019-11-07T18:09:58Z")

</div>

안녕하세요,

이 내용을 몇 번 읽으면서 데모 사이트도 다시 확인해 보았습니다. 가입/멤버십 플로우에 대해 제가 혼란스러워했던 부분을 파악한 것 같습니다.

제가 해야 할 것으로 생각하는 것은 다음과 같습니다:

참고: 제 사이트는 100% 유료이며 무료 티어는 없습니다.

1. Discourse 외부에 신청서가 포함된 정적 세일즈 페이지가 있습니다. 신청이 승인되면(수동 처리 과정), Discourse 내에서 가입 초대장을 보내게 됩니다.

2. 신규 멤버가 가입하여 Discourse에서 새 계정을 생성합니다.

3. 신규 멤버가 Discourse에 로그인하면… 빈 포럼이 보이지만, '멤버십 생성’에 관한 주제 하나만 있습니다. [_여기서 프로 코스 정적 페이지가 활용될 수 있고, 대신 결제 옵션이 포함된 정적 페이지를 만들 수도 있겠죠?]_

4. 해당 주제 [_또는 정적 페이지_]에는 두 가지 옵션이 있습니다: 월 정기 결제와 연 정기 결제. 각 링크나 버튼은 Procourse 플러그인 내에서 만든 멤버십 페이지로 이동합니다.

5. 신규 멤버가 결제를 완료하면 전체 포럼에 접근할 수 있는 Member 그룹에 추가됩니다.

지금 제 방향이 맞는 것 같습니다. 하지만 3번과 4번은 저에게 다소 의문입니다. 더 쉽고 명백한 경로가 있는 걸 놓치고 있는 건가요?

P.S. - 결제 페이지가 신규 멤버가 계정을 만들기 전에 먼저 나와야 한다고 생각했습니다. 먼저 계정을 만들어야 한다는 점이 제게 큰 인지적 장벽이었지만, 그 이유를 이해합니다. 아마도. 🙂

---

<div class="post-metadata">

### Author: ![justin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/justin/32/157614_2.png) [@justin](https://meta.discourse.org/u/justin)
#### Post date: [11월 7, 2019, 8:07오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/110 "2019-11-07T20:07:59Z")

</div>

> [@madbaker](#):
>
> Discourse 외부에 정적인 판매 페이지와 신청서가 있습니다. 신청이 승인되면(수동 프로세스), Discourse 내에서 가입 초대장을 보내겠습니다.

> [@madbaker](#):
>
> 새 멤버가 Discourse에 로그인하면… '멤버십 생성’에 대한 하나의 주제만 있는 빈 포럼이 보입니다. [_여기에서 프로 코스 정적 페이지가 활용될 수 있고, 결제 옵션이 있는 정적 페이지를 사용할 수 있지 않을까요?_]

사용자로 하여금 가입하고, 승인을 받고, 빈 포럼에 들어간 다음, 콘텐츠에 대해 결제하도록 만드는 것은 사용자 기반에서 사용성 문제를 일으킬 것입니다.

Discourse를 잠가 두되, SSO에는 [WP Discourse](https://github.com/discourse/wp-discourse)를 사용하고 커뮤니티 접근 권한을 제한하기에는 Paid Memberships Pro를 사용하는 것이 더 나은 방법일 수 있습니다. 이렇게 하면 사용자에게 모든 과정이 훨씬 원활하게 진행될 것입니다.

참고로 다음을 살펴보실 수 있습니다:

> [@Manage group membership in Discourse with WP Discourse SSO](https://meta.discourse.org/t/managing-discourse-group-membership-with-wp-discourse/74724):
>
> [WP Discourse](https://github.com/discourse/wp-discourse) functions The [WP Discourse](https://github.com/discourse/wp-discourse) plugin has a couple of functions that can be used to associate WordPress users with Discourse groups. These functions are only enabled on sites that are using WordPress as the SSO provider for Discourse. add\_user\_to\_discourse\_group( $user\_id, $group\_names ) [View Code](https://github.com/discourse/wp-discourse/blob/main/lib/utilities.php#L278-L301) remove\_user\_from\_discourse\_group( $user\_id, $group\_names ) [View Code](https://github.com/discourse/wp-discourse/blob/main/lib/utilities.php#L303-L326) Each of these functions take the same two parameters: $user\_id: the WordPress user’s id $group\_names: a comma separat…

---

<div class="post-metadata">

### Author: ![madbaker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/madbaker/32/147564_2.png) [@madbaker](https://meta.discourse.org/u/madbaker)
#### Post date: [11월 7, 2019, 8:32오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/111 "2019-11-07T20:32:14Z")

</div>

감사합니다 @justin, 확인해 볼게요. 포럼이 비어 있지는 않아요 (몇 달 전부터 작은 그룹을 만들어 두고 있었거든요) 하지만 말씀하신 뜻을 이해했어요. 그 관점을 정말 감사히 생각합니다.

---

<div class="post-metadata">

### Author: ![joebuhlig](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/joebuhlig/32/193054_2.png) [@joebuhlig](https://meta.discourse.org/u/joebuhlig)
#### Post date: [11월 7, 2019, 8:39오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/112 "2019-11-07T20:39:12Z")

</div>

> [@madbaker](#):
>
> Discourse 외부에 정적인 판매 페이지(신청서 포함)가 있습니다. 신청이 승인되면(수동 처리 과정), Discourse 내부에서 가입 초대장을 보내게 됩니다.

왜 이런 방식을 선택하는지 여쭤봐도 될까요? 신청 과정이 거절될 경우가 있을까요?

이 부분을 건너뛸 수 있다면 대부분의 문제를 해결할 수 있을 것 같아서요.

---

<div class="post-metadata">

### Author: ![madbaker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/madbaker/32/147564_2.png) [@madbaker](https://meta.discourse.org/u/madbaker)
#### Post date: [11월 7, 2019, 8:48오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/113 "2019-11-07T20:48:48Z")

</div>

조, 안녕하세요.

이 신청서의 목적은 지원자의 배경과 커뮤니티에서 기대하는 바에 대한 정보를 수집하는 것입니다. 저는 다른 그룹에도 소속되어 있는데, 그곳에서는 회원들이 가입 후 얼마 지나지 않아 탈퇴하는 경우가 있었습니다. 그 이유는 그 그룹이 그들에게 적합하지 않았기 때문이었죠.

대신, 회원 가입 페이지로 바로 연결하고 가입 후 온보딩 과정으로 동일한 질문을 할 수도 있습니다. 이 경우라면 사람들이 가입하기 전에 기대할 수 있는 것에 대해 충분히 설명해 왔기 때문에 이 방식이 잘 작동할 것입니다.

한 가지 질문이 있습니다. 이 방식을 채택할 경우, 프로코스(Procourse) 회원 페이지(구독 및 결제가 이루어지는 곳)로 바로 연결한 다음 디스코르스(Discourse) 계정을 생성할 수 있나요? 아니면 여전히 먼저 계정을 생성한 후 결제 플랜을 선택해야 하나요?

---

<div class="post-metadata">

### Author: ![joebuhlig](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/joebuhlig/32/193054_2.png) [@joebuhlig](https://meta.discourse.org/u/joebuhlig)
#### Post date: [11월 7, 2019, 9:23오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/114 "2019-11-07T21:23:13Z")

</div>

이것을 [Custom Wizard 플러그인](https://meta.discourse.org/t/custom-wizard-plugin/73345?u=joebuhlig)과 함께 사용하는 것을 추천합니다. 이 플러그인을 사용하면 가입 시 원하는 모든 정보를 수집할 수 있으며, 폼이 제출되면 사용자를 멤버십 결제 페이지로 이동시킬 수 있습니다. 이렇게 하면 모든 과정을 하나의 흐름으로 처리할 수 있습니다.

개인적으로는 Paid Memberships Pro(PMPro) 방식보다는 이 방식을 선호합니다. PMPro는 그룹 멤버십을 양방향으로 동기화하기 시작할 때까지는 훌륭하게 작동합니다. 동기화 자체는 가능하지만, 제 경험상 설정이 쉽지 않고 항상 안정적이지는 않습니다.

---

<div class="post-metadata">

### Author: ![justin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/justin/32/157614_2.png) [@justin](https://meta.discourse.org/u/justin)
#### Post date: [11월 7, 2019, 9:33오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/115 "2019-11-07T21:33:48Z")

</div>

> [@joebuhlig](#):
>
> 개인적으로는 Paid Memberships Pro 방식보다는 이 방식을 선호합니다. PMPro는 그룹 멤버십을 양방향으로 동기화하기 시작할 때까지는 훌륭하게 작동할 수 있습니다. 물론 동기화 자체는 가능하지만, 제 경험상 설정이 그리 쉽지는 않고 항상 안정적이지는 않습니다.

제가 제 사이트에서 PMP를 그룹 동기화와 함께 사용할 때는 문제가 없었지만, 작동시키기 위해서는 어느 정도의 기술적 지식이 필요하다는 점은 사실입니다. 개인적인 선호도를 떠나서, 두 가지 모두 고유한 장점과 단점이 있는 확실한 옵션입니다. @madbaker, 가능한 결정에 조금 더 가까워지셨기를 바랍니다!

---

<div class="post-metadata">

### Author: ![madbaker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/madbaker/32/147564_2.png) [@madbaker](https://meta.discourse.org/u/madbaker)
#### Post date: [11월 7, 2019, 9:39오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/116 "2019-11-07T21:39:14Z")

</div>

@joebuhlig @justin 정말 감사합니다. 이제 더 명확한 방향이 보입니다.

---

<div class="post-metadata">

### Author: ![madbaker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/madbaker/32/147564_2.png) [@madbaker](https://meta.discourse.org/u/madbaker)
#### Post date: [11월 19, 2019, 11:17오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/117 "2019-11-19T23:17:25Z")

</div>

@joebuhlig @justin. 안녕하세요. 이 문제에 대해 다시 한번 말씀드리고자 합니다…

가입 시점에 Custom Wizard 플러그인이 잘 작동하도록 설정했습니다. 새 사용자가 정기 멤버십 옵션(월간 또는 연간)을 선택할 수 있는 정적 페이지를 호출합니다.

멤버십 플러그인에는 두 가지 등급이 있으며, 사용자는 정적 페이지를 통해 올바른 멤버십 페이지로 이동합니다. 훌륭하죠.

유일한 문제는 페이지의 Stripe 통합 부분이 계속 로딩만 돌고 있다는 점입니다.

- Procourse 커뮤니티 사이트의 Stripe 통합 문서를 샅샅이 살펴봤습니다. 설정이 올바르게 되어 있는 것으로 보이지만, 분명 어딘가 잘못된 것 같습니다. 🙂
- 플러그인과 Stripe의 통화(모두 USD), API 키, 웹훅 시크릿을 다시 확인했습니다. 모두 ‘test’ 모드입니다.
- 구독 모델이 원인이 아닐까 해서 일시불 결제 등급을 만들어 보았지만(변화 없음)
- Stripe 로그를 확인했는데 호출 시도가 기록되어 있지 않습니다(로그에 아무것도 없음)

**Discourse 내부에서 어떤 호출이 시도되고 있는지 확인할 수 있는 로그가 있을까요?**

마켓플레이스에 도움을 요청하는 것도 괜찮지만, 플러그인이 무엇을 하려는 것인지만 알 수 있다면 해결에 도움이 될 것 같습니다. 가입 플로우를 기본 사항으로 줄여봤지만 해결책은 찾지 못했습니다. 문서에 따르면 이제 단순해야 하지만요. (명언이 되겠네요!)

---

<div class="post-metadata">

### Author: ![madbaker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/madbaker/32/147564_2.png) [@madbaker](https://meta.discourse.org/u/madbaker)
#### Post date: [11월 21, 2019, 5:18오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/118 "2019-11-21T17:18:42Z")

</div>

조급함에 몇 가지 추가적인 시도도 해보았습니다:

- 앱을 다시 빌드하고 discourse-doctor를 실행하여 오류가 없는지 확인했습니다.
- **테스트 스트라이프 키** 를 사용하여 procourse-membership 플러그인에서 멤버십 레벨을 삭제하고 다시 만들었습니다.

레벨을 활성화하면 Stripe에서 새로운 상품 플랜(테스트 버전)이 보입니다. 드디어!  
하지만 레벨의 결제 페이지로 가면 페이지는 렌더링되지만 신용카드 입력 필드가 로드되지 않습니다. 스피너가 영원히 계속됩니다.

Discourse 오류 로그와 Stripe 오류 로그를 확인했지만 아무것도 나오지 않았습니다. 두 로그 모두에 항목이 없습니다.

그래서 ‘테스트 모드’ 문제일지도 모른다고 생각하여 다음과 같이 변경했습니다:

- 테스트 키/웹훅을 프로덕션 키/웹훅으로 교체했습니다.
- 플러그인 내에서 멤버십 레벨을 다시 만들고 활성화했습니다.
- 새로운 상품/플랜이 Stripe의 프로덕션 영역에 나타났습니다. 드디어 성공!

하지만 Discourse 결제 페이지로 가면 동일한 문제가 발생합니다. 페이지는 렌더링되지만 신용카드 입력 필드가 로드되지 않습니다. 무한 스피너가 계속됩니다.

Stripe 로그나 Discourse 오류 로그에 활동이 없습니다.

**=== 드디어 찾았다! ===**

아, 결국 원인을 찾았습니다.

결제가 작동하려면 필요한 스크립트 - `js.stripe.com/v3` - 가 보안 오류로 차단되고 있었습니다. 해당 스크립트를 화이트리스트에 추가하니 빠르고 훌륭하게 작동합니다.

꽤 중요한 세부 사항이었네요. 앱 로그를 확인하고 있었지만, 4일 전이라면 F12를 눌러 콘솔을 빠르게 확인해봤으면 큰 도움이 되었을 텐데. 🤕

---

<div class="post-metadata">

### Author: ![christian\_01](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/christian_01/32/162392_2.png) [@christian\_01](https://meta.discourse.org/u/christian_01)
#### Post date: [12월 1, 2019, 5:21오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/119 "2019-12-01T17:21:02Z")

</div>

예를 들어, 30일 멤버십이 만료되면 어떻게 되나요? 구독자가 무엇을 확인하게 되나요? 다시 구독하려면 어떻게 해야 하나요?

또한, 구독을 취소하려면 어떻게 해야 하나요?

---

<div class="post-metadata">

### Author: ![Dibyendu\_Saha](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/dibyendu_saha/32/165170_2.png) [@Dibyendu\_Saha](https://meta.discourse.org/u/Dibyendu_Saha)
#### Post date: [1월 18, 2020, 7:41오전 UTC](https://meta.discourse.org/t/procourse-memberships/57558/120 "2020-01-18T07:41:25Z")

</div>

hi @john12 해답을 찾았나요? 저도 같은 문제를 겪고 있어요

---

<div class="post-metadata">

### Author: ![christian\_01](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/christian_01/32/162392_2.png) [@christian\_01](https://meta.discourse.org/u/christian_01)
#### Post date: [1월 21, 2020, 2:27오후 UTC](https://meta.discourse.org/t/procourse-memberships/57558/121 "2020-01-21T14:27:01Z")

</div>

저도 그 부분이 궁금합니다.

그리고 사용자가 가입(결제)한 뒤 해지하면 어떻게 되나요? 구독이 즉시 종료되나요, 아니면 결제한 달이 끝난 후에 종료되나요?

---

<div class="post-metadata">

### Author: ![christian\_01](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/christian_01/32/162392_2.png) [@christian\_01](https://meta.discourse.org/u/christian_01)
#### Post date: [4월 8, 2020, 11:01오전 UTC](https://meta.discourse.org/t/procourse-memberships/57558/122 "2020-04-08T11:01:43Z")

</div>

결국 Memberful로 전환했습니다. 훨씬 더 좋습니다.

> **[Memberful | Build a membership that’s truly yours](https://memberful.com/)**
>
> Sell subscriptions, share content, and connect with your audience, all on your own website or app.

[이전 페이지](https://meta.discourse.org/t/procourse-memberships/57558.md?page=5)

[다음 페이지](https://meta.discourse.org/t/procourse-memberships/57558.md?page=7)
