Histórico de mensagens sobre js em assinaturas

EXIBINDO CONVERSAS RECENTES:

Texto: js
Canal: assinaturas
Avatar discord do usuario antoniofernandes

antoniofernandes

Ver Respostas

Meu objeto de configuracao contem mais ou menos os seguinte dados:

js
options {
sandbox: true,
client_id: 'Client_Id_a34467b0898cbbf...',
client_secret: 'Client_Secret_1a7450d8d5c0b...',
pix_cert: '0�\n' +
'm\x02\x01\x030�\n' + ...
}
Vale salientar que o método abaixo esta funcionando normal
js
const signature = await this.gn.createSubscription(
paramsSignature,
bodySubscriptionSignature,
);
porem o metodo paySubscription é que está gerando o erro:
js
this.gerencianet.paySubscription(params, body);

Avatar discord do usuario antoniofernandes

antoniofernandes

@guilherme_efi Bom ia amigo. Tinha feito uma integração (Testada em sandbox) que estava funcionando e ja validado certinho meu fluxo. Agora voltei a testar e estou recebendo um erro:
Minha integração de assinatura tem mais ou menos o seguinte código:

js


const bodySubscriptionSignature = {
items: [
{
name: Assinatura: ${plan.title},
value: parseInt(convertPriceGateway(plan.price)),
amount: 1,
},
],
metadata: {
custom_id: ${companyId} - ${Date.now()},
notification_url: process.env.GN_NOTIFICATION_URL,
},
};

const paramsSignature = {
id: plan.planId,
};

const signature = await this.gn.createSubscription(
paramsSignature,
bodySubscriptionSignature,
);

const paramsPayment = {
id: signature.subscription_id,
};

const bodyPayment = {
payment: {
credit_card: {
payment_token: paymentToken,
billing_address: {
street: user.company.address.street,
number: user.company.address.streetNumber,
neighborhood: user.company.address.district,
zipcode: cep,
city: user.company.address.city,
state: user.company.address.state,
},
customer: {
name: ${user.firstName} ${user.lastName},
email: user.email,
cpf: cpf,
birth: birthDate,
phone_number: phone,
},
},
},
};

const associatePayment = await this.gn.paySubscription(
paramsPayment,
bodyPayment,
);

return { associatePayment };



E estou recebendo o seguinte erro:
js
{
"code": 3500010,
"error": "property_does_not_exists",
"error_description": {
"property": "payment_token",
"message": "A propriedade [payment_token] informada não existe."
}
}
Mudou alguma coisa?

Avatar discord do usuario fabioselau

fabioselau

json
{
"code": 200,
"data": [
{
"id": 1,
"type": "subscription",
"custom_id": "id_666",
"status": {
"current": "new",
"previous": null
},
"identifiers": {
"subscription_id": 78245
},
"created_at": "2023-09-20 15:17:09"
},
{
"id": 2,
"type": "subscription",
"custom_id": "id_666",
"status": {
"current": "new_charge",
"previous": "new"
},
"identifiers": {
"subscription_id": 78245
},
"created_at": "2023-09-20 15:17:09"
},
{
"id": 3,
"type": "subscription",
"custom_id": "id_666",
"status": {
"current": "active",
"previous": "new_charge"
},
"identifiers": {
"subscription_id": 78245
},
"created_at": "2023-09-20 15:17:09"
},
{
"id": 4,
"type": "subscription_charge",
"custom_id": "id_666",
"status": {
"current": "new",
"previous": null
},
"identifiers": {
"subscription_id": 78245,
"charge_id": 43838086
},
"created_at": "2023-09-20 15:17:09"
},
{
"id": 5,
"type": "subscription_charge",
"custom_id": "id_666",
"status": {
"current": "waiting",
"previous": "new"
},
"identifiers": {
"subscription_id": 78245,
"charge_id": 43838086
},
"created_at": "2023-09-20 15:17:09"
}
]
}

Avatar discord do usuario rubenskuhl

rubenskuhl

Ver Respostas

Precisa ver se isso dá uma boa UX... existem pacotes para executar JS em Flutter, como este:
https://pub.dev/packages/flutter_js

Avatar discord do usuario lucasbgarcia

lucasbgarcia

bom dia, tudo bem? existe algum vídeo de implementação da api de assinatura usando NodeJS?

Avatar discord do usuario danteredgrave.

danteredgrave.

para nodejs

Avatar discord do usuario thalesjf

thalesjf

Bom dia, preciso criar um link de pagamento para uma assinatura e na documentação não existe um exemplo em NodeJS na etapa de associar plano ao link de pagamento. Poderiam me auxiliar?

Avatar discord do usuario marcospaulo2911

marcospaulo2911

O arquivo que gera o payment-token.js tem uma linha que direciona o endereço
imagem enviada na mensagem pelo usuario marcospaulo2911

Avatar discord do usuario mateusbrasil2944

mateusbrasil2944

Na real todas as questões que cê falou ai já estão certas kkkkkkk
1 - O objeto payment só vai com o banking_billet pois credit_card é undefined quando eu envio o banking_billet como pode ser obeservado no primeiro print
2 - O objeto que estou passando como primeiro parâmetro já está no formato

js
{ id: subscription_id}
e não
js
{ id: { subscription_id } }

Avatar discord do usuario mateusbrasil2944

mateusbrasil2944

Se você observar :

js
console.log({ subscription_id })
resulta nisso
js
{ subscription_id: 73258 }
mas o
js
const result = await gerencianet.defineSubscriptionPayMethod({ id: subscription_id }, {
payment: { credit_card, banking_billet }
})
dispara o erro
js
TypeError: Cannot read properties of undefined (reading 'data')

Avatar discord do usuario andrauss

andrauss

Ver Respostas

Callback de pagamentos, recebi um retorno que não era JSON e quebrou a compensação

Avatar discord do usuario antoniofernandes

antoniofernandes

Ver Respostas

@Gerencianet Gostaria que me esclarecesse uma dúvida. Considerando que estou integrando o sistema de assinatura usando o sdk node, e implementado aqui o endpoint de cancelamento da assinatura:

js
this.gerencianet.cancelSubscription(params)
Minha dúvida é:

1 - Esse endpoint cancela assinatura e todas as próximas cobranças são canceladas...correto?
2 - Mas a principal duvida é: após essa ação de cancelamento é disparado alguma notificação para aquela url de notificação que foi configurada anteriormente na criação da assinatura? Porque até onde pude verificar parece que não recebi essa mudança de status após o cancelamento...???

Avatar discord do usuario drogaehobrian.

drogaehobrian.

Na documentação de Assinaturas em One-Step o NodeJS está _vazio_. 😦
imagem enviada na mensagem pelo usuario drogaehobrian.

Avatar discord do usuario depaula_igor

depaula_igor

Pelo menos consegui as informações do JSON que chega antes kkkk

Avatar discord do usuario guilherme_efi

guilherme_efi

Ver Respostas

As nossas SDKs ainda não receberam a atualização com inclusão desse endpoint, mas você consegue adicionar manualmente.
Basta no caminho \vendor\gerencianet\gerencianet-sdk-php\src\Gerencianet substituir o arquivo config.json pelo seguinte:

Avatar discord do usuario antoniofernandes

antoniofernandes

@igor_efi Fala meu amigo bora tirar mais uma dúvida. Me corrija se estiver errado.

Entendi que vou receber um post com código da notificação na url indicada no campo notification
código esse que devo utilizar para consultar os dados da notificação e fazer a tratativa no meu sistema. Correto?

js
const token = $_POST["notification"];

const params = {
'token' : $token
};

var gerencianet = new Gerencianet(options);

gerencianet
.getNotification(params)
.then(console.log)
.catch(console.log)
.done();

Minha dúvida é:

EXISTE alguma forma de no painel pega o conteudo do post notification, para que eu possa simular localmente o envio desse post e fazer todas tratativas fazendo a consulta localmente?

Vale lembrar que estou implementado assinatura apenas com cartão de crédito.

Avatar discord do usuario antoniofernandes

antoniofernandes

Ver Respostas

@igor_efi será que poderia me tirar algumas dúvidas com relação o sistema de assinaturas?

Imagine que crie um plano com os seguintes dados:

js
const body = {
name: 'Título do plano',
repeats: 3,
interval: 1,
}


1 - Considerando o exemplo acima, quem se inscrever nesse plano terá uma cobrança recorrente mensal que se repetirá por 3 meses. Correto?

2- Se sim, o que vai acontecer com assinatura no 4º mês? Eu receberei uma notificação para saber que assinatura finalizou, no caso para fazer uma tratativa para bloquear o acesso do meu cliente ou instrui-lo a fazer uma nova assinatura?

Avatar discord do usuario carvalhocarneiro

carvalhocarneiro

Ver Respostas

Um exemplo do que falei anteriormente.

Tentei executar esse código, conforme exemplo:

def gerar_pix(self):
try:
params = {
'idEnvio': 1
}

body = {
'valor': '0.01',
'pagador': {
'chave': ''
},
'favorecido': {
'chave': '0984256js-983458763no-0897345hg-oksj'
}
}
resultado = self.gn.pix_send(params=params, body=body)
print(resultado)
except Exception as error:
print(f"Erro {error}")