A SDK .Net Mundi Checkout é uma ferramenta disponibilizada para facilitar ainda mais a sua integração com a API Mundi Checkout. Ela permite a abstração da criação dos contratos de requisição para os recursos disponíveis na API Mundi Checkout, assim como de seu envio e do recebimento do contrato de resposta. Esta é a soluçao ideal se você deseja facilitar a integração de seu e-commerce com a API Mundi Checkout utilizando a linguagem .Net
A primeira coisa a ser feita para a utilização da SDK do Mundi Checkout é inicializar um objeto ApiClient, definindo a chave da loja e o ambiente de integração desejados. Este objeto será responsável pelo envio das requisições para a API Mundi Checkout.
MerchantKey - Chave da loja (Tipo: Guid, Obrigatório: Sim, exceto para o recurso Checkout na Nuvem)
Environment - Ambiente de integração com a API Mundi Checkout. (Tipo: Enum, Valores: Development, Staging, Production)
//Define a chave de loja
Guid merchantKey = Guid.Parse(“54409272-781D-4470-BFA3-C58A5A005B49”);
//Instancia um objeto ApiClient
ApiClient apiClient = new ApiClient(ApiEnvironmentEnum.Staging, merchantKey);
É importante notar que o valor da chave de loja deve ser substituído pela chave de sua loja, informada no momento da afiliação.
Para que uma requisição de criação de um token seja efetuada, deve-se preencher o objeto do contrato de requisição TokenRequest e em seguida chamar o método Process, do ApiClient, passando este objeto de requisição como parâmetro. Este método enviará a requisição para a plataforma Mundi Checkout, retornando um objeto TokenResponse, contendo a resposta da requisição.
//Objeto de requisição de token
TokenRequest tokenRequest = new TokenRequest() {
Options = new OptionsRequest() {
IsAntiFraudEnabled = false,
IsBoletoPaymentEnabled = false,
IsCreditCardPaymentEnabled = true
},
Order = new OrderRequest() {
AmountInCents = 100,
IpAddress = this.IpAddress,
OrderReference = Guid.NewGuid().ToString().Substring(0, 20),
},
};
//Solicita a criação do Token
TokenResponse tokenResponse = ApiClient.Process(tokenRequest);
O recurso Checkout na Nuvem permite que um botão de pagamento para um pedido utilizando o Mundi Checkout seja enviado para um Email ou uma conta do Twitter, possibilitando que seu pagamento seja feito posteriormente. Para utilizar este recurso, você deve preencher um objeto do contrato de requisição SendPaymentRequest informando a chave de token do pedido a ser enviado e enviar esta requisição para a API do Mundi Checkout, da mesma forma como foi feito para o recurso da criação do token.
//Objeto de requisição do envio do botão de pagamento
//Assumindo que tokenKey já foi gerado anteriormente
SendPaymentRequest sendPaymentRequest = new SendPaymentRequest() {
Options = new SendPaymentOptionsRequest() {
SendByEmail = true,
SendByTwitter = true,
},
SenderName = "Sender",
ReceiverName = "Receiver",
CustomEmailMessage = "Custom test message",
Email = "[email protected]",
TwitterId = "@mundicheckout",
TokenKey = tokenKey
};
//Envia o pedido de criação do token:
SendPaymentResponse sendPaymentResponse = ApiClient.Process(sendPaymentRequest);
Após a confirmação de um pedido, caso seja necessário efetuar o cancelamento de suas transações, uma requisição pode ser enviada para a API do Mundi Checkout, através do envio de uma requisição CancelRequest. Este objeto deve ser preenchido com a chave de token do pedido, e enviada de forma análoga às requisições explicadas acima.
//Objeto de requisição de cancelamento (Assumindo que a chave do token já foi definida anteriormente)
CancelRequest cancelRequest = new CancelRequest() {
TokenKey = tokenKey,
};
//Envia o pedido de cancelamento das transações de um pedido:
CancelResponse cancelResponse = ApiClient.Process(cancelRequest);
A qualquer momento após a criação do token, uma consulta para saber as informações do pedido e de suas transações pode ser feita na API Mundi Checkout, utilizando o recurso Query. Para isto, basta que um objeto QueryRequest seja criado, preenchendo ao menos um de seus atributos: QueryRequest.Token, QueryRequest.OrderKey ou QueryRequest.OrderReference. Ao enviar uma solicitação para à API, um objeto QueryResponse será retornado, informando todas as informações desejadas.
//Objeto de requisição de consulta (tokenKey gerado anteriormente)
QueryRequest queryRequest = new QueryRequest() {
Token = tokenKey,
};
//Envia o pedido de consulta
QueryResponse queryResponse = ApiClient.Process(queryRequest);