Changelog
New Features
Order Creation endpoint update
In the order creation endpoint, a new optional parameter webhookUrl
has been added to the paymentSettings
object. This parameter allows specifying an individual webhook for order status changes for each order. webhookUrl
is of type string and is validated as a URL, so it must begin with https://
.
If webhookUrl
is specified when creating an order, notifications about the order status change will be sent to this URL and will not be sent to the general webhook URL set for the shop.
The new parameter is highlighted in the code below:
{
"shopId": 1234,
"order": {
"orderNumber": "56573FDFVFDBWF",
"cost": {
"amount": "56.99",
"currency": "PHP"
}
},
"customer": {
"customerId": "56656",
"firstName": "John",
"lastName": "Doe",
"middleName": "James",
"phone": "79221110500",
"email": "john.doe@mymail.com"
},
"paymentSettings": {
"instrumentType": "wallet",
"providerCode": "connectpay",
"acquirerCode": "gcash",
"entryMode": null,
"autoCapture": true,
"timeLimit": "2024-02-03T10:51:49.086Z",
"redirectUrls": {
"success": "https://example.com/success",
"failure": "https://example.com/failure"
},
"webhookUrl": "https://example.com/webhook"
},
"paymentPageDesign": {
"alias": "default",
"format": "redirect"
}
}
Improvements
Customer ID uniqueness update
The logic for the customerId
parameter in the order creation endpoint has been modified. The customerId
can now be unique either within a shop or across the entire company/merchant. The existing logic remains unchanged for current merchants, meaning customerId
uniqueness remains within the shop by default. This update simply adds the option to change this setting via the technical support. To determine the setting for your shop, check the admin panel of your merchant account under the settings menu in the field 'External customer ID unique for'.
Changes expected in the next release
Payouts
Addition of a new endpoint and future deprecation of an existing endpoint
In future versions, the endpoint /payouts/fields/{providerCode}/{instrumentType}/
Retrieve Required Payout Fields will be declared deprecated. It will be replaced by a new endpoint, /api/v1/payouts/fields
Retrieve Required Payout Fields, which is currently under development. The response structures of these endpoints will be identical, but the new endpoint will support a significantly larger number of parameters in the request, allowing it to support a wider range of providers.
The /payouts/fields/{providerCode}/{instrumentType}/
Retrieve Required Payout Fields endpoint will gradually be discontinued. We will make a separate announcement to inform you when it is officially deprecated.
Addition of a new parameter in the payout creation endpoint
A new optional parameter, transferType
, will be added to the Payout Creation Request. The new transferType
parameter will be mandatory when creating a payout with instrumentType == bank_transfer
.
The new parameter that will be added is highlighted in this request example:
{
"shopId": 2,
"payout": {
"cost": {
"amount": "100.50",
"currency": "PHP"
},
"payoutNumber": "43242332"
},
"purpose": "string",
"providerCode": "connectpay",
"acquirerCode": "gcash",
"instrumentType": "bank_transfer",
"transferType": "bank_wire",
"customer": {
"customerId": "56656",
"firstName": "John",
"lastName": "Doe",
"middleName": "James",
"phone": "79221110500",
"email": "john.doe@mymail.com"
}
}
Orders
The changes mentioned in the previous changelog (14.05.2024) regarding the webhook with breaking changes will not be made in this release but will be implemented in the next release on 11.06.2024. For now, the webhook remains unchanged.
The webhook for orders will change in the next release (11.06.2024) without backward compatibility.
Lines highlighted will be removed from the webhook in the next release.
{
"id": 77,
"number": "7_1706275173",
"status": "in_progress",
"cost": {
"amount": "56.99",
"currency": "USD"
},
"timeLimit": {
"date": "2024-01-27 07:45:51.000000",
"timezone_type": 3,
"timezone": "UTC"
},
"orderCreatedAt": {
"date": "2024-01-26 13:19:33.222170",
"timezone_type": 3,
"timezone": "UTC"
},
"orderPaidAt": {
"date": "2024-01-26 13:19:33.222170",
"timezone_type": 3,
"timezone": "UTC"
},
"captureNeeded": false,
"payments": [
{
"id": "79",
"type": "payment",
"parentPaymentId": "83",
"cost": {
"amount": "56.99",
"currency": "USD"
},
"acquirerCode": "fyst",
"paymentMethod": "card",
"paymentDetails": {
"type": "card",
"authCode": "auth94753457343",
"rrn": "rrn583743856734",
"maskedCardNumber": "123456******1234"
}
}
],
"customer": {
"id": 13,
"name": "John",
"middleName": "James",
"surname": "Doe",
"phone": "79221110500",
"email": "john.doe@mymail.com"
},
"data": {
"shopId": 123,
"orderNumber": "56573FDFVFDBWF",
"orderStatus": "in_progress",
"cost": {
"amount": "56.99",
"currency": "USD"
},
"timeLimit": "2023-08-29T15:34:56+03:00",
"orderCreatedAt": "2023-08-29T15:34:56+03:00",
"orderPaidAt": "2023-08-29T15:34:56+03:00",
"autoCapture": true,
"payments": [
{
"paymentId": "79",
"paymentType": "payment",
"parentPayment": "83",
"cost": {
"amount": "56.99",
"currency": "USD"
},
"acquirer": {
"code": "fyst"
},
"instrumentType": "card",
"paymentDetails": {
"authCode": "auth94753457343",
"maskedCardNumber": "123456******1234",
"rrn": "rrn583743856734"
}
}
],
"customer": {
"customerId": "56656",
"firstName": "John",
"lastName": "Doe",
"middleName": "James",
"phone": "79221110500",
"email": "john.doe@mymail.com"
}
}
}