---
updatedAt: 2026-07-08T10:26:39.000Z
agentTools:
  projectIndex: https://docs.payabl.com/llms.txt
---

# Prerequisites Server-Side Setup

Before integrating the mobile clients, ensure your backend is configured to communicate with the payabl. gateway. The SDK requires a session initialized by your server. Please refer to our dedicated <Anchor label="Setup Your Server" target="_blank" href="https://docs.payabl.com/docs/setup-your-server">Setup Your Server</Anchor> documentation for more details.

### Server-Side Requirements

* **Session Creation:** Your backend must call the `mobile/init` API to generate a `session_id` and `ephemeral_key`.
* **Callback URLs:** For Instant Bank Transfers, you must define redirect URLs in the initialization request (even if they are marked as optional elsewhere):
  * `url_success`: Redirect after a successful payment.
  * `url_failed`: Redirect after a failed or cancelled payment.
  * `url_return`: Generic Redirect url.
  * `notification_url`: Server-to-server webhook for final confirmation.
  * `app_schema`: Required custom URL scheme for deep linking (e.g., "payabl", "yourapp"). If not specified, you may receive an error from the backend. This value should match the android:scheme in your AndroidManifest deep link configuration.

Apart from `notification_url`, all other URLs can be custom schemes or App Links.

**Examples:**

* Custom link: `payabl://payment-confirmation`
* App Link\*: <https://payabl.com/payment-callback/success.php>

```text
{
  ...
  "app_schema": "payabl",
	"url_failed": "payabl://payment-callback/failed",
  "url_success": "payabl://payment-callback/success",
  "notification_url": "https://your-server.com/api/webhook",
  "url_return": "https://payabl.com/payment-callback/redirect_response.php"
  ...
}
```