nubank-dotnet icon indicating copy to clipboard operation
nubank-dotnet copied to clipboard

Unofficial Nubank Api client for .Net

Nubank .Net Client

Build status NuGet

Unofficial Nubank client for .Net. This project was based in this repo and in this post. Thanks @andreroggeri for your QR Code implementation using Python, my implementation was based in yours.

Installation

This package is available through Nuget Packages: https://www.nuget.org/packages/NubankClient

Nuget

Install-Package NubankClient

.NET CLI

dotnet add package NubankClient

Usage

Login (Login is required for any other request)

var nubankClient = new Nubank(login, password);
await nubankClient.LoginAsync();

Device Authorization

Login in most part of devices is asking for authorization through QR Code, Nubank Client returns a response that indicate if device authorization is needed when login is requested. See an example:

var nubankClient = new Nubank(login, password);
var loginResponse = await nubankClient.LoginAsync();
if (loginResponse.NeedsDeviceAuthorization) {
   var qrcode = loginResponse.GetQrCodeAsAscii();
   // Here you can get qrcode as bitmap too.
   // var qrcode = loginResponse.GetQrCodeAsBitmap();
   // Now the user needs to scan QRCode using your device.
   // The user needs to access nubank in his smartphone and navigate to menu: Nu(Seu Nome) > Perfil > Acesso pelo site.
   // After user scan QRCode:
   await nubankClient.AutenticateWithQrCodeAsync(loginResponse.Code);
}

Get Events (Credit Card Transactions, Bill Payments, etc.)

var events = await nubankClient.GetEventsAsync();

Note: The Nubank API returns amount of events without decimal separators, to get a decimal to represent the amount with decimal separators use CurrencyAmount property of Event Class.

Get Savings (NuConta Bank Account Statment)

var savings = await nubankClient.GetSavingsAsync();