PicPayDotnet 1.0.1
dotnet add package PicPayDotnet --version 1.0.1
NuGet\Install-Package PicPayDotnet -Version 1.0.1
<PackageReference Include="PicPayDotnet" Version="1.0.1" />
paket add PicPayDotnet --version 1.0.1
#r "nuget: PicPayDotnet, 1.0.1"
// Install PicPayDotnet as a Cake Addin #addin nuget:?package=PicPayDotnet&version=1.0.1 // Install PicPayDotnet as a Cake Tool #tool nuget:?package=PicPayDotnet&version=1.0.1
picpay-api-dotnet
<img src="PicPayDotnet/Icon/PicPay.png" alt="PicPay Image">
Métodos responsáveis para consumir e utilizar a api do PicPay, com alguns adicionais.
Índice - C#
🚀 Instalação
Execute o comando para instalar via NuGet:
> dotnet add package PicPayDotnet
💻 Configurações Iniciais
Para configurar o ambiente e utilizar o client existem duas formas distintas e cabe ao desenvolvedor escolher a que mais se adeque ao projeto.
A primeira forma é utilizando por meio do IHttpClientFactory e de um Service Provider, e deixando a extensão da Microsoft fazer o gerenciamento do HttpClient durante a vida da sua aplicação. Exemplo:
public static ServiceProvider ServiceProvider { get; set; }
public const string PicPayClient = "PicPayClient"; // Este deve ser sempre o Nome do HttpClient nomeado
// Geralmente esta configuração é feita em algum momento da sua aplicação e se mantém por toda ela
var serviceCollection = new ServiceCollection().AddHttpClient();
serviceCollection.AddHttpClient(PicPayClient, Client =>
{
Client.BaseAddress = new Uri("https://appws.picpay.com/ecommerce/public/");
Client.DefaultRequestHeaders.Add("x-picpay-token", "Your-Token-HERE");
Client.DefaultRequestHeaders.Add("user-agent", JSONExtension.GetUserAgent());
Client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
});
ServiceProvider = serviceCollection.BuildServiceProvider();
var client = new PicPayClient(ServiceProvider);
Ou ainda pode ser feita por meio da Dependency Injection, atráves do PicPayConfiguration. Exemplo:
var config = new PicPayConfiguration
{
URL = "URL-API",
PicPayToken = "Your-Token-HERE"
};
var client = new PicPayClient(config);
Quaisquer dúvidas adicionais, segue a documentação oficial: API Refence
☕ Usando a API
Criar request de pagamento
var request = new PicPayPaymentRequest
{
ReferenceId = "1029",
CallbackUrl = "http://www.sualoja.com.br/",
ReturnUrl = "http://www.picpay.com/#transacaoConcluida",
ExpiraEm = DateTime.Now.AddMinutes(30),
Valor = 1,
Buyer = new PicPayBuyer
{
Nome = "TesTe",
Sobrenome = "Teste",
Documento = "99999999999",
}
};
var response_pagamento = await _client.CreateRequest(request);
Consultar request de Pagamento
var response = await _client.GetStatusAsync("1029");
Cancelar request de Pagamento
var request = new PicPayPaymentRequest
{
AuthorizationId = "555008cef7f321d00ef236333",
Valor = 1,
ReferenceId = "1029"
};
var response_cancel = await _client.CancelRequestAsync(request);
📫 Contribuindo para PicPay_API
Para contribuir com PicPay_API, siga estas etapas:
- Bifurque este repositório.
- Crie um branch:
git checkout -b <Nome da Branch>
. - Faça suas alterações e confirme-as:
git commit -m 'Sua Mensagem'
- Envie para o branch original:
git push origin picpay-api-dotnet / <local>
- Crie a solicitação de pull.
Como alternativa, consulte a documentação do GitHub em como criar uma solicitação pull.
🤝 Colaboradores
Agradecemos às seguintes pessoas que contribuíram para este projeto:
<table> <tr> <td align="center"> <a href="https://github.com/ManuMelva" title=""> <img src="https://github.com/ManuMelva.png" width="100px;" alt=""/><br> <sub> <b>Emmanuel Silva</b> </sub> </a> </td> </tr> </table>
📝 Licença
Esse projeto está sob licença MIT. Veja o arquivo LICENÇA para mais detalhes.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- Microsoft.Extensions.Http (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.