Skip to content

Application Approval Payment Controls

Admin application approval has two separate payment flags:

  • TryCharge controls whether any card payment should be charged during approval.
  • ChargeRegistrationFee controls whether the registration fee is included in that charge.

When TryCharge is false, no payment is charged and ChargeRegistrationFee is disabled. Debts may still be created. When TryCharge is true and ChargeRegistrationFee is false, membership and other chargeable amounts can still be charged, but the registration fee remains debt-only.

Approval writes a small payment decision summary into the ApplicationApproved action log. This includes TryCharge, ChargeRegistrationFee, RegistrationFeeAmount, RegistrationFeeChargeStatus, Currency, and a skip reason when the registration fee was not charged.

Elasticsearch contact indexing must write subscriptions.groupMembershipPriceType as the numeric enum value because existing contact_* index mappings store that field as long. Public API serialization can keep the normal enum property shape, but the System.Text.Json source used by Elasticsearch must emit the same JSON field as a number.