Module: AcceptOn::API::Promotion

Includes:
Utils
Included in:
Client
Defined in:
lib/accepton/api/promotion.rb

Instance Method Summary collapse

Instance Method Details

#create_promo_code(args = {}) ⇒ AcceptOn::PromoCode

Creates a promo code on AcceptOn

Examples:

Create a "20OFF" promo code for $20 off of a purchase

create_promo_code(name: '20OFF',
                  promo_type: 'amount',
                  value: 20_00)

Create a "10-percent" promo code for 10% off of a purchase

create_promo_code(name: '10per',
                  promo_type: 'percentage',
                  value: '10.0')

Create a "5dollar" promo code that reduces a purchase to $5.00

create_promo_code(name: '5dollar',
                  promo_type: 'fixed_price',
                  value: 5_00)

Parameters:

  • args (Hash) (defaults to: {})

Options Hash (args):

  • :name (String)

    The promo code name, as given to customers.

  • :promo_type (String)

    The type of promo code.

  • :value (Numeric)

    The promo code amount.

Returns:

Raises:



34
35
36
# File 'lib/accepton/api/promotion.rb', line 34

def create_promo_code(args = {})
  perform_post_with_object('/v1/promo_codes', args, AcceptOn::PromoCode)
end

#delete_promo_code(promo_code) ⇒ AcceptOn::PromoCode

Deletes a promo code on AcceptOn

Examples:

Deletes a promo code previously retrieved by the client

client.delete_promo_code(promo_code)

Parameters:

Returns:

Raises:



49
50
51
52
53
# File 'lib/accepton/api/promotion.rb', line 49

def delete_promo_code(promo_code)
  perform_delete_with_object("/v1/promo_codes/#{promo_code.original_name}",
                             {},
                             AcceptOn::PromoCode)
end

#update_promo_code(promo_code) ⇒ AcceptOn::PromoCode

Updates a promo code on AcceptOn

Examples:

Updates a "SUMMERFUN" promo code to $20 off of a purchase

promo_code.promo_type = 'amount'
promo_code.value = 20_00
client.update_promo_code(promo_code)

Parameters:

Returns:

Raises:



68
69
70
71
72
# File 'lib/accepton/api/promotion.rb', line 68

def update_promo_code(promo_code)
  perform_put_with_object("/v1/promo_codes/#{promo_code.original_name}",
                          promo_code.as_params,
                          AcceptOn::PromoCode)
end