Skip to content

Current limitations

These are the limits you will meet when you build on the API today. Each one says what it means for your integration and what to do.

Ele does not send webhooks. Your backend learns about changes by asking. Poll the operation that shows the thing you are waiting for, for example a payment’s status, and slow down as you wait longer. See Staying in sync for what to poll for each workflow and how often.

No credential lets your server move money by itself. Creating a payment is something your backend can do, but a person must complete step-up before it is approved. Build an approval screen in your front end, show the person what they are approving, and pass on the code they enter. See Step-up and approvals.

Some operations exist for Ele’s own mobile apps. They would let a server sign in or approve with no person present. Do not call them from your backend. See Keep a person in the loop.

A session ends after 30 minutes without use, and 30 days after sign-in at the latest. Use does not extend the 30 days. Your backend must expect a 401 with the type not_authenticated, ask the person for their password and a fresh authenticator code, sign them in again, and retry. An authenticator code works once, so this always needs the person. See How long a session lasts.

A passkey is bound to Ele’s own web address, so your server cannot complete a passkey sign-in. A person who has only a passkey, and no authenticator app, cannot sign in through your backend. Ask them to set up an authenticator app. See Passkeys.

A user can own 3 organizations by default. The limit is user.organization_limit on getMe. Past it, createOrganization answers 422 organization_limit_reached. If you will onboard many clients, ask your Ele contact to raise the limit before you start. See Onboarding.

An individual organization belongs to one person. That person creates it, and their own session must complete its onboarding. Your server alone cannot do it: the person works through the steps in your front end. See Individual organizations.

Card numbers and security codes are not available

Section titled “Card numbers and security codes are not available”

Card numbers and security codes (CVV) cannot be read through the API. Plan your card screens around what the API does return: see What you can do on the Cards page.

Many payment refusals have no specific error type

Section titled “Many payment refusals have no specific error type”

executePayment answers many refusals as a plain 422 unprocessable_entity, with the reason only in message. Do not match on the type to decide what went wrong. Show the message to the person. See Common errors.

Field names differ between requirements and destinations

Section titled “Field names differ between requirements and destinations”

getPaymentDestinationRequirements returns field names in camelCase, such as accountNumber. The destination you send uses snake_case for the same fields, such as account_number. Convert the names when you build the form. See Paying out.

Ele publishes a TypeScript SDK but no Go SDK. Generate a typed client from the OpenAPI spec, as Go client describes, or call the API with the standard library’s net/http. See Example code.