Registro de pessoas sem formulário (Avançado)
Integração onde você precisa ter controle total sobre o formulário e a submissão dos dados.
Pré-requisitos
Para a integração do cadastro, é necessário receber da Niara os seguintes parâmetros:
tenantId
clientId
storefrontId
loyaltyConfigurationId
Resumo
- Criar objeto que representa uma pessoa na página
- Configurar e inserir código javascript
Criar objeto pessoa
Exemplo
const person = {
firstName: 'Nome',
lastName: 'Sobrenome',
email: 'email@email.com',
cpf: '01234567890',
phone: '+5511900000000',
dob: '01/01/1990',
loyaltyOptIn: true,
acceptTerms: true,
}
Campos do objeto pessoa
Aqui vamos mostrar os principais campos que precisamos para criar a integração básica com a API Niara com a criação de pessoas em nossa base a partir do seu objeto.
São 8 campos que precisamos que eles estejam presentes para a criação de pessoas:
Nome | Descrição | Tipo | Obrigatório |
---|---|---|---|
firstName | Nome | Texto | Sim |
lastName | Sobrenome | Texto | Sim |
Texto | Sim | ||
cpf | Número de CPF | Texto | Sim |
phone | Número de telefone | Texto | Não |
dob | Data de nascimento | Texto formato (DD/MM/YYYY) | Não |
loyaltyOptIn | Campo de aceite das politicas de fidelidade | Checkbox (True/False) | Não |
acceptTerms | Campo de aceite dos termos e politicas | Checkbox (True/False) | Não |
Configurar e inserir código javascript
Segue código de exemplo de integração:
<script>
function initRegistrationForm(payload) {
function _i(r) {
if (r) {
r(payload, {
clientId: '<SEU CLIENT ID>',
tenantId: '<SEU TENANT ID>',
storefrontId: '<SEU STOREFRONT ID>',
loyaltyConfigurationId: '<SEU LOYALTY CONFIGURATION ID>',
feedbackContainerSelector: '#niara-registration-form-feedback-container',
onSuccess: function (person) {},
onError: function (errors) {},
})
}
}
var _k = '_NIARA_REGISTRATION_FORM_INIT_'
if (window[_k]) {
_i(window[_k])
} else {
function _l(e) {
_i(e.detail.registrationFormInit)
}
document.addEventListener('niara-registration-form-ready', _l)
}
}
function loadJS(url, location) {
var scriptTag = document.createElement('script')
scriptTag.src = url
scriptTag.crossOrigin = 'anonymous'
scriptTag.defer = true
scriptTag.async = true
location.appendChild(scriptTag)
}
loadJS('https://core-reservations.niara.tech/static/js/registration-form.js', document.body)
</script>
Criando a chamada da função de registro
Exemplo de chamada da função de registro usando jQuery:
<script>
$(document).ready(function () {
const person = {
firstName: 'Nome',
lastName: 'Sobrenome',
email: 'email@email.com',
cpf: '01234567890',
phone: '+5511900000000',
dob: '01/01/1990',
loyaltyOptIn: true,
acceptTerms: true,
}
window['_NIARA_REGISTER_FUNCTION'](person)
})
</script>
Funções de Callback
//Retorna um objeto com os dados do registro criado.
onSuccess: function (person) {
console.log(person)
},
//Retorna um array de string com os erros do retorno da requisição
onError: function (errors) {
console.error(errors)
},