gsl-payments-plugin
v0.0.9
Published
Este é um plugin para o [framework de e-commerce Vendure](https://www.vendure.io/) fornece funcionalidades relacionadas ao processamento de pagamentos e gerenciamento de contas bancárias em um contexto de comércio eletrônico do projeto [Gseller](https://g
Downloads
8
Readme
Plugin de Payments Plugin
Vendure
Este é um plugin para o framework de e-commerce Vendure fornece funcionalidades relacionadas ao processamento de pagamentos e gerenciamento de contas bancárias em um contexto de comércio eletrônico do projeto Gseller. Ele inclui as seguintes características principais:
Gerenciamento de Contas Bancárias:
Permite configurar e gerenciar contas bancárias associadas a canais de venda.
Criação e Atualização de Recipientes:
Facilita a criação e atualização de recipientes (titulares de contas) para processamento de pagamentos.
Customização de Permissões:
Adiciona permissões personalizadas ao sistema de autorização, como a permissão Recipient para operações relacionadas a destinatários.
Integração com Pagarme:
Utiliza a biblioteca @gabrielvenegaas/pagarmecoreapilib para integração com a plataforma de pagamentos Pagarme.
Além disso, o plugin está configurado para ouvir eventos específicos, como BankAccountEvent e RecipientContractEvent, e executar a lógica necessária para processar esses eventos, como enviar solicitações para a API do Pagarme para criar ou atualizar recipientes e contas bancárias.
Para outros plugins, o PaymentsPlugin pode fornecer funcionalidades relacionadas ao processamento de pagamentos, gerenciamento de contas bancárias e integração com sistemas de pagamento externos, como o Pagarme. Os plugins podem interagir com o PaymentsPlugin por meio de eventos, serviços e permissões personalizadas fornecidas pelo plugin.
Após configurar o seu projeto Vendure, você pode usar este plugin via npm install:
npm install payments-plugin
e inclua-o no arquivo vendure-config conforme abaixo:
import { PaymentsPlugin } from "payments-plugin";
...
export const config: VendureConfig = {
...
plugins: [
...,
PaymentsPlugin.init({
pagarme_public_key: "blank1",
pagarme_secret_key: "blank2",
}),
]
}
Os tipos, entradas e junções após a instalação do plugin são:
Admin Api Main Type
type Error {
message: String!
errors: JSON
}
type GatewayRecipient {
gateway: String
status: String
pgid: String
createdAt: String
updatedAt: String
}
type BankAccount {
id: String
holder_name: String
holder_type: String
holder_document: String
bank: String
branch_number: String
branch_check_digit: String
account_number: String
account_check_digit: String
type: String
status: String
created_at: String
updated_at: String
metadata: JSON
geteway_recipients: [GatewayRecipient]
}
type TransferSettings {
transfer_enabled: Boolean
transfer_interval: String
transfer_day: Int
}
type AutomaticAnticipationSettings {
enabled: Boolean
delay: Int
type: String
volume_percentage: Int
}
type Recipient {
id: String
name: String
email: String
document: String
status: String
type: String
created_at: String
updated_at: String
description: String
code: String
default_bank_account: BankAccount
transfer_settings: TransferSettings
gateway_recipients: [GatewayRecipient]
automatic_anticipation_settings: AutomaticAnticipationSettings
metadata: JSON
}
Admin Api Inputs
input BankAccountInput {
holder_name: String!
bank: String!
branch_number: String!
account_number: String!
account_check_digit: String!
holder_document: String!
holder_type: String!
branch_check_digit: String
type: String!
}
input TransferSettingsInput {
transfer_enabled: Boolean
transfer_interval: String
transfer_day: Int
}
input AutomaticAnticipationSettingsInput {
enabled: Boolean
delay: String
type: String
volume_percentage: String
}
input CreateRecipientInput {
name: String!
email: String!
document: String!
type: String!
description: String
code: String
default_bank_account: BankAccountInput!
transfer_settings: TransferSettingsInput
automatic_anticipation_settings: AutomaticAnticipationSettingsInput
metadata: JSON
}
Admin Api Union
union CreateRecipientResponse = Recipient | Error