Module: FlowCl::Customer

Included in:
Client
Defined in:
lib/flow_cl/coupon.rb,
lib/flow_cl/customer.rb

Instance Method Summary collapse

Instance Method Details

#coupon(id:) ⇒ Object

Este servicio permite obtener los datos de un cupón de descuento



29
30
31
32
33
# File 'lib/flow_cl/coupon.rb', line 29

def coupon(id:)
  path = 'api/coupon/get'

  private_get(path, { couponId: id })
end

#coupons(params:) ⇒ Object

Este servicio permite la lista de cupones de descuento



36
37
38
39
40
# File 'lib/flow_cl/coupon.rb', line 36

def coupons(params:)
  path = 'api/coupon/list'

  private_get(path, params)
end

#create_coupon(params:) ⇒ Object

Este servicio permite crear un cupón de descuento



6
7
8
9
10
# File 'lib/flow_cl/coupon.rb', line 6

def create_coupon(params:)
  path = 'api/coupon/create'

  private_post(path, params)
end

#create_customer(params: {}) ⇒ Object

Permite crear un nuevo cliente. El servicio retorna el objeto cliente creado.



6
7
8
9
10
# File 'lib/flow_cl/customer.rb', line 6

def create_customer(params: {})
  path = '/api/customer/create'

  private_post(path, params)
end

#customer(customer_id:) ⇒ Object

Permite obtener los datos de un cliente en base a su customerId.



35
36
37
38
39
# File 'lib/flow_cl/customer.rb', line 35

def customer(customer_id:)
  path = '/api/customer/get'

  private_get(path, { customerId: customer_id })
end

#customers(params: {}) ⇒ Object

Permite obtener la lista de clientes paginada de acuerdo a los parámetros de paginación.



28
29
30
31
32
# File 'lib/flow_cl/customer.rb', line 28

def customers(params: {})
  path = '/api/customer/list'

  private_get(path, params)
end

#delete_coupon(id:) ⇒ Object

Este servicio permite eliminar un cupón de descuento. Eliminar un cupón de descuento no elimina los descuentos aplicados a clientes o suscripciones, sólo no permite volver a aplicar este cupón



22
23
24
25
26
# File 'lib/flow_cl/coupon.rb', line 22

def delete_coupon(id:)
  path = 'api/coupon/delete'

  private_post(path, { couponId: id })
end

#delete_customer(customer_id:) ⇒ Object

Permite eliminar un cliente. Para eliminar un cliente, este no debe tener suscripciones activas o importes pendientes de pago.



21
22
23
24
25
# File 'lib/flow_cl/customer.rb', line 21

def delete_customer(customer_id:)
  path = '/api/customer/delete'

  private_post(path, { customerId: customer_id })
end

#edit_coupon(id:, name:) ⇒ Object

Este servicio permite editar un cupón de descuento. Sólo se puede editar el nombre de un cupón.



13
14
15
16
17
# File 'lib/flow_cl/coupon.rb', line 13

def edit_coupon(id:, name:)
  path = 'api/coupon/create'

  private_post(path, { couponId: id, name: name })
end

#edit_customer(params: {}) ⇒ Object

Este servicio permite editar los datos de un cliente



13
14
15
16
17
# File 'lib/flow_cl/customer.rb', line 13

def edit_customer(params: {})
  path = '/api/customer/edit'

  private_post(path, params)
end

#register_customer(customer_id:, url_return:) ⇒ Object

Envía a un cliente a registrar su tarjeta de crédito para poder efectuarle cargos automáticos. El servicio responde con la URL para redirigir el browser del pagador y el token que identifica la transacción. La url de redirección se debe formar concatenando los valores recibidos en la respuesta de la siguiente forma: url + “?token=” +token



45
46
47
48
49
# File 'lib/flow_cl/customer.rb', line 45

def register_customer(customer_id:, url_return:)
  path = '/api/customer/register'

  private_post(path, { customerId: customer_id, url_return: url_return })
end

#register_customer_status(token:) ⇒ Object

Este servicio retorna el resultado del registro de la tarjeta de crédito de un cliente.



52
53
54
55
56
# File 'lib/flow_cl/customer.rb', line 52

def register_customer_status(token:)
  path = '/api/customer/getRegisterStatus'

  private_get(path, { token: token })
end

#unregister_customer(customer_id:) ⇒ Object

Este servicio permite eliminar el registro de la tarjeta de crédito de un cliente. Al eliminar el registro no se podrá hacer cargos automáticos y Flow enviará un cobro por email.



60
61
62
63
64
# File 'lib/flow_cl/customer.rb', line 60

def unregister_customer(customer_id:)
  path = '/api/customer/unRegister'

  private_post(path, { customerId: customer_id })
end