Skip to main content
Tx authorization
curl --request POST \
  --url https://api.example.com/client-interfaces/pmo/tx-authorization \
  --header 'Content-Type: application/json' \
  --data '
{
  "SenderPersonalData": {
    "FirstName": "<string>",
    "LastName": "<string>",
    "Gender": "<string>",
    "BirthDate": "<string>",
    "Address": {
      "Address1": "<string>",
      "ZipCode": "<string>",
      "City": "<string>",
      "CountryCode": "<string>",
      "StateCode": "<string>",
      "Address2": "<string>"
    },
    "PhoneNumber": "<string>",
    "Email": "<string>",
    "MiddleName": "<string>",
    "LastName2": "<string>"
  },
  "ReceiverPersonalData": {
    "FirstName": "<string>",
    "LastName": "<string>",
    "Gender": "<string>",
    "BirthDate": "<string>",
    "Address": {
      "Address1": "<string>",
      "ZipCode": "<string>",
      "City": "<string>",
      "CountryCode": "<string>",
      "StateCode": "<string>",
      "Address2": "<string>"
    },
    "PhoneNumber": "<string>",
    "Email": "<string>",
    "MiddleName": "<string>",
    "LastName2": "<string>"
  },
  "Amount": 123,
  "Currency": "<string>",
  "ExchangeRate": 123,
  "AccountIdentifier": "<string>"
}
'
{
  "Authorized": true,
  "TrackingIdentifier": "<string>",
  "AccountIdentifier": "<string>",
  "DisplayName": "<string>"
}
This API MUST be implemented by the Partner. Platform’s backend will check for fund availability and business rules before processing a transaction.
Our backend will consume this service by performing a POST request to: [Base-URL]/TxAuthorization. Expected behavior: Authorization request to process a funds transaction between two parties (Sender and Recipient). The partner will internally validate the balance, limits, and compliance rules (e.g., AML, Velocity), responding whether the operation is Authorized (accompanied by a TrackingIdentifier) or denied for a specific reason in NonAuthorizedReason.

Body

application/json
SenderPersonalData
object
required

Personal information. At least one of PhoneNumber or Email must be provided.

ReceiverPersonalData
object
required

Personal information. At least one of PhoneNumber or Email must be provided.

Amount
number<double>
required
Currency
string
required

3 chars

ExchangeRate
number<double>
required
AccountIdentifier
string

Response

200 - application/json

Ok

Authorized
boolean
required
TrackingIdentifier
string
required
AccountIdentifier
string

Null or empty if is not found. If Null or empty, Authorized will be ignored.

DisplayName
string

Max 10, Only these chars -> [-_a-zA-Z0-9. If Null or empty, it will be Parner Prefix (configured in backend) + last four Account numbers (e.g. PRTN-0141).

NonAuthorizedReason
enum<string>
Available options:
None,
AccountBlocked,
AccountBlockedByLaw,
AccountBlockedByGovernment,
ByVelocity,
ByAmountLimit,
ByAccumulateAmountLimit,
InvalidAccount,
InvalidParameter,
InvalidCurrency,
InvalidSenderData,
InvalidDestinationData,
InvalidExchangeRate,
NonMatchingCurrencyAccount,
InvalidAmount