// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/ads/googleads/v2/errors/billing_setup_error.proto

package errors

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	_ "google.golang.org/genproto/googleapis/api/annotations"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

// Enum describing possible billing setup errors.
type BillingSetupErrorEnum_BillingSetupError int32

const (
	// Enum unspecified.
	BillingSetupErrorEnum_UNSPECIFIED BillingSetupErrorEnum_BillingSetupError = 0
	// The received error code is not known in this version.
	BillingSetupErrorEnum_UNKNOWN BillingSetupErrorEnum_BillingSetupError = 1
	// Cannot specify both an existing payments account and a new payments
	// account when setting up billing.
	BillingSetupErrorEnum_CANNOT_USE_EXISTING_AND_NEW_ACCOUNT BillingSetupErrorEnum_BillingSetupError = 2
	// Cannot cancel an approved billing setup whose start time has passed.
	BillingSetupErrorEnum_CANNOT_REMOVE_STARTED_BILLING_SETUP BillingSetupErrorEnum_BillingSetupError = 3
	// Cannot perform a Change of Bill-To (CBT) to the same payments account.
	BillingSetupErrorEnum_CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT BillingSetupErrorEnum_BillingSetupError = 4
	// Billing setups can only be used by customers with ENABLED or DRAFT
	// status.
	BillingSetupErrorEnum_BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS BillingSetupErrorEnum_BillingSetupError = 5
	// Billing setups must either include a correctly formatted existing
	// payments account id, or a non-empty new payments account name.
	BillingSetupErrorEnum_INVALID_PAYMENTS_ACCOUNT BillingSetupErrorEnum_BillingSetupError = 6
	// Only billable and third-party customers can create billing setups.
	BillingSetupErrorEnum_BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY BillingSetupErrorEnum_BillingSetupError = 7
	// Billing setup creations can only use NOW for start time type.
	BillingSetupErrorEnum_INVALID_START_TIME_TYPE BillingSetupErrorEnum_BillingSetupError = 8
	// Billing setups can only be created for a third-party customer if they do
	// not already have a setup.
	BillingSetupErrorEnum_THIRD_PARTY_ALREADY_HAS_BILLING BillingSetupErrorEnum_BillingSetupError = 9
	// Billing setups cannot be created if there is already a pending billing in
	// progress.
	BillingSetupErrorEnum_BILLING_SETUP_IN_PROGRESS BillingSetupErrorEnum_BillingSetupError = 10
	// Billing setups can only be created by customers who have permission to
	// setup billings. Users can contact a representative for help setting up
	// permissions.
	BillingSetupErrorEnum_NO_SIGNUP_PERMISSION BillingSetupErrorEnum_BillingSetupError = 11
	// Billing setups cannot be created if there is already a future-approved
	// billing.
	BillingSetupErrorEnum_CHANGE_OF_BILL_TO_IN_PROGRESS BillingSetupErrorEnum_BillingSetupError = 12
	// Requested payments profile not found.
	BillingSetupErrorEnum_PAYMENTS_PROFILE_NOT_FOUND BillingSetupErrorEnum_BillingSetupError = 13
	// Requested payments account not found.
	BillingSetupErrorEnum_PAYMENTS_ACCOUNT_NOT_FOUND BillingSetupErrorEnum_BillingSetupError = 14
	// Billing setup creation failed because the payments profile is ineligible.
	BillingSetupErrorEnum_PAYMENTS_PROFILE_INELIGIBLE BillingSetupErrorEnum_BillingSetupError = 15
	// Billing setup creation failed because the payments account is ineligible.
	BillingSetupErrorEnum_PAYMENTS_ACCOUNT_INELIGIBLE BillingSetupErrorEnum_BillingSetupError = 16
	// Billing setup creation failed because the payments profile needs internal
	// approval.
	BillingSetupErrorEnum_CUSTOMER_NEEDS_INTERNAL_APPROVAL BillingSetupErrorEnum_BillingSetupError = 17
)

var BillingSetupErrorEnum_BillingSetupError_name = map[int32]string{
	0:  "UNSPECIFIED",
	1:  "UNKNOWN",
	2:  "CANNOT_USE_EXISTING_AND_NEW_ACCOUNT",
	3:  "CANNOT_REMOVE_STARTED_BILLING_SETUP",
	4:  "CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT",
	5:  "BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS",
	6:  "INVALID_PAYMENTS_ACCOUNT",
	7:  "BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY",
	8:  "INVALID_START_TIME_TYPE",
	9:  "THIRD_PARTY_ALREADY_HAS_BILLING",
	10: "BILLING_SETUP_IN_PROGRESS",
	11: "NO_SIGNUP_PERMISSION",
	12: "CHANGE_OF_BILL_TO_IN_PROGRESS",
	13: "PAYMENTS_PROFILE_NOT_FOUND",
	14: "PAYMENTS_ACCOUNT_NOT_FOUND",
	15: "PAYMENTS_PROFILE_INELIGIBLE",
	16: "PAYMENTS_ACCOUNT_INELIGIBLE",
	17: "CUSTOMER_NEEDS_INTERNAL_APPROVAL",
}

var BillingSetupErrorEnum_BillingSetupError_value = map[string]int32{
	"UNSPECIFIED":                                       0,
	"UNKNOWN":                                           1,
	"CANNOT_USE_EXISTING_AND_NEW_ACCOUNT":               2,
	"CANNOT_REMOVE_STARTED_BILLING_SETUP":               3,
	"CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT":    4,
	"BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS":   5,
	"INVALID_PAYMENTS_ACCOUNT":                          6,
	"BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY": 7,
	"INVALID_START_TIME_TYPE":                           8,
	"THIRD_PARTY_ALREADY_HAS_BILLING":                   9,
	"BILLING_SETUP_IN_PROGRESS":                         10,
	"NO_SIGNUP_PERMISSION":                              11,
	"CHANGE_OF_BILL_TO_IN_PROGRESS":                     12,
	"PAYMENTS_PROFILE_NOT_FOUND":                        13,
	"PAYMENTS_ACCOUNT_NOT_FOUND":                        14,
	"PAYMENTS_PROFILE_INELIGIBLE":                       15,
	"PAYMENTS_ACCOUNT_INELIGIBLE":                       16,
	"CUSTOMER_NEEDS_INTERNAL_APPROVAL":                  17,
}

func (x BillingSetupErrorEnum_BillingSetupError) String() string {
	return proto.EnumName(BillingSetupErrorEnum_BillingSetupError_name, int32(x))
}

func (BillingSetupErrorEnum_BillingSetupError) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_d2705143fb75db4b, []int{0, 0}
}

// Container for enum describing possible billing setup errors.
type BillingSetupErrorEnum struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *BillingSetupErrorEnum) Reset()         { *m = BillingSetupErrorEnum{} }
func (m *BillingSetupErrorEnum) String() string { return proto.CompactTextString(m) }
func (*BillingSetupErrorEnum) ProtoMessage()    {}
func (*BillingSetupErrorEnum) Descriptor() ([]byte, []int) {
	return fileDescriptor_d2705143fb75db4b, []int{0}
}

func (m *BillingSetupErrorEnum) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_BillingSetupErrorEnum.Unmarshal(m, b)
}
func (m *BillingSetupErrorEnum) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_BillingSetupErrorEnum.Marshal(b, m, deterministic)
}
func (m *BillingSetupErrorEnum) XXX_Merge(src proto.Message) {
	xxx_messageInfo_BillingSetupErrorEnum.Merge(m, src)
}
func (m *BillingSetupErrorEnum) XXX_Size() int {
	return xxx_messageInfo_BillingSetupErrorEnum.Size(m)
}
func (m *BillingSetupErrorEnum) XXX_DiscardUnknown() {
	xxx_messageInfo_BillingSetupErrorEnum.DiscardUnknown(m)
}

var xxx_messageInfo_BillingSetupErrorEnum proto.InternalMessageInfo

func init() {
	proto.RegisterEnum("google.ads.googleads.v2.errors.BillingSetupErrorEnum_BillingSetupError", BillingSetupErrorEnum_BillingSetupError_name, BillingSetupErrorEnum_BillingSetupError_value)
	proto.RegisterType((*BillingSetupErrorEnum)(nil), "google.ads.googleads.v2.errors.BillingSetupErrorEnum")
}

func init() {
	proto.RegisterFile("google/ads/googleads/v2/errors/billing_setup_error.proto", fileDescriptor_d2705143fb75db4b)
}

var fileDescriptor_d2705143fb75db4b = []byte{
	// 592 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x93, 0xdd, 0x6e, 0xd3, 0x4c,
	0x10, 0x86, 0xbf, 0xa6, 0x5f, 0x5b, 0xd8, 0x02, 0xdd, 0xae, 0xf8, 0x29, 0xfd, 0x85, 0x14, 0x89,
	0x33, 0x5b, 0xa4, 0x42, 0x42, 0xe6, 0x68, 0x63, 0x4f, 0xdc, 0x15, 0xce, 0xae, 0xb5, 0xbb, 0x4e,
	0x09, 0x8a, 0xb4, 0x4a, 0x49, 0x64, 0x45, 0x4a, 0xed, 0x28, 0x4e, 0x7b, 0x0b, 0x5c, 0x07, 0x1c,
	0x72, 0x29, 0x5c, 0x0a, 0x67, 0xdc, 0x01, 0xb2, 0x9d, 0x58, 0x89, 0x22, 0x10, 0x47, 0x1e, 0x79,
	0xde, 0xf7, 0x99, 0x9d, 0xd1, 0x0c, 0x7a, 0x17, 0xa7, 0x69, 0x3c, 0x1e, 0xda, 0xfd, 0x41, 0x66,
	0x97, 0x61, 0x1e, 0xdd, 0x35, 0xec, 0xe1, 0x74, 0x9a, 0x4e, 0x33, 0xfb, 0x7a, 0x34, 0x1e, 0x8f,
	0x92, 0xd8, 0x64, 0xc3, 0xd9, 0xed, 0xc4, 0x14, 0x3f, 0xad, 0xc9, 0x34, 0x9d, 0xa5, 0xe4, 0xb4,
	0x94, 0x5b, 0xfd, 0x41, 0x66, 0x55, 0x4e, 0xeb, 0xae, 0x61, 0x95, 0xce, 0xc3, 0xe3, 0x05, 0x79,
	0x32, 0xb2, 0xfb, 0x49, 0x92, 0xce, 0xfa, 0xb3, 0x51, 0x9a, 0x64, 0xa5, 0xbb, 0xfe, 0x75, 0x0b,
	0x3d, 0x69, 0x96, 0x6c, 0x95, 0xa3, 0x21, 0x37, 0x41, 0x72, 0x7b, 0x53, 0xff, 0xb2, 0x85, 0xf6,
	0xd7, 0x32, 0x64, 0x0f, 0xed, 0x46, 0x5c, 0x85, 0xe0, 0xb2, 0x16, 0x03, 0x0f, 0xff, 0x47, 0x76,
	0xd1, 0x4e, 0xc4, 0x3f, 0x70, 0x71, 0xc5, 0xf1, 0x06, 0x79, 0x8d, 0xce, 0x5d, 0xca, 0xb9, 0xd0,
	0x26, 0x52, 0x60, 0xe0, 0x23, 0x53, 0x9a, 0x71, 0xdf, 0x50, 0xee, 0x19, 0x0e, 0x57, 0x86, 0xba,
	0xae, 0x88, 0xb8, 0xc6, 0xb5, 0x25, 0xa1, 0x84, 0xb6, 0xe8, 0x80, 0x51, 0x9a, 0x4a, 0x0d, 0x9e,
	0x69, 0xb2, 0x20, 0xc8, 0x2d, 0x0a, 0x74, 0x14, 0xe2, 0x4d, 0xd2, 0x40, 0xd6, 0x5c, 0xe8, 0x5e,
	0x52, 0xee, 0x43, 0x25, 0xd0, 0xc2, 0x28, 0xda, 0x06, 0x13, 0xd2, 0x6e, 0x1b, 0xb8, 0x56, 0x15,
	0xfc, 0x7f, 0x72, 0x81, 0xec, 0x15, 0x8c, 0xc9, 0xed, 0x21, 0xc8, 0x36, 0xd3, 0x79, 0x89, 0x96,
	0x90, 0xc6, 0x8d, 0x94, 0x16, 0x6d, 0x90, 0x79, 0x5d, 0x1d, 0x29, 0xbc, 0x45, 0x8e, 0xd1, 0x01,
	0xe3, 0x1d, 0x1a, 0x30, 0x6f, 0x1d, 0xb9, 0x4d, 0xde, 0xa2, 0x37, 0xff, 0x8c, 0x74, 0xa9, 0x06,
	0x5f, 0xc8, 0x2e, 0xde, 0x21, 0x47, 0xe8, 0xd9, 0x02, 0x5a, 0x34, 0x68, 0x34, 0x6b, 0x83, 0xd1,
	0xdd, 0x10, 0xf0, 0x3d, 0x72, 0x8e, 0xce, 0xf4, 0x25, 0x93, 0x79, 0x3d, 0xa9, 0xbb, 0x86, 0x06,
	0x12, 0xa8, 0xd7, 0x35, 0x97, 0x54, 0x2d, 0x9a, 0xc4, 0xf7, 0xc9, 0x09, 0x7a, 0xbe, 0x5a, 0x98,
	0x71, 0x13, 0x4a, 0xe1, 0x4b, 0x50, 0x0a, 0x23, 0x72, 0x80, 0x1e, 0x73, 0x61, 0x14, 0xf3, 0x79,
	0x14, 0x96, 0xef, 0x51, 0x8a, 0x09, 0x8e, 0x77, 0xc9, 0x4b, 0x74, 0x32, 0x9f, 0x98, 0x68, 0x15,
	0xbc, 0x7c, 0x62, 0xcb, 0xe6, 0x07, 0xe4, 0x14, 0x1d, 0x56, 0xad, 0x86, 0x52, 0xb4, 0x58, 0x00,
	0x45, 0x5f, 0x2d, 0x11, 0x71, 0x0f, 0x3f, 0x5c, 0xc9, 0xcf, 0x47, 0xb1, 0x94, 0x7f, 0x44, 0xce,
	0xd0, 0xd1, 0x9a, 0x9f, 0x71, 0x08, 0x98, 0xcf, 0x9a, 0x01, 0xe0, 0xbd, 0x15, 0xc1, 0x02, 0xb0,
	0x24, 0xc0, 0xe4, 0x15, 0x7a, 0x51, 0x8d, 0x8d, 0x03, 0x78, 0xca, 0x30, 0xae, 0x41, 0x72, 0x1a,
	0x18, 0x1a, 0x86, 0x52, 0x74, 0x68, 0x80, 0xf7, 0x9b, 0xbf, 0x36, 0x50, 0xfd, 0x73, 0x7a, 0x63,
	0xfd, 0x7d, 0xd1, 0x9b, 0x4f, 0xd7, 0xb6, 0x35, 0xcc, 0x57, 0x3c, 0xdc, 0xf8, 0xe4, 0xcd, 0x9d,
	0x71, 0x3a, 0xee, 0x27, 0xb1, 0x95, 0x4e, 0x63, 0x3b, 0x1e, 0x26, 0xc5, 0x01, 0x2c, 0x8e, 0x6d,
	0x32, 0xca, 0xfe, 0x74, 0x7b, 0xef, 0xcb, 0xcf, 0xb7, 0xda, 0xa6, 0x4f, 0xe9, 0xf7, 0xda, 0xa9,
	0x5f, 0xc2, 0xe8, 0x20, 0xb3, 0xca, 0x30, 0x8f, 0x3a, 0x0d, 0xab, 0x28, 0x99, 0xfd, 0x58, 0x08,
	0x7a, 0x74, 0x90, 0xf5, 0x2a, 0x41, 0xaf, 0xd3, 0xe8, 0x95, 0x82, 0x9f, 0xb5, 0x7a, 0xf9, 0xd7,
	0x71, 0xe8, 0x20, 0x73, 0x9c, 0x4a, 0xe2, 0x38, 0x9d, 0x86, 0xe3, 0x94, 0xa2, 0xeb, 0xed, 0xe2,
	0x75, 0x17, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0xbe, 0x44, 0x68, 0x0f, 0x18, 0x04, 0x00, 0x00,
}
