Créer une règle d'automatisation

Il est possible dans Sinao de créer des règles afin de lancer des automatisations à la réception de transactions bancaires.

Les valeurs sont case insensitive donc "Client Test" ou "client test" sont valides


Ex.1 : Si le libellé de la transaction contient " Doe " alors associer cette transaction à la personne "John Doe"

1) Vous avez besoin d'aller chercher l'id de la personne John Doe , voir CONTACTS / Contacts Particuliers / liste des particuliers
Filtrer sur son nom pour isoler ce myContactPerson

2) Lancer la requête

var myHeaders = new Headers();

myHeaders.append("Authorization", "Bearer <token>");
myHeaders.append("Content-Type", "application/json");

const myContactPerson; // The contact person object

var raw = JSON.stringify({
  "conditions":[["label","contains"," Doe "]], // array of array [property, comparator, value]
  "on_event":"transaction.created",
  "parameter":"contact_person_id",
	"value":myContactPerson.id
});

var requestOptions = {
		method: 'POST',
		headers: myHeaders,
		body: raw,
		redirect: 'follow'
};

fetch("https://api.sinao.app/v1/apps/:appId/rules", requestOptions)
		.then(response => response.text())
		.catch(error => console.log('error', error));

Ex.2 : Si le libellé de la transaction contient "CLIENT TEST" alors associer cette transaction à l'entreprise "Client test"

1) Vous avez besoin d'aller chercher l'id de l'entreprise Client Test , voir CONTACTS / Contacts Entreprises / liste des entreprises
Filtrer sur son nom pour isoler ce myContactOrganization

2) Lancer la requête

var myHeaders = new Headers();

myHeaders.append("Authorization", "Bearer <token>");
myHeaders.append("Content-Type", "application/json");

const myContactOrganization; // The contact person object

var raw = JSON.stringify({
  "conditions":[["label","contains","Client Test"]], // array of array [property, comparator, value]
  "on_event":"transaction.created",
  "parameter":"contact_organization_id",
	"value":myContactOrganization.id
});

var requestOptions = {
		method: 'POST',
		headers: myHeaders,
		body: raw,
		redirect: 'follow'
};

fetch("https://api.sinao.app/v1/apps/:appId/rules", requestOptions)
		.then(response => response.text())
		.catch(error => console.log('error', error));

Ex.3 : Si le libellé de la transaction contient "Entretien" alors associer cette transaction au compte comptable "Prestations de services"

1) Vous avez besoin d'aller chercher l'id du compte comptable, voir COMPTABILITÉ / Lister les comptes comptables
Filtrer sur son nom pour isoler ce myAccountingAccount

2) Lancer la requête

var myHeaders = new Headers();

myHeaders.append("Authorization", "Bearer <token>");
myHeaders.append("Content-Type", "application/json");

const myAccountingAccount; // The account object

var raw = JSON.stringify({
  "conditions":[["label","contains","entretien"]], // array of array [property, comparator, value]
  "on_event":"transaction.created",
  "parameter":"account",
	"value":myAccountingAccount.id
});

var requestOptions = {
		method: 'POST',
		headers: myHeaders,
		body: raw,
		redirect: 'follow'
};

fetch("https://api.sinao.app/v1/apps/:appId/rules", requestOptions)
		.then(response => response.text())
		.catch(error => console.log('error', error));