Files
discourse-subscriptions/assets/javascripts/discourse/models/subscription.js
T
Mark Reeves 803bba7938 FEATURE: Capture cardholder address fields for Stripe customer (#161)
- Adds the following fields to the subscription payment form:
  - Cardholder Name
  - Country
  - Postal Code
  - Address Line 1
  - City
  - State or Province
- Stripe recommends Cardholder Name & Country for verification; Cardholder Name, Country, and State/Province for US/Canada selections are required fields
- All fields are passed to Stripe for verification on submit
- Fields are also captured on the customer record in Stripe, under Billing Details
2023-05-05 13:20:35 -04:00

31 lines
686 B
JavaScript

import discourseComputed from "discourse-common/utils/decorators";
import { ajax } from "discourse/lib/ajax";
import EmberObject from "@ember/object";
const Subscription = EmberObject.extend({
@discourseComputed("status")
canceled(status) {
return status === "canceled";
},
save() {
const data = {
source: this.source,
plan: this.plan,
promo: this.promo,
cardholder_name: this.cardholderName,
cardholder_address: this.cardholderAddress,
};
return ajax("/s/create", { method: "post", data });
},
});
Subscription.reopenClass({
show(id) {
return ajax(`/s/${id}`, { method: "get" });
},
});
export default Subscription;