/// <summary>
        /// Sets the additional data for PayPing Gateway.
        /// </summary>
        public static IInvoiceBuilder SetPayPingData(this IInvoiceBuilder builder, PayPingRequest payPingRequest)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }
            if (payPingRequest == null)
            {
                throw new ArgumentNullException(nameof(payPingRequest));
            }

            builder.AddOrUpdateAdditionalData(PayPingRequestKey, payPingRequest);

            return(builder);
        }
        /// <summary>
        /// Sets the additional data for PayPing Gateway.
        /// </summary>
        public static IInvoiceBuilder SetPayPingData(this IInvoiceBuilder builder, Action <PayPingRequest> configurePayPing)
        {
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder));
            }
            if (configurePayPing == null)
            {
                throw new ArgumentNullException(nameof(configurePayPing));
            }

            var payPingRequest = new PayPingRequest();

            configurePayPing(payPingRequest);

            return(SetPayPingData(builder, payPingRequest));
        }