billing platform - feature toggle - express account
MODIFY
src/integration/billing/stripe/StripeBillingIntegration.ts
src/integration/billing/stripe/StripeBillingIntegration.ts
@@ -1722,19 +1722,22 @@ export default class StripeBillingIntegration extends BillingIntegration {
let stripeAccount: Stripe.Account;
// Create the account
try {
+ if (FeatureToggles.isFeatureActive(Feature.BILLING_PLATFORM_USE_EXPRESS_ACCOUNT)) {
+ stripeAccount = await this.stripe.accounts.create({
+ // Express accounts have access to a simplified dashboard and support separate charges and transfers
+ // More info at: https://stripe.com/docs/connect/accounts
+ type: 'express',
+ capabilities: {
+ card_payments: { requested: true },
+ transfers: { requested: true }
+ }
+ });
+ } else {
+ // According to our STRIPE contact transfers are not supported when using sub-accounts of type 'standard''
stripeAccount = await this.stripe.accounts.create({
- // TBC - according to our STRIPE contact 'express' should be used as a subaccount type
type: 'standard',
});
- // stripeAccount = await this.stripe.accounts.create({
- // // Express accounts have access to a simplified dashboard and support separate charges and transfers
- // // More info at: https://stripe.com/docs/connect/accounts
- // type: 'express',
- // capabilities: {
- // card_payments: { requested: true },
- // transfers: { requested: true }
- // }
- // });
+ }
} catch (e) {
throw new BackendError({
message: 'Unexpected situation - unable to create account',

MODIFY
src/utils/FeatureToggles.ts
src/utils/FeatureToggles.ts
export enum Feature {
BILLING_PREVENT_CUSTOMER_DELETION,
BILLING_SHOW_PRICING_DETAIL,
+ BILLING_PLATFORM_USE_EXPRESS_ACCOUNT,
}
export default class FeatureToggles {
// Comment out the features that you want to switch OFF
private static activeFeatures: Feature[] = [
Feature.BILLING_PREVENT_CUSTOMER_DELETION,
+ Feature.BILLING_PLATFORM_USE_EXPRESS_ACCOUNT,
];
// Check whether the feature is active or not!

billing platform - feature toggle - express account