Last updated:
0 purchases
pagaleve flutter
Pagaleve Flutter #
Visão Geral #
O SDK Pagaleve para Flutter oferece uma maneira fácil de integrar o processo de checkout do Pagaleve em seu aplicativo Flutter.
Instalação #
Você pode instalar o SDK da Pagaleve de duas maneiras diferentes
Método 1: Adicionando ao pubspec.yaml #
Adicione a dependência diretamente ao seu arquivo pubspec.yaml:
dependencies:
flutter:
sdk: flutter
pagaleve_flutter: ^1.0
copied to clipboard
Depois, execute o comando:
flutter pub get
copied to clipboard
Método 2: Usando o comando flutter pub add #
Você também pode adicionar o SDK usando o comando flutter pub add no terminal:
flutter pub add pagaleve_flutter
copied to clipboard
O flutter pub add irá atualizar automaticamente o seu arquivo pubspec.yaml e executar flutter pub get para você.
Inicialização do Checkout #
O método checkout inicia o processo de checkout e retorna uma página de OTP.
Os parâmetros que serão passados no checkout, são os mesmos que estão na documentação: Criar checkout
Método checkout #
Parâmetros
context: Objeto que representa a localização de um widget na árvore de widgets do Flutter. Ele é usado para obter informações sobre a árvore de widgets e manipular a navegação e a renderização dos widgets. (Veja mais)
data: Instância de CheckoutData que possui os dados necessários para o processo de checkout, os quais incluem informações do pedido, do comprador, dados de envio, entre outros. Esses dados são passados para a API de checkout da Pagaleve para completar a transação. Exemplo:
final CheckoutData checkoutData = CheckoutData(
metadata: {},
order: Order(
amount: 20000,
description: "description",
items: [
Item(
image: "http://pagaleve.com.br",
name: "Blusa Verde Lily",
price: 12000,
quantity: 1,
reference: "reference",
sku: "sku",
url: "http://pagaleve.com.br",
),
Item(
image: "http://pagaleve.com.br",
name: "Sapato Feminino Couro Preto",
price: 6000,
quantity: 1,
reference: "reference",
sku: "sku",
url: "http://pagaleve.com.br",
),
Item(
image: "http://pagaleve.com.br",
name: "Cinto Faixa Fivela Plástico Gloss Promoção Inverno",
price: 2000,
quantity: 1,
reference: "reference",
sku: "sku",
url: "http://pagaleve.com.br",
),
],
metadata: {},
reference: "PL20240625021025",
shipping: Shipping(
address: Address(
city: "São Paulo",
complement: "",
name: "Office",
neighborhood: "Vila Madalena",
number: "590",
phoneNumber: "11987654387",
state: "SP",
street: "Rua Harmonia",
zipCode: "05435001",
),
amount: 1000,
pickup: false,
tracking: Tracking(carrier: "carrier", code: "code", url: "url"),
),
tax: 20,
),
shopper: Shopper(
billingAddress: Address(
city: "City",
complement: "",
name: "Jane Doe",
neighborhood: "Neighborhood",
number: "123",
phoneNumber: "11987654321",
state: "XX",
street: "Street",
zipCode: "12345678",
),
birthDate: "2000-01-01T00:00:00.000Z",
cpf: "12345678901",
email: "[email protected]",
firstName: "John",
lastName: "Doe",
phone: "99123456789",
)
);
copied to clipboard
onSuccess: Função chamada quando o checkout é concluído com sucesso. Retorna uma instância do CheckoutValues. Exemplo do retorno:
{
'checkoutId': 'a1b9f49b-b3ee-48c1-b30d-14f64b80b5ce',
}
copied to clipboard
onError: Função chamada quando ocorre um erro durante o processo de checkout, retorna uma das seguintes exceptions.
Exception
Motivo
CheckoutGenericException
Erro desconhecido.
CheckoutCancelledException
Checkout foi cancelado manualmente pelo usuário.
InvalidCustomerFieldsException
Campos do cliente (shopper) estão incompletos ou com erros.
Exemplo #
import 'package:pagaleve_flutter/pagaleve_flutter.dart';
void main() {
runApp(const SdkExample());
}
class SdkExample extends StatefulWidget {
const SdkExample({super.key});
@override
State<SdkExample> createState() => _SdkExampleState();
}
class _SdkExampleState extends State<SdkExample> {
Pagaleve pagaleve = Pagaleve(
apiKey: <API-KEY>, // Login
apiSecret: <API-SECRET>, // Password
environment: 'Stage', // Optional param. Default: 'Production'
);
@override
Widget build(BuildContext context) {
onSubmit(CheckoutData data) async {
await pagaleve.checkout(
context,
data: data,
onSuccess: (CheckoutValues values) {
// Implemente sua função de sucesso aqui
},
onError: (Object error) {
// Implemente sua função para lidar com erros aqui
},
);
}
return MaterialApp(
home: Scaffold(
body: Padding(
padding: const EdgeInsets.all(16),
child: TextButton(
onPressed: onSubmit(data)
child: const Text('Criar checkout'),
)
)
)
);
}
}
copied to clipboard
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.