Ruby on Rails
레일의 지불 기능
수색…
소개
이 문서에서는 Ruby on Rails를 사용하여 다양한 지불 방법을 구현하는 방법을 전체 예제와 함께 소개합니다.
이 예에서는 Stripe과 Braintree라는 두 가지 유명한 지불 플랫폼을 다룰 것입니다.
비고
Stripe과 통합하는 방법
우리의 Gemfile
Stripe gem을 추가하십시오.
gem 'stripe'
initializers/stripe.rb
파일을 추가하십시오. 이 파일에는 스트라이프 계정 연결에 필요한 키가 들어 있습니다.
require 'require_all'
Rails.configuration.stripe = {
:publishable_key => ENV['STRIPE_PUBLISHABLE_KEY'],
:secret_key => ENV['STRIPE_SECRET_KEY']
}
Stripe.api_key = Rails.configuration.stripe[:secret_key]
스트라이프에 새로운 고객을 만드는 방법
Stripe::Customer.create({email: email, source: payment_token})
이 코드는 주어진 이메일 주소와 소스로 Stripe에 새로운 고객을 만듭니다.
payment_token
은 신용 카드 또는 은행 계좌와 같은 결제 수단을 포함하는 클라이언트 측에서 제공된 토큰입니다. 자세한 정보 : Stripe.js 클라이언트 측
스트라이프에서 계획 가져 오는 방법
Stripe::Plan.retrieve(stripe_plan_id)
이 코드는 ID로 Stripe에서 계획을 검색합니다.
구독을 만드는 방법
고객과 계획이있을 때 Stripe에서 새 구독을 만들 수 있습니다.
Stripe::Subscription.create(customer: customer.id, plan: plan.id)
그러면 새로운 구독이 생성되어 사용자에게 비용이 청구됩니다. 사용자를 계획에 등록 할 때 Stripe에서 실제로 일어나는 일을 아는 것이 중요합니다. 자세한 내용은 Stripe Subscription lifecycle을 참조하십시오 .
단일 결제로 사용자에게 청구하는 방법
때로는 사용자에게 단 한번의 요금을 부과하기도합니다. 그 이유는 다음 단계를 수행하기 위해서입니다.
Stripe::Charge.create(amount: amount, customer: customer, currency: currency)
이 경우 Google은 사용자에게 한 번만 청구합니다.
일반적인 오류 :
금액은 정수 형식으로 보내야합니다. 즉, 2000 년은 20 단위 통화입니다. 이 예제를 확인하십시오.
두 통화로 사용자에게 비용을 청구 할 수 없습니다. 과거에 사용자가 EUR로 청구 된 경우 사용자에게 USD로 청구 할 수 없습니다.
출처 (결제 수단)가없는 사용자는 요금을 청구 할 수 없습니다.