<?xml version="1.0" encoding="utf-8"?>
<html xmlns:MadCap="http://www.madcapsoftware.com/Schemas/MadCap.xsd">
<head>
<link href="../Resources/TableStyles/NewStyle.css" rel="stylesheet" MadCap:stylesheetType="table" />
</head>
<body>
<h1 class="main-container-header">API Architecture</h1>
<table style="width: 100%;">
<col style="width: 859px;" />
<col style="width: 1141px;" />
<tbody>
<tr>
<td style="width: 100%;">
<!-- main - container start -->
<div class="main-container">
<!-- main left content start -->
<div class="main-content">
<p>The communication interface between the vendor and the EVI is performed by server-to-server requests via HTTPS (using POST method). Requests and responses are sent as JSON. The structure of the JSON and the elements information are defined in this document.</p>
<h2>Requests Authentication</h2>
<p>All requests that are sent to the operator should be authenticated. Each request contains Username and Password parameters inside the Account object. Pariplay will supply the operator with dedicated credentials.</p>
<h2>Error Handling</h2>
<p>If the ErrorCode parameter equals to 0 or not exist, then the response was processed successfully with no error. In Case the ErrorCode > 0, it means that the response was processed with an error.</p>
<h2 style="font-weight: bold;">Possible Financial API Error Codes</h2>
<table style="mc-table-style: url('../Resources/TableStyles/NewStyle.css');margin-left: 0;margin-right: auto;" class="TableStyle-NewStyle" cellspacing="3">
<col class="TableStyle-NewStyle-Column-Column1" />
<col class="TableStyle-NewStyle-Column-Column2" />
<col class="TableStyle-NewStyle-Column-Column3" />
<thead>
<tr class="TableStyle-NewStyle-Head-Header1">
<th class="TableStyle-NewStyle-HeadE-Column1-Header1">
<p>Name</p>
</th>
<th class="TableStyle-NewStyle-HeadE-Column2-Header1">
<p>Code</p>
</th>
<th class="TableStyle-NewStyle-HeadD-Column3-Header1">
<p>Comments</p>
</th>
</tr>
</thead>
<tbody>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>InsufficientFunds</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>1</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>Player doesn't
have enough funds in order to make a wager.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>AuthenticateFailed</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>2</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>The credentials provided in the API are wrong.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>InvalidGame</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>3</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>The GameCode provided in the API is wrong.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>InvalidToken</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>4</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>Token was not found.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>InvalidRound</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>5</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>Round was not found.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>InvalidPlayerId</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>6</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>Player
Id was not found.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>UnkownTransactionId</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>7</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>Transaction Id was not found.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>AmountEqualOrLowerThanZero</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>8</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>The amount is equal or lower than zero.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>RoundAlreadyEnded</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>9</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>The
round is already ended.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>ResponsibleGamingError</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>10</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>Simillar to
"InsufficientFunds", the
player is unable to make a wager because of responsible gaming settings</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">VoucherNotFound</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">16</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">Voucher with the specified id is not found</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">VoucherAllreadyEnded</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">17</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">Voucher is already ended in the system</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">ResponsibleGamingLimitReached</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">18</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">Bet limit is reached</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">SessionTimeLimitReached</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">19</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">Time limit is reached for the current session</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyB-Column1-Body2">SessionLossLimitReached</td>
<td class="TableStyle-NewStyle-BodyB-Column2-Body2">20</td>
<td class="TableStyle-NewStyle-BodyA-Column3-Body2">Loss limit is reached for the current session</td>
</tr>
</tbody>
</table>
<p> </p>
<h2>Possible Services API Error Codes</h2>
<table style="margin-left: 0;margin-right: auto;mc-table-style: url('../Resources/TableStyles/NewStyle.css');" class="TableStyle-NewStyle" cellspacing="3">
<col class="TableStyle-NewStyle-Column-Column1" />
<col class="TableStyle-NewStyle-Column-Column2" />
<col class="TableStyle-NewStyle-Column-Column3" />
<thead>
<tr class="TableStyle-NewStyle-Head-Header1">
<th class="TableStyle-NewStyle-HeadE-Column1-Header1">
<p>Name</p>
</th>
<th class="TableStyle-NewStyle-HeadE-Column2-Header1">
<p>Code</p>
</th>
<th class="TableStyle-NewStyle-HeadD-Column3-Header1">
<p>Comments</p>
</th>
</tr>
</thead>
<tbody>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>AuthenticateFailed</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>1</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>The credentials
provided in the API are wrong.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>InvalidRound</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>2</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>Round
was not found.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>InvalidPlayerId</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>3</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>Player Id was not found.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>InvalidBonusId</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>4</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>The BonusId is invalid.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>InvalidGame</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>5</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>The GameCode
provided in the API is wrong.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyE-Column1-Body1">
<p>InvalidCurrencyCode</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body1">
<p>6</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body1">
<p>Invalid currency code.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body2">
<td class="TableStyle-NewStyle-BodyE-Column1-Body2">
<p>InvalidCountryCode</p>
</td>
<td class="TableStyle-NewStyle-BodyE-Column2-Body2">
<p>7</p>
</td>
<td class="TableStyle-NewStyle-BodyD-Column3-Body2">
<p>Invalid country code.</p>
</td>
</tr>
<tr class="TableStyle-NewStyle-Body-Body1">
<td class="TableStyle-NewStyle-BodyB-Column1-Body1">
<p>GeneralError</p>
</td>
<td class="TableStyle-NewStyle-BodyB-Column2-Body1">
<p>900</p>
</td>
<td class="TableStyle-NewStyle-BodyA-Column3-Body1">
<p>General
error.</p>
</td>
</tr>
</tbody>
</table>
<p> </p>
<p> </p>
<p style="font-size: 14pt;"><b>Examples:</b>
</p>
<p><b>OK response</b>
</p>
<p>{</p>
<p>"TransactionId": "521616",</p>
<p>"Balance": 197516.35</p>
<p>}</p>
<p> </p>
<p><b>Error response </b>
</p>
<p>{</p>
<p>"Balance": 197599.35,</p>
<p>"ErrorCode": 1</p>
<p>}</p>
<p> </p>
<p><b>Notification Error Response</b>
</p>
<p>{</p>
<p>"TransactionId": "521616",</p>
<p>"ErrorCode": 100</p>
<p>}</p>
</div>
<!-- main left content end -->
<!-- main right toc start-->
<div class="main-content-toc"><b>Table of Contents</b>
<MadCap:menuProxy mc-linked-toc="$topicHeadings" style="mc-toc-depth: 2;mc-context-sensitive: True;mc-include-parent: True;mc-include-siblings: True;mc-include-children: True;">
</MadCap:menuProxy>
<p> </p>
</div>
<!-- main right toc end -->
</div>
<!-- main - container end -->
</td>
</tr>
</tbody>
</table>
</body>
</html>