Exemplos

Veja alguns exemplos de requisições

#Criar pagamento cartão de crédito criptografado

Utilizamos um pedido já criado e enviamos a hash do cartão para a criação do pagamento.

{  
   "installmentCount":6,
   "statementDescriptor":"Minha Loja",
   "fundingInstrument":{  
      "method":"CREDIT_CARD",
      "creditCard":{  
         "hash": "HhL0kbhfid+jwgj5l6Kt9EPdetDxQN8s7uKUHDYxDC/XoULjzik44rSda3EcWuOcL17Eb8JjWc1JI7gsuwg9P0rJv1mJQx+d3Dv1puQYz1iRjEWWhnB1bw0gTvnnC/05KbWN5M8oTiugmhVK02Rt2gpbcTtpS7VWyacfgesBJFavYYMljYg8p2YGHXkXrMuQiOCeemKLk420d0OTMBba27jDVVJ663HZDrObnjFXJH/4B5irkj+HO5genV+V4PYoLcOESG4nrI3oFAsMGsLLcdJo0NNvkEmJpn0e9GzureKKFYisYU+BEd9EMr/odS0VMvOYRV65HbPTspIkjl2+3Q==",
         "store":true,
         "holder":{  
            "fullname":"Roberto Oliveira",
            "birthdate":"1988-12-30",
            "taxDocument":{  
               "type":"CPF",
               "number":"78994193600"
            },
            "phone":{  
               "countryCode":"55",
               "areaCode":"11",
               "number":"22849560"
            },
            "billingAddress":{  
               "city":"Belo Horizonte",
               "district":"Savassi",
               "street":"Avenida Contorno",
               "streetNumber":"400",
               "zipCode":"76932800",
               "state":"MG",
               "country":"BRA"
            }
         }
      }
   },
   "device":{  
      "ip":"127.0.0.1",
      "geolocation":{  
         "latitude":-33.867,
         "longitude":151.206
      },
      "userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
      "fingerprint":"QAZXswedCVGrtgBNHyujMKIkolpQAZXswedCVGrtgBNHyujMKIkolpQAZXswedCVGrtgBNHyujMKIkolpQAZXswedCVGrtgBNHyujMKIkolp"
   }
}
#
# Este exemplo usa a SDK do Moip de Ruby, disponível
# em: https://github.com/moip/moip-sdk-ruby
#

payment = api.payment.create(order.id,
  installment_count: 6,
  funding_instrument: {
    method: "CREDIT_CARD",
    credit_card: {
      # You can generate the following hash using a Moip Javascript SDK
      # where you use the customer credit_card data and your public key
      # to create the hash.
      # Read more about creating credit card hash here:
      # https://dev.moip.com.br/v2.0/docs/criptografia-de-cartao
      hash: "kJHoKZ2bIVFjEFPSQQxbpXL6t5VCMoGTB4eJ4GLHmUz8f8Ny/LSL20yqbn+bZQymydVJyo3lL2DMT0dsWMzimYILQH4vAF24VwM0hKxX7nVwqGpGCXwBwSJGCwR57lqDiI4RVhKTVJpu7FySfu+Hm9JWSk4fzPXQO/FRqIS5TJQWJSywjLmGwyYtTGsmHTSCwvPFg+0GcG/EkYjPesMc/ycxPixibrEId9Wz03QnLsHYzSBCnPqg8xq8WKYDX2x3dHV3GNsB4TEfVz4psynddDEpX/VhIk2e8cXQ0EoXKkWdJEJB4KFmqj39OhNevCBkF5ADvzFp73J0IxnjOf1AQA==",
      holder: {
        fullname: "Roberto Oliveira",
        birthdate: "1988-12-30",
        taxDocument: {
          type: "CPF",
          number: "78994193600",
        },
        phone: {
          countryCode: "55",
          areaCode: "11",
          number: "22849560",
        },
        billingAddress: {  
               city: "Belo Horizonte", 
               district: "Savassi", 
               street: "Avenida Contorno", 
               streetNumber: "400", 
               zipCode: "76932800", 
               state: "MG", 
               country: "BRA"
        },
      },
    },
  })
<?php

/**
* Este exemplo usa a SDK do Moip de PHP, disponível 
* em: https://github.com/moip/moip-sdk-php
*/

$holder = $moip->holders()->setFullname('Jose Silva')
    ->setBirthDate("1990-10-10")
    ->setTaxDocument('22222222222', 'CPF')
    ->setPhone(11, 66778899, 55)
    ->setAddress('BILLING', 'Avenida Faria Lima', '2927', 'Itaim', 'Sao Paulo', 'SP', '01234000', 'Apt 101');

$hash = 'HhL0kbhfid+jwgj5l6Kt9EPdetDxQN8s7uKUHDYxDC/XoULjzik44rSda3EcWuOcL17Eb8JjWc1JI7gsuwg9P0rJv1mJQx+d3Dv1puQYz1iRjEWWhnB1bw0gTvnnC/05KbWN5M8oTiugmhVK02Rt2gpbcTtpS7VWyacfgesBJFavYYMljYg8p2YGHXkXrMuQiOCeemKLk420d0OTMBba27jDVVJ663HZDrObnjFXJH/4B5irkj+HO5genV+V4PYoLcOESG4nrI3oFAsMGsLLcdJo0NNvkEmJpn0e9GzureKKFYisYU+BEd9EMr/odS0VMvOYRV65HbPTspIkjl2+3Q==';

$payment = $order->payments()
        ->setCreditCardHash($hash, $holder)
        ->setInstallmentCount(6)
        ->setStatementDescriptor("Minha Loja")
        ->execute();
    
print_r($payment);
/**
 * Este exemplo usa a SDK do Moip de Java, disponível 
 * em: https://github.com/moip/moip-sdk-java
 */

Map<String, Object> taxDocument = payloadFactory(
    value("type", "CPF"),
    value("number", "33333333333")
);

Map<String, Object> phone = payloadFactory(
    value("countryCode", "55"),
    value("areaCode", "11"),
    value("number", "66778899")
);

Map<String, Object> holder = payloadFactory(
    value("fullname", "Portador Teste Moip"),
    value("birthdate", "1988-12-30"),
    value("taxDocument", taxDocument),
    value("phone", phone)
);

Map<String, Object> creditCard = payloadFactory(
    value("hash", "HhL0kbhfid+jwgj5l6Kt9EPdetDxQN8s7uKUHDYxDC/XoULjzik44rSda3EcWuO" +
    "cL17Eb8JjWc1JI7gsuwg9P0rJv1mJQx+d3Dv1puQYz1iRjEWWhnB1bw0gTvnn" +
    "C/05KbWN5M8oTiugmhVK02Rt2gpbcTtpS7VWyacfgesBJFavYYMljYg8p2YGH" +
    "XkXrMuQiOCeemKLk420d0OTMBba27jDVVJ663HZDrObnjFXJH/4B5irkj+HO5" +
    "genV+V4PYoLcOESG4nrI3oFAsMGsLLcdJo0NNvkEmJpn0e9GzureKKFYisYU+" +
    "BEd9EMr/odS0VMvOYRV65HbPTspIkjl2+3Q=="),
    value("holder", holder)
);

Map<String, Object> fundingInstrument = payloadFactory(
    value("method", "CREDIT_CARD"),
    value("creditCard", creditCard)
);

Map<String, Object> payment = payloadFactory(
    value("installmentCount", 1),
    value("statementDescriptor", "minhaLoja.com"),
    value("fundingInstrument", fundingInstrument)
);

Map<String, Object> newPay = Moip.API.payments().pay(payment, "order_id", setup);
var body = new PaymentRequest
{
   //informe os campos aqui
   InstallmentCount = 1,
   FundingInstrument = new Fundinginstrument
   {
       Method = "CREDIT_CARD",
       CreditCard = new Creditcard
       {
           Hash = "HhL0...pIkjl2+3Q==",
           Holder = new Holder
           {
               FullName = "Jose Portador da Silva",
               BirthDate = "1988-12-30",
               TaxDocument = new Taxdocument
               {
                   Type = "CPF",
                   Number = "33333333333"
               }
           }
       }
   }
};          
var result = await WC.Payment.Create(body, "ORD-XXXXXXXXXXXX");
/**
* Este exemplo usa a SDK do Moip de Node, disponível 
* em: https://github.com/moip/moip-sdk-node
*/

const moip = require('moip-sdk-node').default({
  accessToken: 'your-access-token',
  production: false
})

moip.payment.create('ORD-SFGB23X8WAVQ', {
    installmentCount: 1,
    fundingInstrument: {
        method: 'CREDIT_CARD',
        creditCard: {        
            hash: 'Credit Card HASH -> generated using the JS encryption SDK',
            holder: {
                fullname: 'Jose Santos',
                birthdate: '1980-01-02',
                taxDocument: {
                    type: 'CPF',
                    number: '12345679891'
                },
                phone: {
                    countryCode: '55',
                    areaCode: '11',
                    number: '25112511'
                }
            }
        }
    }
}).then((response) => {
    console.log(response.body)
}).catch((err) => {
    console.log(err)
})

❗️

ATENÇÃO

  1. Você deve fazer a criptografia dos dados do cartão de crédito antes de enviar ao Moip. Caso você tenha certificado PCI, é permitido o envio dos dados sem criptografia para o Moip.

  2. Os atributos number, expirationMonth, creditCard.expirationYear e cvc serão usados apenas em caso de seu site possuir certificação PCI. Caso contrário você deve usar o atributo hash e fazer a criptografia dos dados do cartão.

🚧

IMPORTANTE

Há três possibilidades de fazer o pagamento por cartão de crédito:

1. Se seu site possui certificação PCI, use os atributos com os dados do cartão: number, expirationMonth, expirationYear e cvc.

2. Caso seu site não possua certificação de segurança PCI então você deve fazer o pagamento criptografando os dados do cartão e usar o atributo hash. Saiba mais sobre a criptografia do cartão de crédito em nossa documentação.

3. Se seu cliente já tiver um cartão salvo no sistema você pode recuperar esses dados e fazer a venda usando apenas o atributo id. Este atributo é referente ao código identificador do cartão e você deve recebê-lo sempre que usar o atributo store:true em uma compra por cartão. Exemplo de id: CRC-9RR409BRJVIN.

👍

DICA

Para uso do device.fingerprint, recomendamos bibliotecas baseadas em Canvas Fingerprints. Uma boa recomendação de um serviço gratuito e open-source é o ClientJs.

#Criar pagamento boleto

Caso você queira criar um pagamento utilizando o boleto:

{  
   "statementDescriptor":"Minha Loja",
   "fundingInstrument":{  
      "method":"BOLETO",
      "boleto":{  
         "expirationDate":"2020-06-20",
         "instructionLines":{  
            "first":"Atenção,",
            "second":"fique atento à data de vencimento do boleto.",
            "third":"Pague em qualquer casa lotérica."
         },
         "logoUri":"http://www.lojaexemplo.com.br/logo.jpg"
      }
   }
}
#
# Este exemplo usa a SDK do Moip de Ruby, disponível
# em: https://github.com/moip/moip-sdk-ruby
#

payment = api.payment.create("ORD-2SEQRXM27MV1", {  
   statementDescriptor: 'Minha Loja', 
   funding_instrument: : {  
      method: 'BOLETO', 
      boleto: {  
         expirationDate: '2020-06-20', 
         instructionLines: {  
            first: 'Atenção,', 
            second: 'fique atento à data de vencimento do boleto.', 
            third: 'Pague em qualquer casa lotérica.'
         },
         logoUri: 'http://www.lojaexemplo.com.br/logo.jpg'
      }
   }
 })
<?php

/**
* Este exemplo usa a SDK do Moip de PHP, disponível 
* em: https://github.com/moip/moip-sdk-php
*/

$logo_uri = "http://www.lojaexemplo.com.br/logo.jpg";
    $expiration_date = "2020-06-20";
    $instruction_lines = [
        "Atenção,",                                         //First
        "fique atento à data de vencimento do boleto.",     //Second
        "Pague em qualquer casa lotérica."                  //Third
    ];

    $payment = $order->payments()
        ->setBoleto($expiration_date, $logo_uri, $instruction_lines)
        ->setStatementDescriptor("Minha Loja")
        ->execute();
    
print_r($payment);
/**
 * Este exemplo usa a SDK do Moip de Java, disponível 
 * em: https://github.com/moip/moip-sdk-java
 */

Map<String, Object> instructionLines = payloadFactory(
    value("first", "First instruction line!"),
    value("second", "Second instruction line!"),
    value("third", "Third instruction line!")
)

Map<String, Object> boleto = payloadFactory(
    value("expirationDate", "2020-06-20"),
    value("instructionLines", instructionLines),
    value("logoUri", "http://www.lojaexemplo.com.br/logo.jpg")
);

Map<String, Object> fundingInstrument = payloadFactory(
    value("method", "BOLETO");
    value("boleto", boleto);
);

Map<String, Object> payment = payloadFactory(
    value("installmentCount", 1),
    value("statementDescriptor", "minhaLoja.com"),
    value("fundingInstrument", fundingInstrument)
);

Map<String, Object> newPay = Moip.API.payments().pay(payment, "order_id", setup);
var body = new PaymentRequest
{
    //informe os campos aqui
    StatementDescriptor = "Minha Loja",
    FundingInstrument = new Fundinginstrument
    {
        Method = "BOLETO",
        Boleto = new Boleto
        {
            ExpirationDate = "2020-06-20", //yyyy-MM-dd
            InstructionLines = new Instructionlines
            {
                First = "Atenção",
                Second = "fique atento à data de vencimento do boleto.",
                Third = "Pague em qualquer casa lotérica."
            }
        }        
    }
};
var result = await WC.Payment.Create(body, "ORD-XXXXXXXXXXXX");
/**
* Este exemplo usa a SDK do Moip de Node, disponível 
* em: https://github.com/moip/moip-sdk-node
*/

const moip = require('moip-sdk-node').default({
  accessToken: 'your-access-token',
  production: false
})

moip.payment.create('ORD-SFGB23X8WAVQ', {
    installmentCount: 1,
    fundingInstrument: {
        method: "BOLETO",
        boleto: {
            expiration_date: "2017-09-30",
            instruction_lines: {
                first: "Primeira linha do boleto",
                second: "Segunda linha do boleto",
                third: "Terceira linha do boleto"
            },
            logo_uri: "https://sualoja.com.br/logo.jpg"
        }
    }
}).then((response) => {
    console.log(response.body)
}).catch((err) => {
    console.log(err)
})

🚧

IMPORTANTE

O CEP é um valor de 8 dígitos números. Caso informe apenas 7 a api adicionará um zero a esquerda do valor.

#Criar pagamento débito on-line

Caso você queira criar um pagamento utilizando débito:

{  
   "fundingInstrument":{  
      "method":"ONLINE_BANK_DEBIT",
      "onlineBankDebit":{  
         "bankNumber":341,
         "expirationDate":"2017-11-22"
      }
   }
}
#
# Este exemplo usa a SDK do Moip de Ruby, disponível
# em: https://github.com/moip/moip-sdk-ruby
#

payment = api.payment.create("ORD-2SEQRXM27MV1", {  
   funding_instrument:{  
      method:"ONLINE_BANK_DEBIT",
      onlineBankDebit:{  
         bankNumber:341,
         expirationDate:"2017-11-22"
      }
   }
}
<?php

/**
* Este exemplo usa a SDK do Moip de PHP, disponível 
* em: https://github.com/moip/moip-sdk-php
*/

$bankNumber = "341";
$expirationDate = "2017-11-22";
$returnUri = "https://www.meusite.com.br";

$payment = $order->payments()
    ->setOnlineBankDebit($bankNumber, $expirationDate, $returnUri)
    ->setStatementDescriptor("Minha Loja")
    ->execute();
    
print_r($payment);
/**
 * Este exemplo usa a SDK do Moip de Java, disponível 
 * em: https://github.com/moip/moip-sdk-java
 */

Map<String, Object> onlineBankDebit = payloadFactory(
    value("bankNumber", 341),
    value("expirationDate", "2017-11-22")
);

Map<String, Object> fundingInstrument = payloadFactory(
    value("method", "ONLINE_BANK_DEBIT"),
    value("onlineBankDebit", onlineBankDebit)
);

Map<String, Object> payment = payloadFactory(
    value("installmentCount", 1),
    value("statementDescriptor", "minhaLoja.com"),
    value("fundingInstrument", fundingInstrument)
);

Map<String, Object> newPay = Moip.API.payments().pay(payment, "order_id", setup);
/**
* Este exemplo usa a SDK do Moip de Node, disponível 
* em: https://github.com/moip/moip-sdk-node
*/

const moip = require('moip-sdk-node').default({
  accessToken: 'your-access-token',
  production: false
})

moip.payment.create('ORD-SFGB23X8WAVQ', {  
   fundingInstrument: {  
      method:"ONLINE_BANK_DEBIT",
      onlineBankDebit: {  
         bankNumber: 341,
         expirationDate: "2017-11-22"
      }
   }
}).then((response) => {
    console.log(response.body)
}).catch((err) => {
    console.log(err)
})
var body = new PaymentRequest
{
    FundingInstrument = new Fundinginstrument
    {
        Method = "ONLINE_BANK_DEBIT",
        OnlineBankDebit = new Onlinebankdebit
        {
            BankNumber = "341",
            ExpirationDate = "2017-10-22"
        }
    }
};
var result = await WC.Payment.Create(body, "ORD-XXXXXXXXXXXX");

#Exemplo pagamento pré-autorizado

As nossas APIs permitem que você controle o fluxo de pré-autorização e captura de uma transação de cartão de crédito. Desta forma, ao contrário da configuração padrão, em que à Wirecard realiza a captura da transação após a análise anti-fraude (status autorizado), você pode controlar quando a captura será realizada. O prazo máximo para realizar a captura é de 5 dias após a pré-autorização do pagamento.

Para pré-autorizar um pagamento basta utilizar o parâmetro delayCapture na requisição de criação do pagamento. Abaixo um exemplo de uma chamada com o parâmetro configurado.

❗️

ATENÇÃO

Por recomendação das bandeiras de cartão, um pagamento pré-autorizado deverá ser capturado em até 5 dias. Caso ultrapassado esse período, a Wirecard cancelará o pagamento automaticamente.

{  
   "installmentCount":3,
   "delayCapture":true,
   "statementDescriptor":"Minha Loja",
   "fundingInstrument":{  
      "method":"CREDIT_CARD",
      "creditCard":{  
 "hash": "KFLeL2jg14a5aJ0QoVEtgFfuYMf8n/ymby5NpBkj6XkTwSRiqWBMS0kUYg0JfQwF8DG2Ry528dAL5J9o5+bcXf/5sX77sPQ2yJfbzqBKlgG+xPMPaye8lgI6fGBzEJz3gJh6RdBfuY+Fqx7s3i0wxaObO3eisLXjDVPWKIa/JUB1qufxYcUg+9t0Q8rYwbaCYVBgb94RGg3EIxmaMUbukSFg7npUnbelPF77NTMLi7PWDeboSdpNQxHLW4UIcdbA7QyGmOU185yFFOuf+zD1Hscj4NP/YP23CENtsJ5ISQA2mdlFNtnLmgH7AP/7LpP8NZneC0eVamYA6/LxbYMU6Q==",
         "store":true,
         "holder":{  
            "fullname":"Roberto Oliveira",
            "birthdate":"1988-12-30",
            "taxDocument":{  
               "type":"CPF",
               "number":"78994193600"
            },
            "phone":{  
               "countryCode":"55",
               "areaCode":"11",
               "number":"22849560"
            },
            "billingAddress":{  
               "city":"Belo Horizonte",
               "district":"Savassi",
               "street":"Avenida Contorno",
               "streetNumber":"400",
               "zipCode":"76932800",
               "state":"MG",
               "country":"BRA"
            }
         }
      }
   }
}
#
# Este exemplo usa a SDK do Moip de Ruby, disponível
# em: https://github.com/moip/moip-sdk-ruby
#

payment = api.payment.create(
  order.id,
  installment_count: 1,
  delayCapture: true,
  funding_instrument: {
    method: 'CREDIT_CARD',
    credit_card: {
      hash: 'KFLeL2jg14a5aJ0QoVEtgFfuYMf8n/ymby5NpBkj6XkTwSRiqWBMS0kUYg0JfQwF8DG2Ry528dAL5J9o5+bcXf/5sX77sPQ2yJfbzqBKlgG+xPMPaye8lgI6fGBzEJz3gJh6RdBfuY+Fqx7s3i0wxaObO3eisLXjDVPWKIa/JUB1qufxYcUg+9t0Q8rYwbaCYVBgb94RGg3EIxmaMUbukSFg7npUnbelPF77NTMLi7PWDeboSdpNQxHLW4UIcdbA7QyGmOU185yFFOuf+zD1Hscj4NP/YP23CENtsJ5ISQA2mdlFNtnLmgH7AP/7LpP8NZneC0eVamYA6/LxbYMU6Q==',
      store: true,
      holder: {
        fullname: 'Roberto Oliveira',
        birthdate: '1988-12-30',
        taxDocument: {
          type: 'CPF',
          number: '78994193600'
        },
        phone: {
          countryCode: '55',
          areaCode: '11',
          number: '22849560'
        },
        billingAddress: {
          city: 'Belo Horizonte',
          district: 'Savassi',
          street: 'Avenida Contorno',
          streetNumber: '400',
          zipCode: '76932800',
          state: 'MG',
          country: 'BRA'
        }
      }
    }
  }
)
<?php

/**
* Este exemplo usa a SDK do Moip de PHP, disponível 
* em: https://github.com/moip/moip-sdk-php
*/

$holder = $moip->holders()->setFullname('Jose Silva')
    ->setBirthDate("1990-10-10")
    ->setTaxDocument('22222222222', 'CPF')
    ->setPhone(11, 66778899, 55)
    ->setAddress('BILLING', 'Avenida Faria Lima', '2927', 'Itaim', 'Sao Paulo', 'SP', '01234000', 'Apt 101');

$hash = "KFLeL2jg14a5aJ0QoVEtgFfuYMf8n/ymby5NpBkj6XkTwSRiqWBMS0kUYg0JfQwF8DG2Ry528dAL5J9o5+bcXf/5sX77sPQ2yJfbzqBKlgG+xPMPaye8lgI6fGBzEJz3gJh6RdBfuY+Fqx7s3i0wxaObO3eisLXjDVPWKIa/JUB1qufxYcUg+9t0Q8rYwbaCYVBgb94RGg3EIxmaMUbukSFg7npUnbelPF77NTMLi7PWDeboSdpNQxHLW4UIcdbA7QyGmOU185yFFOuf+zD1Hscj4NP/YP23CENtsJ5ISQA2mdlFNtnLmgH7AP/7LpP8NZneC0eVamYA6/LxbYMU6Q==";
    
$payment = $order->payments()
    ->setCreditCardHash($hash, $holder)
    ->setInstallmentCount(3)
    ->setStatementDescriptor("Minha Loja")
    ->setDelayCapture()
    ->execute();
    
print_r($payment);
/**
 * Este exemplo usa a SDK do Moip de Java, disponível 
 * em: https://github.com/moip/moip-sdk-java
 */

Map<String, Object> taxDocument = payloadFactory(
    value("type", "CPF"),
    value("number", "33333333333")
);

Map<String, Object> phone = payloadFactory(
    value("countryCode", "55"),
    value("areaCode", "11"),
    value("number", "66778899")
);

Map<String, Object> holder = payloadFactory(
    value("fullname", "Portador Teste Moip"),
    value("birthdate", "1988-12-30"),
    value("taxDocument", taxDocument),
    value("phone", phone)
);

Map<String, Object> creditCard = payloadFactory(
    value("hash", "CREDIT_CARD_HASH"),
    value("holder", holder)
);

Map<String, Object> fundingInstrument = payloadFactory(
    value("method", "CREDIT_CARD"),
    value("creditCard", creditCard)
);

Map<String, Object> payment = payloadFactory(
    value("installmentCount", 1),
    value("statementDescriptor", "minhaLoja.com"),
    value("delayCapture", true),
    value("fundingInstrument", fundingInstrument)
);

Map<String, Object> newPreAuthorizedPayment = Moip.API.payments().pay(payment, "order_id", setup);
/**
* Este exemplo usa a SDK do Moip de Node, disponível 
* em: https://github.com/moip/moip-sdk-node
*/

const moip = require('moip-sdk-node').default({
  accessToken: 'your-access-token',
  production: false
})

moip.payment.create('ORD-SFGB23X8WAVQ', {
    installmentCount: 1,
    delayCapture: true,
    fundingInstrument: {
        method: 'CREDIT_CARD',
        creditCard: {        
            hash: 'Credit Card HASH -> generated using the JS encryption SDK',
            holder: {
                fullname: 'Jose Santos',
                birthdate: '1980-01-02',
                taxDocument: {
                    type: 'CPF',
                    number: '12345679891'
                },
                phone: {
                    countryCode: '55',
                    areaCode: '11',
                    number: '25112511'
                }
            }
        }
    }
}).then((response) => {
    console.log(response.body)
}).catch((err) => {
    console.log(err)
})
var body = new PaymentRequest
{
    //informe os campos aqui
    DelayCapture = true,
    InstallmentCount = 1,
    FundingInstrument = new Fundinginstrument
    {
        Method = "CREDIT_CARD",
        CreditCard = new Creditcard
        {
            Id = "CRC-XXXXXXXXXXXX",
            Cvc = "123",
            Holder = new Holder
            {
                FullName = "Jose Portador da Silva",
                BirthDate = "1988-12-30",
                TaxDocument = new Taxdocument
                {
                    Type = "CPF",
                    Number = "33333333333"
                }
            }
        }
    }
};
var result = await WC.Payment.Create(body, "ORD-XXXXXXXXXXXX");

Criar um pagamento com CRC code

Este método requer que o pedido seja criado com o id do customer: CUS-XXXXXXXXXXXX.

{  
   "installmentCount":6,
   "statementDescriptor":"my-store.com",
   "fundingInstrument":{  
      "method":"CREDIT_CARD",
      "creditCard":{  
         "id": "CRC-123ABC456DEF",
         "cvc":123
      }
   }
}
<?php

/**
* Este exemplo usa a SDK do Moip de PHP, disponível 
* em: https://github.com/moip/moip-sdk-php
*/

$creditCardId = "CRC-123ABC456DEF";
$cvc = "123";
    
$payment = $order->payments()
    ->setCreditCardSaved($creditCardId, $cvc)
    ->setInstallmentCount(3)
    ->setStatementDescriptor("My store")
    ->execute();
    
print_r($payment);
/**
* Este exemplo usa a SDK do Moip de Node, disponível 
* em: https://github.com/moip/moip-sdk-node
*/

const moip = require('moip-sdk-node').default({
  accessToken: 'your-access-token',
  production: false
})

moip.payment.create('ORD-SFGB23X8WAVQ', {
    installmentCount: 1,
    fundingInstrument: {
        method: 'CREDIT_CARD',
        creditCard: {        
            id: 'CRC-123ABC456DEF',
            cvc: '123'
        }
      }
}).then((response) => {
    console.log(response.body)
}).catch((err) => {
    console.log(err)
})
#
# Este exemplo usa a SDK do Moip de Ruby, disponível
# em: https://github.com/moip/moip-sdk-ruby
#

payment = api.payment.create(order.id,
  {
  installment_count: 6,
  funding_instrument: {
    method: "CREDIT_CARD",
    credit_card: {
      id: "CRC-123ABC456DEF",
      cvc:"123"
       }
    }
  })
/**
 * Este exemplo usa a SDK do Moip de Java, disponível 
 * em: https://github.com/moip/moip-sdk-java
 */

Map<String, Object> creditCard = payloadFactory(
    value("id", "CRC-123ABC456DEF"),
    value("cvc", "123")
);

Map<String, Object> fundingInstrument = payloadFactory(
    value("method", "CREDIT_CARD"),
    value("creditCard", creditCard)
);

Map<String, Object> payment = payloadFactory(
    value("installmentCount", 1),
    value("statementDescriptor", "minhaLoja.com"),
    value("fundingInstrument", fundingInstrument)
);

Map<String, Object> newPay = Moip.API.payments().pay(payment, "order_id", setup);
var body = new PaymentRequest
{
   InstallmentCount = 1,
   FundingInstrument = new Fundinginstrument
   {
       Method = "CREDIT_CARD",
       CreditCard = new Creditcard
       {
           Id = "CRC-XXXXXXXXXXXX",
           Cvc = "123"
       }
   }
};          
var result = await WC.Payment.Create(body, "ORD-XXXXXXXXXXXX");