PAYSTAR / DEVELOPER DOCUMENTATION
Reference dictionaries
Field names, currency identifiers, error handling and schemas, grouped for lookup.
Download just the dictionary you need using the links in each section. All separate downloads → · Combined dictionary file →
Download order statuses only · JSON ↓ · View order statuses in Downloads →
[01]
Additional fields
Download additional fields only · JSON ↓ · View additional fields in Downloads →
Every item has a key and a present, non-null scalar value. New examples use lowerCamelCase; required fields depend on the pipeline. These 47 names are a reference catalog, not a universal request schema. Ask your integration manager for the current required field set for your terminal.
Array structure and example
| Field | Presence | Type & meaning |
|---|---|---|
key | Required | stringCanonical documented casing is lowerCamelCase. minLength: 1 |
value | Required | string | number | booleanFlow-specific scalar. Presence and non-null value are normative; formats and ranges belong to the selected flow schema. |
{
"additionalFields": [
{
"key": "payeerIdentifier",
"value": "Merch-Customer-12345"
}
]
}payment method and card7 fields
| Field | Description / scope | Safe example |
|---|---|---|
productCode | Internal product or service code. Profile-specific; not universally required. | Merch-12345 |
cardNumber | Full card PAN. Only send through a PCI-authorized H2H flow. Profile-specific; not universally required. | <PAN> |
cardExpireMonth | Card expiry month in MM format. Profile-specific; not universally required. | 05 |
cardExpireYear | Card expiry year in YY format. Profile-specific; not universally required. | 26 |
cardCvv | CVV/CVC, 3–4 digits. Must never be stored. Profile-specific; not universally required. | <CVV> |
cardHolder | Name printed on the card. Profile-specific; not universally required. | JOHN DOE |
cardToken | Tokenized card identifier issued by a bank/provider. Profile-specific; not universally required. | <BANK_CARD_TOKEN> |
tokenization1 fields
| Field | Description / scope | Safe example |
|---|---|---|
cardStorageToken | Token used for subsequent payments in the merchant tokenized flow; availability and storage responsibility depend on the assigned profile. Profile-specific; not universally required. | <PAYSTAR_CARD_STORAGE_TOKEN> |
payment method1 fields
| Field | Description / scope | Safe example |
|---|---|---|
type | Payment type selector used in examples, e.g. card; not listed in the field catalog. Profile-specific; not universally required. | card |
customer identity kyc6 fields
| Field | Description / scope | Safe example |
|---|---|---|
firstName | Customer first name. Profile-specific; not universally required. | John |
middleName | Customer middle name. Profile-specific; not universally required. | Michael |
lastName | Customer last name. Profile-specific; not universally required. | Smith |
customerDocumentId | Government-issued document identifier; include document type where required. Profile-specific; not universally required. | Passport <ID> |
customerBirthdayDate | Date of birth in YYYY-MM-DD format. Profile-specific; not universally required. | 1990-04-05 |
customerNationality | Nationality, ISO 3166-1 alpha-3. Profile-specific; not universally required. | NLD |
customer contact and address10 fields
| Field | Description / scope | Safe example |
|---|---|---|
email | Customer email address. Profile-specific; not universally required. | customer@example.com |
phoneNumber | Customer phone number. Profile-specific; not universally required. | 31612345678 |
telecomOperator | Mobile network enum/name used for telecom payments and routing. Profile-specific; not universally required. | vodafone-uk |
dialingCode | International dialing code. Profile-specific; not universally required. | 31 |
customerAddress | Customer street address. Profile-specific; not universally required. | 123 Main Street |
customerCity | Customer city/locality. Profile-specific; not universally required. | Amsterdam |
customerState | State or region where applicable. Profile-specific; not universally required. | Noord-Holland |
customerZipCode | Postal or ZIP code. Profile-specific; not universally required. | 1012 AB |
customerCountryCode | ISO 3166-1 alpha-3 country code. Profile-specific; not universally required. | NLD |
customerCountry | Full country name if required by the downstream PSP. Profile-specific; not universally required. | Netherlands |
bank and payment details7 fields
| Field | Description / scope | Safe example |
|---|---|---|
beneficiaryName | Legal name of the beneficiary/account holder. Profile-specific; not universally required. | John Smith |
bankName | Bank enum/name used for routing. Profile-specific; not universally required. | all |
bankAccount | Beneficiary bank account number. Profile-specific; not universally required. | <ACCOUNT_NUMBER> |
iban | International Bank Account Number. Profile-specific; not universally required. | <IBAN> |
bankCode | Country-specific national bank identifier. Profile-specific; not universally required. | <BANK_CODE> |
bankBranch | Local branch identifier/name. Profile-specific; not universally required. | <BRANCH> |
ifcsCode | Documented key for Indian IFSC code. Profile-specific; not universally required. | HDFC0001234 |
crypto1 fields
| Field | Description / scope | Safe example |
|---|---|---|
cryptoWalletAdress | Documented key for a crypto wallet address; chain may also be needed. Profile-specific; not universally required. | <WALLET_ADDRESS> |
browser and 3ds10 fields
| Field | Description / scope | Safe example |
|---|---|---|
browserUserAgent | Full browser User-Agent string. Profile-specific; not universally required. | <USER_AGENT> |
browserAcceptHeader | Browser HTTP Accept header. Profile-specific; not universally required. | text/html,application/xhtml+xml |
browserLanguage | Browser language. Profile-specific; not universally required. | en-GB |
browserJavaEnabled | Whether Java is enabled. Profile-specific; not universally required. | true |
browserJavascriptEnabled | Whether JavaScript is enabled. Profile-specific; not universally required. | true |
browserColorDepth | Screen color depth in bits. Profile-specific; not universally required. | 24 |
browserScreenWidth | Screen width in pixels. Profile-specific; not universally required. | 1920 |
browserScreenHeight | Screen height in pixels. Profile-specific; not universally required. | 1080 |
browserTZ | Timezone offset from UTC in minutes. Profile-specific; not universally required. | -120 |
browserChallengeWindowSize | 3DS challenge window code: 01=250x400, 02=390x400, 03=500x600. Profile-specific; not universally required. | 03 |
merchant and store1 fields
| Field | Description / scope | Safe example |
|---|---|---|
storeUrl | Merchant website or checkout URL. Profile-specific; not universally required. | https://merchant.example.com/ |
miscellaneous2 fields
| Field | Description / scope | Safe example |
|---|---|---|
ip | End-user IP address. Profile-specific; not universally required. | 203.0.113.10 |
payeerIdentifier | Payer/customer identifier on the merchant side. Profile-specific; not universally required. | Merch-Customer-12345 |
sandbox1 fields
| Field | Description / scope | Safe example |
|---|---|---|
ExpectedResult | Legacy-documented sandbox control; casing, supported outcomes and profile applicability require confirmation. Not verified by this test set. optional_test_only | status=failed |
[02]
Currency codes
Download currencies only · JSON ↓ · View currencies in Downloads →
179 published reference identifiers.
currency is a string key. There is no lexical length or pattern validation: values such as USDT_TRC20 can be submitted. Passing the request schema does not mean that the currency is known, enabled for your profile or routable.
- Internal currency dictionary lookup. PayStar looks up the submitted key. An unknown currency is rejected at this stage.
- Pipeline route lookup. For a known currency, payment creation searches for a route matching the pipeline conditions. A known currency can still have no matching route.
Fiat commonly uses ISO 4217 alpha-3 codes, such as RUB. Crypto may use an asset/network key, such as USDT_TRC20. Use the exact value supplied for your integration; this example is not a promise of crypto support on your key. Confirm the available currencies and limits with your manager. Do not infer case-insensitive lookup or aliases.
The catalog below is a published ISO-style reference, not the full internal currency dictionary. It does not enumerate crypto support. Balance remains a read-only lookup with its own outcomes; the creation routing sequence does not apply to it.
Alpha-3 currency catalog179 entries
| Code | Numeric code | Currency |
|---|---|---|
AED | 784 | UAE Dirham |
AFN | 971 | Afghani |
ALL | 008 | Lek |
AMD | 051 | Armenian Dram |
ANG | 532 | Netherlands Antillean Guilder |
AOA | 973 | Kwanza |
ARS | 032 | Argentine Peso |
AUD | 036 | Australian Dollar |
AWG | 533 | Aruban Florin |
AZN | 944 | Azerbaijan Manat |
BAM | 977 | Convertible Mark |
BBD | 052 | Barbados Dollar |
BDT | 050 | Taka |
BGN | 975 | Bulgarian Lev |
BHD | 048 | Bahraini Dinar |
BIF | 108 | Burundi Franc |
BMD | 060 | Bermudian Dollar |
BND | 096 | Brunei Dollar |
BOB | 068 | Boliviano |
BOV | 984 | Mvdol |
BRL | 986 | Brazilian Real |
BSD | 044 | Bahamian Dollar |
BTN | 064 | Ngultrum |
BWP | 072 | Pula |
BYN | 933 | Belarusian Ruble |
BZD | 084 | Belize Dollar |
CAD | 124 | Canadian Dollar |
CDF | 976 | Congolese Franc |
CHE | 947 | WIR Euro |
CHF | 756 | Swiss Franc |
CHW | 948 | WIR Franc |
CLF | 990 | Unidad de Fomento |
CLP | 152 | Chilean Peso |
CNY | 156 | Yuan Renminbi |
COP | 170 | Colombian Peso |
COU | 970 | Unidad de Valor Real |
CRC | 188 | Costa Rican Colon |
CUC | 931 | Peso Convertible |
CUP | 192 | Cuban Peso |
CVE | 132 | Cabo Verde Escudo |
CZK | 203 | Czech Koruna |
DJF | 262 | Djibouti Franc |
DKK | 208 | Danish Krone |
DOP | 214 | Dominican Peso |
DZD | 012 | Algerian Dinar |
EGP | 818 | Egyptian Pound |
ERN | 232 | Nakfa |
ETB | 230 | Ethiopian Birr |
EUR | 978 | Euro |
FJD | 242 | Fiji Dollar |
FKP | 238 | Falkland Islands Pound |
GBP | 826 | Pound Sterling |
GEL | 981 | Lari |
GHS | 936 | Ghana Cedi |
GIP | 292 | Gibraltar Pound |
GMD | 270 | Dalasi |
GNF | 324 | Guinean Franc |
GTQ | 320 | Quetzal |
GYD | 328 | Guyana Dollar |
HKD | 344 | Hong Kong Dollar |
HNL | 340 | Lempira |
HTG | 332 | Gourde |
HUF | 348 | Forint |
IDR | 360 | Rupiah |
ILS | 376 | New Israeli Sheqel |
INR | 356 | Indian Rupee |
IQD | 368 | Iraqi Dinar |
IRR | 364 | Iranian Rial |
ISK | 352 | Iceland Krona |
JMD | 388 | Jamaican Dollar |
JOD | 400 | Jordanian Dinar |
JPY | 392 | Yen |
KES | 404 | Kenyan Shilling |
KGS | 417 | Som |
KHR | 116 | Riel |
KMF | 174 | Comorian Franc |
KPW | 408 | North Korean Won |
KRW | 410 | Won |
KWD | 414 | Kuwaiti Dinar |
KYD | 136 | Cayman Islands Dollar |
KZT | 398 | Tenge |
LAK | 418 | Lao Kip |
LBP | 422 | Lebanese Pound |
LKR | 144 | Sri Lanka Rupee |
LRD | 430 | Liberian Dollar |
LSL | 426 | Loti |
LYD | 434 | Libyan Dinar |
MAD | 504 | Moroccan Dirham |
MDL | 498 | Moldovan Leu |
MGA | 969 | Malagasy Ariary |
MKD | 807 | Denar |
MMK | 104 | Kyat |
MNT | 496 | Tugrik |
MOP | 446 | Pataca |
MRU | 929 | Ouguiya |
MUR | 480 | Mauritius Rupee |
MVR | 462 | Rufiyaa |
MWK | 454 | Malawi Kwacha |
MXN | 484 | Mexican Peso |
MXV | 979 | Mexican Unidad de Inversion |
MYR | 458 | Malaysian Ringgit |
MZN | 943 | Mozambique Metical |
NAD | 516 | Namibia Dollar |
NGN | 566 | Naira |
NIO | 558 | Cordoba Oro |
NOK | 578 | Norwegian Krone |
NPR | 524 | Nepalese Rupee |
NZD | 554 | New Zealand Dollar |
OMR | 512 | Rial Omani |
PAB | 590 | Balboa |
PEN | 604 | Sol |
PGK | 598 | Kina |
PHP | 608 | Philippine Peso |
PKR | 586 | Pakistan Rupee |
PLN | 985 | Zloty |
PYG | 600 | Guarani |
QAR | 634 | Qatari Rial |
RON | 946 | Romanian Leu |
RSD | 941 | Serbian Dinar |
RUB | 643 | Russian Ruble |
RWF | 646 | Rwanda Franc |
SAR | 682 | Saudi Riyal |
SBD | 090 | Solomon Islands Dollar |
SCR | 690 | Seychelles Rupee |
SDG | 938 | Sudanese Pound |
SEK | 752 | Swedish Krona |
SGD | 702 | Singapore Dollar |
SHP | 654 | Saint Helena Pound |
SLE | 925 | Leone |
SOS | 706 | Somali Shilling |
SRD | 968 | Surinam Dollar |
SSP | 728 | South Sudanese Pound |
STN | 930 | Dobra |
SVC | 222 | El Salvador Colon |
SYP | 760 | Syrian Pound |
SZL | 748 | Lilangeni |
THB | 764 | Baht |
TJS | 972 | Somoni |
TMT | 934 | Turkmenistan New Manat |
TND | 788 | Tunisian Dinar |
TOP | 776 | Pa’anga |
TRY | 949 | Turkish Lira |
TTD | 780 | Trinidad and Tobago Dollar |
TWD | 901 | New Taiwan Dollar |
TZS | 834 | Tanzanian Shilling |
UAH | 980 | Hryvnia |
UGX | 800 | Uganda Shilling |
USD | 840 | US Dollar |
USN | 997 | US Dollar (Next day) |
UYI | 940 | Uruguay Peso en Unidades Indexadas (UI) |
UYU | 858 | Peso Uruguayo |
UYW | 927 | Unidad Previsional |
UZS | 860 | Uzbekistan Sum |
VED | 926 | Bolívar Soberano |
VES | 928 | Bolívar Soberano |
VND | 704 | Dong |
VUV | 548 | Vatu |
WST | 882 | Tala |
XAF | 950 | CFA Franc BEAC |
XAG | 961 | Silver |
XAU | 959 | Gold |
XBA | 955 | Bond Markets Unit European Composite Unit (EURCO) |
XBB | 956 | Bond Markets Unit European Monetary Unit (E.M.U.-6) |
XBC | 957 | Bond Markets Unit European Unit of Account 9 (E.U.A.-9) |
XBD | 958 | Bond Markets Unit European Unit of Account 17 (E.U.A.-17) |
XCD | 951 | East Caribbean Dollar |
XDR | 960 | SDR (Special Drawing Right) |
XOF | 952 | CFA Franc BCEAO |
XPD | 964 | Palladium |
XPF | 953 | CFP Franc |
XPT | 962 | Platinum |
XSU | 994 | Sucre |
XTS | 963 | Codes specifically reserved for testing purposes |
XUA | 965 | ADB Unit of Account |
XXX | 999 | The codes assigned for transactions where no currency is involved |
YER | 886 | Yemeni Rial |
ZAR | 710 | Rand |
ZMW | 967 | Zambian Kwacha |
ZWG | 924 | Zimbabwe Gold |
[03]
Bank names
Download bank scopes only · JSON ↓ · View bank scopes in Downloads →
bankName can guide routing when BIN-based identification is insufficient. Confirm the accepted bank value with PayStar; all is the documented broad selector.
Available scope reference
| Scope | Currency | Documented selector |
|---|---|---|
| Any bank & Any GEO | Profile-specific | all |
| Azerbaijan | AZN | Not supplied |
| Kazakhstan | KZT | Not supplied |
| Mongolia | MNT | Not supplied |
| Philippines | PHP | Not supplied |
| Poland | PLN | Not supplied |
| Republic of Moldova | MDL | Not supplied |
| Russia | RUB | Not supplied |
| Slovakia | EUR | Not supplied |
| Thailand | THB | Not supplied |
| Turkey | TRY | Not supplied |
| Ukraine | UAH | Not supplied |
| United Kingdom | GBP | Not supplied |
| Vietnam | VND | Not supplied |
[04]
Telecom operators
Download telecom operators only · JSON ↓ · View telecom operators in Downloads →
Use the enum for the configured mobile-payment profile; inclusion does not guarantee routing.
Operator catalog31 entries
| Country | Operator | Enum |
|---|---|---|
| United Kingdom | Vodafone | vodafone-uk |
| United Kingdom | O2 (Telefónica) | o2-uk |
| United Kingdom | Everything Everywhere (EE) | everything-everywhere-uk |
| United Kingdom | TalkTalk | talk-talk-uk |
| Ukraine | Kievstar | kievstar-ua |
| Ukraine | Vodafon Ukraine | vodafon-ua |
| Ukraine | Lifecell | lifecell-ua |
| Ukraine | Intertelecom | intertelecom-ua |
| Republic of Moldova | Orange Moldova | orange-md |
| Republic of Moldova | Moldcell | moldcell-md |
| Republic of Moldova | Unite | unite-md |
| Poland | tMobile Poland | tMobile-pl |
| Poland | Orange Poland | orange-pl |
| Poland | Play | play-pl |
| Poland | Plus | plus-pl |
| Poland | Lykamobile | lykamobile-pl |
| Poland | Virgin | virginMobile-pl |
| Hungary | Magyar Telekom | magyarTelekom-hu |
| Hungary | Telenor | telenor-hu |
| Hungary | Vodafone Hungary | vodafone-hu |
| Slovakia | T-Com | t-com-sk |
| Slovakia | T-Mobile | t-mobile-sk |
| Slovakia | Orange Slovensko | orange-sk |
| Slovakia | UPC | upc-sk |
| Russia | Beeline | beeline-ru |
| Russia | Megafon | megafon-ru |
| Russia | МТС | mts-ru |
| Russia | Rostelecom | rostelecom-ru |
| Russia | Tele2 | tele2-ru |
| Russia | Yota | yota-ru |
| Russia | Tinkoff Mobile | tmobile-ru |
[05]
Errors and what to do next
Download errors only · JSON ↓ · View errors in Downloads →
Find the response condition below. Each scenario is listed once, with its scope, response body when available, and next action. Match documented structured codes, not exact message text. The catalog is not exhaustive.
Unsuccessful responseJSON response examples
HTTP 200 · Order created, processing failed
Applies to: P2P deposit H2H/H2C, ECOM H2H deposit, Hosted H2C deposit, Tokenized deposit, Payout.
The request produced an order, but processing failed. Keep the PayStar externalId and your original merchant order ID. This is not a rejection without an order.
HTTP: 200
Order created.
{
"externalId": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa",
"orderStatus": "Failed"
}What to do: HTTP 200 means the order was created, not that the payment succeeded. This body uses orderStatus, not status, and does not include payment details or a form URL. Inspect orderStatus and retain both order identifiers.
HTTP 423 · No matching channel or route
Applies to: P2P deposit H2H/H2C, ECOM H2H deposit, Hosted H2C deposit, Tokenized deposit, Payout.
The currency, amount, or other request parameters do not match available routing conditions for this pipeline. No order is created.
HTTP: 423
No new order created.
{
"label": "TEMPORARY_ERROR",
"message": "TEMPORARY_ERROR",
"statusDescrption": "0000-2",
"externalTransactionId": null,
"code": "1.2.4.3"
}What to do: Check the request parameters and the pipeline routing conditions with your manager.
HTTP 422 · Insufficient balance
Applies to: Payout.
Insufficient balance to create the payout. No order is created.
HTTP: 422. Owner-confirmed HTTP mapping (CREATE-HTTP-001, 15 September 2026) for this response example; not new per-flow live verification. Payout only.
No new order created.
{
"label": "TEMPORARY_ERROR",
"message": "TEMPORARY_ERROR",
"statusDescrption": "1-4010",
"externalTransactionId": null,
"code": "1.1.4.3"
}What to do: Confirm the balance involved with your manager; the payload alone does not identify an account or wallet.
HTTP 400 · Configured limit reached
Applies to: P2P deposit H2H/H2C, ECOM H2H deposit, Hosted H2C deposit, Tokenized deposit, Payout.
A configured limit was reached. No order is created.
HTTP: 400. Owner-confirmed HTTP mapping (CREATE-HTTP-001, 15 September 2026) for this response example; not new per-flow live verification. Deposit creation and payout.
No new order created.
{
"label": "LIMITS_ERROR",
"message": "Limit id: aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa was reached",
"statusDescrption": "0001-0",
"externalTransactionId": null
}What to do: The limit ID is illustrative. This example has no code field; do not map the error by a particular UUID or exact message text.
HTTP 400 · Duplicate merchant order ID
Applies to: P2P deposit H2H/H2C, ECOM H2H deposit, Hosted H2C deposit, Tokenized deposit, Payout.
An order with this merchant ID already exists. No new order is created by this rejected attempt.
HTTP: 400. Owner-confirmed HTTP mapping (CREATE-HTTP-001, 15 September 2026) for this response example; not new per-flow live verification. Deposit creation and payout.
No new order created.
{
"label": "VALIDATION_ERROR",
"message": "Order with this external_transaction_id already exist",
"statusDescrption": "1-4007",
"externalTransactionId": null,
"code": "1.1.5.1"
}Historical example: label VALIDATION_ERROR., without code or externalTransactionId. This is not a second current error.
What to do: Query the existing order using the original externalTransactionId from your request, even when externalTransactionId is null in this error. Do not replace the ID for a blind retry.
HTTP 400 · Required parameter missing
Applies to: P2P deposit H2H/H2C, ECOM H2H deposit, Hosted H2C deposit, Tokenized deposit, Payout.
A field required by the configured terminal is missing. No order is created.
HTTP: 400. Owner-confirmed HTTP mapping (CREATE-HTTP-001, 15 September 2026) for this response example; not new per-flow live verification. Deposit creation and payout.
No new order created.
{
"label": "VALIDATION_ERROR",
"message": "additionalField BankAccount not found in request data. Description: Beneficiary’s bank account number, e.g. 1234567890",
"statusDescrption": "0000-0",
"externalTransactionId": null,
"code": "1.2.4.8"
}What to do: BankAccount is an example of a configured requirement, not a mandatory field for every flow. Use the required-field list supplied for your terminal.
HTTP 423 · Unknown currency
Applies to: deposit_h2h, deposit_h2c.
CUR-002 (9 Sep 2026): unrecognized currency values, including RU and ZZZ, return the unknown-currency response. This is distinct from routing failure.
HTTP: 423. Owner-confirmed CUR-002; refined message not yet live-verified. Deposit H2H/H2C only; does not extend to Balance or payout.
{
"label": "TEMPORARY_ERROR",
"message": "Currency value \"RU\" is unknown",
"statusDescrption": "2-00100-2",
"externalTransactionId": null,
"code": "1.2.4.9"
}What to do: Use the exact currency key enabled for your integration; do not impose an alpha-3 format check. Unknown currency is detected during internal dictionary lookup, before route lookup. Do not branch on exact message text or automatically retry an unchanged request. The refined message is owner-confirmed, not yet live-verified.
HTTP 400 · General request validation
Applies to: deposit_create, payout_create.
Malformed request, missing required field, or invalid field value.
HTTP: 400. Legacy documented examples; distinguish these from configured-field validation. Create requests.
{
"label": "VALIDATION_ERROR.",
"message": "External_transaction_id is required property",
"statusDescrption": "0-0000"
}Other documented messages — same legacy envelope
Amount is required propertyCurrency is required propertycurrency has invalide value
What to do: Fix the request contract. Confirm flow-specific additional fields with the Account Manager.
Historical label VALIDATION_ERROR. and statusDescrption 0-0000 are retained verbatim. Message variants replace only message; do not match exact text or restore alpha-3 validation from the historical currency message.
HTTP 423 · Payment temporarily unavailable — legacy variant
Applies to: deposit_create, payout_create.
Distinct legacy payload with statusDescrption 0000-1, not the owner-confirmed 0000-2 routing response.
HTTP: 423. Legacy/general reference, not a universal routing mapping. Legacy documented create response.
{
"label": "TEMPORARY_ERROR",
"statusDescrption": "0000-1",
"message": "There is currently no possibility to make a payment, please try again later"
}What to do: Contact the Account Manager and check route/amount/currency/additional-field constraints.
HTTP and transport responsesIncludes responses without a JSON body
401 · authentication
Applies to: all.
Authorization header/key is missing or invalid.
HTTP: 401. Documented outcome. All operations.
May be empty; no JSON example is supplied.
What to do: Verify the Bearer token and that the correct deposit/payout key is used.
403 · forbidden
Applies to: all.
Access denied. The HTTP status or an empty body does not identify a single cause.
HTTP: 403. Documented outcome. All operations.
May be empty; no JSON example is supplied.
| Possible cause | What to check |
|---|---|
| The key/pipeline is not activated or lacks permission. | Contact the Account Manager. |
| The key is active but belongs to another flow type, e.g. payout key used for deposit. | Use the dedicated key for the requested operation. |
| Source IP is not whitelisted. | Ask the Account Manager to whitelist the IP; documentation says propagation can take up to one hour. |
What to do: Ask your manager to check the key, flow capability, pipeline and IP allowlist.
The legacy IP propagation estimate is not a newly verified SLA.
404 · payment not found
Applies to: status_endpoints.
No order found by this lookup.
HTTP: 404. Documented status-lookup outcome. Status lookups, not create rejection.
Use the response model documented for the status method; this catalog does not invent a body.
What to do: Verify whether a PayStar externalId or merchant externalTransactionId is expected by this endpoint. Continue the agreed uncertainty-resolution process.
415 · media type
Applies to: JSON requests.
Unsupported request content type.
HTTP: 415. Documented framework outcome. Request media type.
application/problem+json; not the PayStar BusinessError envelope.
What to do: Send application/json. ProblemDetails is a separate response model.
500 · server or configuration error
Applies to: create_and_some_status_endpoints.
A server or configuration failure does not establish whether an order was created.
HTTP: 500. Documented server-error outcome; other 5xx may also occur. Affected operations.
No universal JSON body is established.
What to do: Do not assume the order was not created. Query status before any cascade/retry.
No HTTP response
Applies to: all.
The create result may be unresolved.
HTTP: HTTP not specified. No HTTP response is a transport failure, not an API status code. Timeout, missing response or broken connection.
No HTTP response body.
What to do: Retain the original merchant ID. Query status by that ID before another create attempt or cascade; do not replace the ID for a blind retry.
BusinessError fields and matching rules
| Field | Presence | Type & meaning |
|---|---|---|
label | Required | string |
message | Required | stringDo not branch on exact message text. |
statusDescrption | Optional | string | nullCurrent compatible wire spelling, including the typo. |
externalTransactionId | Optional | string | null |
code | Optional | string | nullApplication code; the complete stable catalog is not yet documented. |
statusDescrption is the compatible wire spelling. Fields may be absent or null as documented; a missing error ID does not establish order state. The created-Failed payload is not a BusinessError envelope.
For any create error, 499+, timeout, broken connection, or missing response, check order status before initiating another attempt/cascade.
[06]
Payment history
Download payment history only · JSON ↓ · View payment history in Downloads →
orderStatus is authoritative for current state. Deposit status includes at least one history item; this does not promise an exhaustive trace. Payout history may be delayed or empty. This code catalog is partial: retain unknown values without guessing their meaning.
Documented action segments
| Segment | Meaning |
|---|---|
A_stage | 1 — PayStar2 — Gateway create3 — Hosted Payment Page / user interaction4 — Gateway polling |
B_operation_result | 0 — Info1 — Success2 — Failed |
C_payment_state | 0 — Init1 — Created2 — Processing3 — Success4 — Failed5 — Unchanged |
RR_reason_group | 00 — None11..19 — TECH21..29 — AUTHZ31..39 — BUSINESS41..49 — RISK51..59 — USER61..69 — ISSUER |
Examples and partial configuration codes
| Code | Meaning |
|---|---|
1.1.1.00 | PayStar: payment created |
2.1.1.00 | Gateway: payment created |
2.1.2.00 | Gateway: processing |
4.1.3.00 | Gateway polling: payment successful |
4.1.4.63 | Gateway polling: failed, issuer insufficient funds |
2.2.4.16 | Meaning not established; preserve as unknown. |
| New code / legacy code | Context |
|---|---|
1.2.4.18.11200-1-1 | Pipeline configuration missing formUrl. |
1.2.4.18.20000-911 | Endpoint has no pipeline/routes configured. |
1.2.4.18.30000-2 | Pipeline has no channel configured. |
1.2.4.18.40000-180924 | Gateway integration configuration invalid. |
1.2.4.18.50000-4 | Gateway implementation configuration invalid. |
[07]
Integration terms
Identifiers, pipelines and payment flows
| Term | Meaning |
|---|---|
| Pipeline | The configuration to which a key, access, routes, limits and required fields are assigned. |
| Merchant ID | Your original externalTransactionId, supplied when creating an order. |
| PayStar ID | The externalId returned by PayStar for the accepted order. |
| H2H | Server-to-server integration; distinguish P2P, acquiring and tokenized profiles. |
| H2C / hosted checkout | The customer uses a hosted payment form. P2P can use the PayStar form URL returned alongside payment instructions; the separate hosted-card profile handles card entry. |
| Callback | A configured asynchronous payment notification to your server. |
| Operational event | A platform/account alert, distinct from a payment callback. |
| cardStorageToken | A PayStar stored-card token; not interchangeable with a bank cardToken. |
| Routing | Selection of an available configured route; a currency catalog is not a route guarantee. |
[08]
Schema reference
Schema files in Downloads: OpenAPI JSON · OpenAPI YAML.
The baseline schemas and owner-approved additions below are also available in the downloads. The ECOM response is still an observed draft, not a newly approved schema.
CurrencyCode
{
"type": "string",
"example": "RUB",
"description": "Currency key as a string, with no lexical length or pattern validation. Values such as USDT_TRC20 can be submitted; this does not guarantee that a value is known or enabled. For payment creation, PayStar first looks up the exact submitted value in its internal currency dictionary, then searches for a route matching the pipeline conditions. Use the currency key provided for your integration. Fiat commonly uses ISO 4217 alpha-3 codes; crypto may use an asset/network key. Requiredness and operation-specific business errors remain unchanged.",
"x-paystar-owner-confirmed": true,
"x-paystar-currency-key": {
"decision": "CUR-CRYPTO-001",
"approvedAt": "2026-09-10",
"lexicalFormatValidation": false,
"paymentCreationProcessingOrder": [
"internal currency dictionary lookup",
"route lookup using pipeline conditions"
],
"illustrativeInput": "USDT_TRC20",
"illustrativeInputGuaranteesSupport": false,
"catalogScope": "Published ISO-style reference only; not an exhaustive internal currency dictionary or an enabled-currency list.",
"unchanged": [
"string type",
"field requiredness",
"operation-specific HTTP outcomes",
"amount rules"
],
"unconfirmed": [
"crypto catalog and profile support",
"dictionary casing and alias matching",
"missing/null/empty business behavior"
],
"balanceScope": "Shared lexical schema only; no order creation or route lookup is asserted for Balance."
}
}Amount
{
"type": "number",
"exclusiveMinimum": 0,
"example": 100,
"description": "Amount in major currency units. JSON number is normative; quoted numeric strings remain backward-compatible. Normal requests and displayed examples use two decimal places. Flow-specific min/max are routing configuration.",
"x-paystar-normal-decimal-places": 2,
"x-paystar-display-format": "0.00",
"x-paystar-string-compatibility": true
}ExternalTransactionId
{
"type": "string",
"minLength": 1,
"description": "Unique merchant-generated identifier used for status lookup and safe retry resolution."
}AdditionalFieldValue
{
"description": "Flow-specific scalar. Presence and non-null value are normative; formats and ranges belong to the selected flow schema.",
"oneOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
}
]
}AdditionalField
{
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string",
"minLength": 1,
"description": "Canonical documented casing is lowerCamelCase."
},
"value": {
"$ref": "#/components/schemas/AdditionalFieldValue"
}
}
}BaseDepositRequest
{
"type": "object",
"required": [
"amount",
"currency",
"externalTransactionId"
],
"properties": {
"amount": {
"allOf": [
{
"$ref": "#/components/schemas/Amount"
}
],
"x-paystar-p2p-rounding": {
"mode": "half-up",
"decimalPlaces": 2,
"examples": {
"100.124": 100.12,
"100.125": 100.13,
"100.126": 100.13
}
}
},
"currency": {
"$ref": "#/components/schemas/CurrencyCode"
},
"externalTransactionId": {
"$ref": "#/components/schemas/ExternalTransactionId"
},
"callbackUrl": {
"type": "string",
"format": "uri",
"description": "Optional callback URL."
},
"processingRedirectUrl": {
"type": "string",
"format": "uri"
},
"failedRedirectUrl": {
"type": "string",
"format": "uri"
},
"successRedirectUrl": {
"type": "string",
"format": "uri"
},
"additionalFields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AdditionalField"
},
"description": "Array of objects with key and value. The required field set depends on the individual configuration of each terminal (pipeline). Ask your integration manager for the current required fields before sending a request. A catalog entry is not automatically required or supported for every terminal."
}
}
}P2PDepositRequest
{
"title": "P2P H2H deposit request",
"allOf": [
{
"$ref": "#/components/schemas/BaseDepositRequest"
},
{
"type": "object",
"required": [
"processingRedirectUrl",
"failedRedirectUrl",
"successRedirectUrl"
]
}
]
}H2CDepositRequest
{
"title": "H2C hosted-form deposit request",
"allOf": [
{
"$ref": "#/components/schemas/BaseDepositRequest"
}
],
"x-paystar-pci-rule": "Merchant must not collect card data."
}TokenDepositRequest
{
"title": "Tokenized H2H deposit request",
"allOf": [
{
"$ref": "#/components/schemas/BaseDepositRequest"
},
{
"type": "object",
"required": [
"additionalFields"
],
"properties": {
"additionalFields": {
"type": "array",
"minContains": 1,
"contains": {
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"const": "cardStorageToken"
}
}
},
"items": {
"$ref": "#/components/schemas/AdditionalField"
}
}
}
}
]
}PayoutRequest
{
"type": "object",
"required": [
"amount",
"currency",
"externalTransactionId"
],
"properties": {
"amount": {
"$ref": "#/components/schemas/Amount"
},
"currency": {
"$ref": "#/components/schemas/CurrencyCode"
},
"externalTransactionId": {
"$ref": "#/components/schemas/ExternalTransactionId"
},
"callbackUrl": {
"type": "string",
"format": "uri"
},
"additionalFields": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AdditionalField"
},
"description": "Required key set is merchant- and flow-configured. Confirm it with the PayStar manager.",
"x-paystar-requiredness": "flow-specific"
}
},
"description": "Deposit redirect fields are not payout request fields and must not be added to canonical payout examples."
}P2PPaymentDetails
{
"type": "object",
"properties": {
"card": {
"type": [
"string",
"null"
],
"description": "Sensitive payment detail; redact in stored evidence."
},
"fio": {
"type": [
"string",
"null"
]
},
"bank": {
"type": [
"string",
"null"
]
},
"formUrl": {
"type": "string",
"format": "uri",
"description": "Required non-null PayStar payment-form URI in a valid accepted P2P response. The merchant may use this H2C presentation instead of displaying the returned payment instructions itself. Use the full returned URL, not this illustrative EXAMPLE_ONLY query. Never log one-time query tokens.",
"example": "https://p2p.paystar.uk/?EXAMPLE_ONLY"
},
"number": {
"description": "Recipient phone payment instruction at paymentDetails.number, not phoneNumber or card. It is a string in the owner example; preserve the plus sign and value as returned. No numeric conversion, E.164, length, requiredness or nullability rule is inferred.",
"example": "<RECIPIENT_PHONE_NUMBER>",
"x-paystar-observed-type": "string",
"x-paystar-confirmation": {
"source": "owner-provided example",
"date": "2026-09-10",
"decision": "P2P-DETAILS-001",
"requiredness": "not established for all profiles",
"nullability": "not established",
"noNewValueConstraints": true
}
},
"iban": {
"description": "IBAN payment instruction at paymentDetails.iban. Keep it as a string. Confirmed by the owner example, not a universal required field.",
"example": "<IBAN>",
"x-paystar-observed-type": "string",
"x-paystar-confirmation": {
"source": "owner-provided example",
"date": "2026-09-10",
"decision": "P2P-DETAILS-001",
"requiredness": "not established for all profiles",
"nullability": "not established",
"noNewValueConstraints": true
}
},
"accountNumber": {
"description": "Account-number payment instruction at paymentDetails.accountNumber, not bankAccount. Keep the string exactly as returned, including leading zeroes. It can coexist with qrUrl, as in the owner example.",
"example": "<ACCOUNT_NUMBER>",
"x-paystar-observed-type": "string",
"x-paystar-confirmation": {
"source": "owner-provided example",
"date": "2026-09-10",
"decision": "P2P-DETAILS-001",
"requiredness": "not established for all profiles",
"nullability": "not established",
"noNewValueConstraints": true
}
},
"qrUrl": {
"description": "QR content at paymentDetails.qrUrl. The owner labels this value Base64; despite the field name, it is not confirmed to be an HTTP URL. Actual QR bytes, MIME type and raw-Base64 versus data-URI envelope remain unconfirmed.",
"example": "<BASE64_QR_DATA>",
"x-paystar-observed-type": "string",
"x-paystar-confirmation": {
"source": "owner-provided example",
"date": "2026-09-10",
"decision": "P2P-DETAILS-001",
"requiredness": "not established for all profiles",
"nullability": "not established",
"noNewValueConstraints": true
}
},
"method": {
"description": "Method label at paymentDetails.method. ArsCbu is an owner-provided example, not a complete enum or a unique response-variant discriminator.",
"example": "ArsCbu",
"x-paystar-observed-type": "string",
"x-paystar-confirmation": {
"source": "owner-provided example",
"date": "2026-09-10",
"decision": "P2P-DETAILS-001",
"requiredness": "not established for all profiles",
"nullability": "not established",
"noNewValueConstraints": true
}
}
},
"required": [
"formUrl"
],
"description": "Payment instructions and the PayStar form URL returned together for P2P with an H2H gateway integration (P2P-FORM-001, owner-confirmed 2026-09-10).",
"x-paystar-detail-mapping": {
"decision": "P2P-DETAILS-001",
"confirmedAt": "2026-09-10",
"source": "owner-provided examples; no new live test",
"phoneNumberPathConfirmed": true,
"phoneNumberResponsePath": "paymentDetails.number",
"qrEncodingDetailsConfirmed": false,
"methodEnumConfirmed": false,
"exclusiveVariants": false
},
"examples": [
{
"fio": "<RECIPIENT_NAME>",
"bank": "<BANK_NAME>",
"number": "<RECIPIENT_PHONE_NUMBER>",
"formUrl": "https://checkout.example/EXAMPLE_ONLY"
},
{
"fio": "<RECIPIENT_NAME>",
"iban": "<IBAN>",
"formUrl": "https://checkout.example/EXAMPLE_ONLY"
},
{
"fio": "<RECIPIENT_NAME>",
"method": "ArsCbu",
"formUrl": "https://checkout.example/EXAMPLE_ONLY",
"accountNumber": "<ACCOUNT_NUMBER>"
},
{
"qrUrl": "<BASE64_QR_DATA>",
"fio": "<RECIPIENT_NAME>",
"method": "ArsCbu",
"formUrl": "https://checkout.example/EXAMPLE_ONLY",
"accountNumber": "<ACCOUNT_NUMBER>"
}
]
}P2PDepositCreateResponse
{
"type": "object",
"required": [
"externalId",
"orderStatus",
"paymentDetails"
],
"properties": {
"externalId": {
"type": "string"
},
"orderStatus": {
"type": "string",
"enum": [
"Processing"
]
},
"paymentDetails": {
"$ref": "#/components/schemas/P2PPaymentDetails"
}
},
"description": "When the gateway integration uses H2H, the same P2P create request returns both payment instructions and a PayStar payment-form URL. The merchant can display the instructions in its own checkout (H2H) or send the customer to the returned PayStar form (H2C), without creating another order or changing the request.",
"example": {
"externalId": "<PAYSTAR_ORDER_ID>",
"orderStatus": "Processing",
"paymentDetails": {
"card": "<REDACTED_PAYMENT_DETAIL>",
"fio": "<RECIPIENT_NAME>",
"bank": "<BANK_NAME>",
"formUrl": "https://p2p.paystar.uk/?EXAMPLE_ONLY"
}
},
"examples": [
{
"externalId": "<PAYSTAR_ORDER_ID>",
"orderStatus": "Processing",
"paymentDetails": {
"card": "<REDACTED_PAYMENT_DETAIL>",
"fio": "<RECIPIENT_NAME>",
"bank": "<BANK_NAME>",
"formUrl": "https://p2p.paystar.uk/?EXAMPLE_ONLY"
}
},
{
"externalId": "<PAYSTAR_ORDER_ID>",
"orderStatus": "Processing",
"paymentDetails": {
"fio": "<RECIPIENT_NAME>",
"bank": "<BANK_NAME>",
"number": "<RECIPIENT_PHONE_NUMBER>",
"formUrl": "https://checkout.example/EXAMPLE_ONLY"
}
},
{
"externalId": "<PAYSTAR_ORDER_ID>",
"orderStatus": "Processing",
"paymentDetails": {
"fio": "<RECIPIENT_NAME>",
"iban": "<IBAN>",
"formUrl": "https://checkout.example/EXAMPLE_ONLY"
}
},
{
"externalId": "<PAYSTAR_ORDER_ID>",
"orderStatus": "Processing",
"paymentDetails": {
"fio": "<RECIPIENT_NAME>",
"method": "ArsCbu",
"formUrl": "https://checkout.example/EXAMPLE_ONLY",
"accountNumber": "<ACCOUNT_NUMBER>"
}
},
{
"externalId": "<PAYSTAR_ORDER_ID>",
"orderStatus": "Processing",
"paymentDetails": {
"qrUrl": "<BASE64_QR_DATA>",
"fio": "<RECIPIENT_NAME>",
"method": "ArsCbu",
"formUrl": "https://checkout.example/EXAMPLE_ONLY",
"accountNumber": "<ACCOUNT_NUMBER>"
}
}
]
}H2CDepositCreateResponse
{
"type": "object",
"required": [
"externalId",
"orderStatus",
"formUrl"
],
"properties": {
"externalId": {
"type": "string"
},
"orderStatus": {
"type": "string",
"enum": [
"Init"
]
},
"formUrl": {
"type": "string",
"format": "uri"
}
}
}TokenDepositCreateResponse
{
"type": "object",
"required": [
"externalId",
"orderStatus"
],
"properties": {
"externalId": {
"type": "string"
},
"orderStatus": {
"type": "string",
"enum": [
"Processing"
]
},
"paymentDetails": {
"type": "object",
"properties": {
"formUrl": {
"type": [
"string",
"null"
],
"format": "uri"
}
}
}
}
}PayoutCreateResponse
{
"type": "object",
"required": [
"externalId",
"orderStatus"
],
"properties": {
"externalId": {
"type": "string"
},
"orderStatus": {
"type": "string",
"enum": [
"Created"
]
}
}
}OrderHistoryItem
{
"type": "object",
"properties": {
"time": {
"type": "string",
"format": "date-time",
"description": "History record time in UTC for deposit and payout status responses. If returned without Z or an offset, interpret this field as UTC, not local time (owner-confirmed 2026-09-08). The missing suffix remains a date-time wire-format discrepancy; this clarification does not relax the schema."
},
"action": {
"type": [
"string",
"null"
],
"description": "Payment History action code."
},
"newCode": {
"type": [
"string",
"null"
],
"description": "Additional Payment History code returned by the current API."
}
}
}ExternalParams
{
"type": "object",
"properties": {
"cardToken": {
"type": [
"string",
"null"
],
"writeOnly": false,
"description": "Sensitive; access and logging must be restricted."
},
"cardStorageToken": {
"type": [
"string",
"null"
],
"writeOnly": false,
"description": "Sensitive; access and logging must be restricted."
},
"cardHolder": {
"type": [
"string",
"null"
]
},
"cardNumber": {
"type": [
"string",
"null"
],
"description": "Must be masked when returned."
}
},
"additionalProperties": true,
"description": "Flow-dependent object; it may be absent or contain null fields."
}DepositStatusResponse
{
"type": "object",
"required": [
"externalId",
"orderStatus",
"orderHistory"
],
"properties": {
"externalId": {
"type": "string"
},
"orderStatus": {
"type": "string",
"enum": [
"Init",
"Created",
"Processing",
"Success",
"Failed"
],
"description": "Current deposit order state. P2P exception (P2P-STATE-001, owner-confirmed 2026-09-10): Failed is not unconditionally final; the same order with unchanged identifiers can be corrected to Success, usually after initiation by merchant support. The merchant must handle the corresponding callback update. A reverse Success-to-Failed business transition need not be implemented. This does not change other deposit flows, introduce new status values, define callback delivery guarantees or prescribe indefinite polling."
},
"amount": {
"$ref": "#/components/schemas/Amount"
},
"externalParams": {
"$ref": "#/components/schemas/ExternalParams"
},
"currency": {
"$ref": "#/components/schemas/CurrencyCode",
"description": "Currency key of the deposit, for example ARS. The response field is confirmed by owner examples; universal presence is not separately established. No alpha-3-only restriction is imposed."
},
"orderHistory": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OrderHistoryItem"
},
"description": "Required non-empty payment history: at least one item in deposit status responses, by merchant ID or PayStar ID (owner-confirmed 2026-09-11). Use orderStatus for the current state. A non-empty history is not a guarantee of a complete trace.",
"minItems": 1
}
},
"x-paystar-p2p-status-correction": {
"decision": "P2P-STATE-001",
"confirmedAt": "2026-09-10",
"scope": "P2P deposits, including merchant-side H2H/H2C presentation",
"from": "Failed",
"to": "Success",
"sameOrder": true,
"identifiersUnchanged": true,
"usualInitiator": "merchant support",
"callbackHandlingRequired": true,
"reverseBusinessTransitionRequired": false,
"liveCorrectionVerified": false,
"liveCallbackDeliveryVerified": false,
"correctionDeadlineConfirmed": false,
"pollingStopPolicyConfirmed": false,
"deliveryContract": "Payload, signature, acknowledgement and retry details still require approved fixtures; this lifecycle decision does not define them.",
"handling": "Process an authenticated Success correction for the existing P2P order even if it was Failed. Do not discard it solely because the order ID has been seen. Apply the successful business effect idempotently. Do not downgrade a stored Success to Failed; this does not waive callback validation or the agreed acknowledgement protocol."
},
"x-paystar-deposit-history": {
"decision": "DEP-STATUS-001",
"confirmedAt": "2026-09-11",
"scope": [
"getDepositStatusByMerchantId",
"getDepositStatusByPayStarId"
],
"required": true,
"minItems": 1,
"currentStateField": "orderStatus",
"completeTraceGuaranteed": false,
"payoutAndCallbackRulesChanged": false
}
}PayoutStatusResponse
{
"type": "object",
"required": [
"externalId",
"orderStatus"
],
"properties": {
"externalId": {
"type": "string"
},
"orderStatus": {
"type": "string",
"enum": [
"Created",
"Processing",
"Success",
"Failed"
]
},
"amount": {
"$ref": "#/components/schemas/Amount"
},
"externalParams": {
"$ref": "#/components/schemas/ExternalParams"
},
"orderHistory": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OrderHistoryItem"
},
"description": "Not guaranteed to be populated and may be delayed."
}
}
}Balance
{
"type": "object",
"required": [
"currency",
"merchantBalance",
"merchantOverdraft",
"pipelineBalance",
"pipelineAvailableBalance",
"pipelineProcessingOrdersDeposit",
"pipelineProcessingOrdersWithdrawals"
],
"properties": {
"currency": {
"type": "string"
},
"merchantBalance": {
"type": "number"
},
"merchantOverdraft": {
"type": "number"
},
"pipelineBalance": {
"type": "number"
},
"pipelineAvailableBalance": {
"type": "number"
},
"pipelineProcessingOrdersDeposit": {
"type": "number"
},
"pipelineProcessingOrdersWithdrawals": {
"type": "number"
}
}
}BusinessError
{
"type": "object",
"required": [
"label",
"message"
],
"properties": {
"label": {
"type": "string",
"examples": [
"VALIDATION_ERROR",
"REQUEST_VALIDATION_ERROR",
"TEMPORARY_ERROR",
"NOT_FOUND",
"INTERNAL_SERVER_ERROR"
]
},
"message": {
"type": "string",
"description": "Do not branch on exact message text."
},
"statusDescrption": {
"type": [
"string",
"null"
],
"description": "Current compatible wire spelling, including the typo."
},
"externalTransactionId": {
"type": [
"string",
"null"
]
},
"code": {
"type": [
"string",
"null"
],
"description": "Application code; the complete stable catalog is not yet documented."
}
}
}ProblemDetails415
{
"type": "object",
"required": [
"type",
"title",
"status"
],
"properties": {
"type": {
"type": "string",
"format": "uri"
},
"title": {
"type": "string",
"example": "Unsupported Media Type"
},
"status": {
"type": "integer",
"const": 415
},
"traceId": {
"type": "string"
}
}
}CreatedFailedResponse
{
"type": "object",
"required": [
"externalId",
"orderStatus"
],
"properties": {
"externalId": {
"type": "string"
},
"orderStatus": {
"type": "string",
"enum": [
"Failed"
]
}
}
}Need the required fields, currencies or limits for your pipeline?
Confirm your profile with Yegor ↗