Release 12.12.2024
Changelog
API Updates
To support new integrations, we have introduced a new field documentNumber in the response for the Retrieve Required Payout Fields endpoint (recipient/sender -> documentData -> documentNumber).
To support new integrations, we have introduced a new field documentNumber in the response for the Retrieve Required Payout Fields endpoint (recipient/sender -> documentData -> documentNumber).
To improve the payment experience and streamline the checkout process, we have updated how customer information is handled in our API.
New Feature: Introduced a details object within the customer object in the Create Order endpoint. Merchants can now provide additional customer details, specifically address information, which can be used to pre-fill the payer's information on the payment page.
To learn more about optimizing the payment page experience, see Optimize the Payment Page Experience.
details.addressData:
city: City name of the customer/payer.countryCode: ISO 3166-1 alpha-2 country code representing the customer's/payer's country.state: State or province name.zipCode: Postal code.Update: Expanded descriptions of existing transferType options to include:
fpx: Financial Process Exchange, an online payment gateway for real-time bank transfers.trustly: Direct bank transfer service allowing payments without using cards.As we continue to implement support for cryptocurrency payments/payouts, several updates have been made. All changes are backward-compatible, and additional enhancements are planned for future releases.
Update: Modified the rules for specifying cryptoTokenStandard and currency in the Create Order and Create Payout Request endpoints.
Update: Expanded the responses of the Retrieve Order Details endpoint under payments -> paymentDetails with new fields for instrumentType=crypto_wallet:
senderCryptoAddress: The sender's cryptocurrency wallet address.txHash: The transaction hash of the cryptocurrency payment.Update: Expanded the responses of the Retrieve Payout Status endpoint for instrumentType=crypto_wallet:
data -> payoutDetails -> sender:
senderCryptoAddress: The sender's cryptocurrency wallet address.txHash: The transaction hash of the cryptocurrency payout.data -> payoutDetails -> recipient:
recipientCryptoAddress: The recipient's cryptocurrency wallet address.recipientCryptoAddressMeta: Additional metadata about the recipient's crypto address, such as network or tag.txHash: The transaction hash of the cryptocurrency payout.Update: Adjusted the Order Status Webhook to align with the documentation. The order of fields within data -> payments -> paymentDetails has been corrected to ensure proper webhook signature formation. The updated field order is as follows:
Before:
"paymentDetails": {
"paymentSystem": "visa",
"maskedCardNumber": "123456******1234",
"rrn": "rrn583743856734",
"authCode": "auth94753457343"
}
After:
"paymentDetails": {
"paymentSystem": "visa",
"authCode": "auth94753457343",
"rrn": "rrn583743856734",
"maskedCardNumber": "123456******1234"
}
Update: Modified the Payout Status Webhook to match the documentation. The order of fields within data has been corrected for proper webhook signature formation. The updated field order is:
Before:
{
"data": {
"id": 54222,
"shopId": 123,
"payoutNumber": "56573FDFVFDBWF",
"payoutStatus": "in_progress",
"purpose": "string"
}
}
After:
{
"data": {
"shopId": 123,
"id": 54222,
"payoutStatus": "in_progress",
"payoutNumber": "56573FDFVFDBWF",
"purpose": "string"
}
}
All other functionalities remain unchanged.
dataEntryModes options have been introduced, including instruction, iframe, and html, providing flexible methods for customer data entry in the Retrieve Payment Methods and Create Order
endpoints.transferType options for payouts, adding the following new methods:
sbp - Russian System for Fast Paymentsopen_finance - Open banking optionsvirtual_account - Virtual account paymentsspei - Mexican interbank electronic payments (SPEI)vietqr - Vietnamese QR code paymentspaysafecard - Prepaid voucher servicemultibanco - Portuguese bank transfer methodbancontact - Belgian payment methodblik - Polish mobile payment systemp24 - Przelewy24, a Polish online payment systemrapidtransfer - Rapid Transfer for bank paymentsupi - India’s Unified Payments Interfacethb_qr - Thai QR paymentssberbank - Sberbank Online for Russian transfersaccount2card - Direct bank-to-card transferInitial support for cryptocurrency transactions has begun, but implementation is still ongoing. Below are the changes introduced so far, with further updates planned for upcoming releases. All modifications are backward-compatible.
cryptoTokenStandard parameter has been added to the order object in the Create Order endpoint and to the payout in the Create Payout Request
, required if the currency is set to a cryptocurrency. This allows specifying the blockchain standard for crypto payments, such as ERC20.amount and currency fields in order -> cost object were modified to support cryptocurrency transactions, including the addition of decimal precision requirements for crypto and the need to specify cryptoTokenStandard in the Create Order
endpoint and in payout -> cost in the Create Payout Request
.customer data container now allows customer details (firstName, lastName, middleName, phone, and email) from the order request to be automatically used on the payment page without re-entry, governed by the Use customer data as payer information setting. This behavior applies across all orders created using the Create Order endpoint.ipAddress, beneficiaryName, and beneficiarySurname to RecipientPersonalData for enhanced payer identification in the Create Payout Request endpoint.RUT to RecipientDocuments to support Chilean taxpayer identification in the Create Payout Request endpoint.need_action has been added to the status model for both payments and payouts. This status indicates that further action is required to complete the transaction. More details can be found in the Available Actions per Status and Payout Scenarios sections.provider object has been added to the payments array in the response of the Retrieve Order Details endpoint and the Order Status Callback, which includes the payment provider's code.New feature: A new status object has been added to the payoutTransactions array in both the Retrieve Payout Status and Payout Callback endpoints. This object contains:
status: The current state of the payout, with possible values: in_progress, completed, cancelled, failed, and the new need_action.details: Nullable object providing additional error details if the payout fails, including:
errorId: Unique error identifier.providerMessage: Error message from the payment provider.code: Internal error code for categorizing the error.New feature: A new status object has been added to the payoutTransactions array in both the Retrieve Payout Status and Payout Callback endpoints to enhance payout status reporting. It includes the current state of the payout and detailed error information if the payout fails.
Update: The default cancellation time for orders has been reduced to 15 minutes. Refer to the timeLimit parameter in the Create Order endpoint for more details.
cancelled.Bug fix: Fixed an issue where customer details in a previous order were sometimes overwritten by updated data for the same customerId from a new order. Now, customer details always reflect the information provided at the time of the order's creation, even if they were changed in subsequent orders for the same customerId. This applies to both the Retrieve Order Details endpoint and the Callback.
transactionId field to the payments object in both the Retrieve Order Details API response and the Order Status Callback. This new field allows merchants to track the unique identifier for each transaction associated with an order, improving traceability and reconciliation of payments.paymentSettingsAlias in the order creation endpoint to control which payment configuration is used for processing the order. This feature is particularly useful for merchants who need to manage multiple configurations with the same provider.
To learn more about configuring and using aliases, please refer to the Alias Documentation.paymentSettingsAlias in the payout creation endpoint. This allows for precise control over which payment configuration is used for payouts.
To learn more about configuring and using aliases, please refer to the Alias Documentation.Fix: Resolved an issue where payouts could not be created if the DataEntryMode was not specified during payout creation, when only one DataEntryMode was available for the payment method. Now, the DataEntryMode is only required when there are multiple DataEntryMode available in the Retrieve Payout Methods endpoint response. If only one DataEntryMode is provided, it will be automatically applied, and no manual input is necessary.
Update: The response structure of the Retrieve Payout Status endpoint has been expanded. This includes additional fields that provide more detailed information about the payout process. Backward compatibility with the previous response format has been maintained, ensuring existing integrations continue to function without disruption.
Update: New values have been added to the transferType. The transferType can now include the following values:
virtual_accountkhipugiropayepsopen_finance