create method

Future<PaymentMethodCompleteModel> create(
  1. String description,
  2. CreditCard? data,
  3. bool setAsDefault,
  4. String? token,
  5. String? itemType,
)
Cria uma Forma de Pagamento de Cliente. Descrição (opcional se enviar o token) Dados da Forma de Pagamento (Em breve, este parâmetro será descontinuado. Para evitar problemas, use a partir de agora o parâmetro token) (opcional) Tipo da Forma de Pagamento. Atualmente suportamos apenas Cartão de Crédito (tipo credit_card). Só deve ser enviado caso não envie token. (opcional) Token de Pagamento, pode ser utilizado em vez de enviar os dados da forma de pagamento (opcional) Tipo da Forma de Pagamento. Atualmente suportamos apenas Cartão de Crédito (tipo credit_card). Só deve ser enviado caso não envie token.

Implementation

Future<PaymentMethodCompleteModel> create(
  String description,
  CreditCard? data,
  bool setAsDefault,
  String? token,
  String? itemType,
) async {
  Object paymentmethod;

  if (data == null && token != null) {
    paymentmethod = {
      'description': description,
      'setAsDefault': setAsDefault,
      'token': token,
    };
  } else {
    paymentmethod = {
      description: description,
      data: data?.toMap(),
      setAsDefault: setAsDefault,
      itemType: itemType,
    };
  }

  var result = await apiResource.post(data: paymentmethod);

  return PaymentMethodCompleteModel.fromMap(result);
}