# File generated from our OpenAPI spec # frozen_string_literal: true module Stripe # A payment method domain represents a web domain that you have registered with Stripe. # Stripe Elements use registered payment method domains to control where certain payment methods are shown. # # Related guides: [Payment method domains](https://stripe.com/docs/payments/payment-methods/pmd-registration). class PaymentMethodDomain < APIResource extend Stripe::APIOperations::Create extend Stripe::APIOperations::List include Stripe::APIOperations::Save OBJECT_NAME = "payment_method_domain" # Some payment methods such as Apple Pay require additional steps to verify a domain. If the requirements weren't satisfied when the domain was created, the payment method will be inactive on the domain. # The payment method doesn't appear in Elements for this domain until it is active. # # To activate a payment method on an existing payment method domain, complete the required validation steps specific to the payment method, and then validate the payment method domain with this endpoint. # # Related guides: [Payment method domains](https://stripe.com/docs/payments/payment-methods/pmd-registration). def validate(params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/payment_method_domains/%s/validate", { payment_method_domain: CGI.escape(self["id"]) }), params: params, opts: opts ) end # Some payment methods such as Apple Pay require additional steps to verify a domain. If the requirements weren't satisfied when the domain was created, the payment method will be inactive on the domain. # The payment method doesn't appear in Elements for this domain until it is active. # # To activate a payment method on an existing payment method domain, complete the required validation steps specific to the payment method, and then validate the payment method domain with this endpoint. # # Related guides: [Payment method domains](https://stripe.com/docs/payments/payment-methods/pmd-registration). def self.validate(payment_method_domain, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/payment_method_domains/%s/validate", { payment_method_domain: CGI.escape(payment_method_domain) }), params: params, opts: opts ) end end end