CreatePhysicalSaleRequest
The ID of the terminal to target. The terminal must belong to the provided point of sale.
nulluuid"0197c07b-3f6d-7be2-b848-702b08958128"If true no notification is sent to the SoftPay terminal, this might be relevant on "same-device" POS systems, where a App Switch initiates the payment. If the SoftPay app is always in the foreground, then it is recommended to use false, as this makes the SoftPay terminal more responsive.
falsefalseThe number of milliseconds the SoftPay terminal waits, before switching back to the origin app / activity. A null indicates no switch back. A 0 indicates "as fast as allowed". SoftPay enforces a minimum of 1 second for successful payments and 2 seconds for failed payments, due to scheme regulations. This can also be controlled in the intent redirect from a POS app to the SoftPay app.
null0ComponentName, e.g. package name / activity class to switch back to, once the payment is completed. This can also be controlled in the intent redirect from a POS app to the SoftPay app.
nullSpecify if surcharge should be applied to the transaction, if applicable.
nullfalseSpecify if dynamic currency conversion (DCC) should be applied to the transaction, if applicable.
nullfalsePhysical sale data used to create the terminal transaction.
DEPRECATED - Use terminal.id instead
The ID of the Softpay point of sale to associate the physical sale with.
uuid"01924737-9c18-71c0-ab1a-88698eaceabf"The transaction type to process. Use PAYMENT for purchases and PAYOUT for refunds. Defaults to PAYMENT if not given.
Note that PAYOUT requires the feature to be enabled by SoftPay.
"PAYMENT""PAYMENT""PAYOUT""PAYMENT"The amount must be defined in minor units. E.g. 2,50 DKK must be set as 250.
1000The currency code of the payment. For Danish Kroner defined as DKK. ISO 4217 alpha-3 (e.g., DKK)
^[A-Z]{3}$"DKK"The URL to receive the webhook with the final transaction result.
urilength <= 1024"https://example.com/notification"This is the transaction reference, similar to an order ID.
The reference SHOULD be unique for each payment, as some acquirers enforce per-payment uniqueness.
Using a duplicate reference may result in failed payments or make reconciliation difficult.
Only ASCII alphanumeric characters and dashes are allowed.
^[A-Za-z0-9-]{1,36}$1 <= length <= 36"store-sale-1"A list of pass through attributes that is sent back to the merchant on webhooks. Max size is 1kb.
An optional merchant defined customer id used to uniquely identify a user in the merchant system.
"User159"Customer info associated with the sale. It is recommended to send all the info that is available.
The first name of the paying customer.
1 <= length"Peter"The last name of the paying customer.
1 <= length"Nielsen"The date of birth of the cardholder in YYYY-MM-DD format.
date"2000-07-25"The email of the paying customer.
1 <= length"email@example.com"E.164 phone number format with a single space between country code and local number. No additional spaces allowed.
Format: "+[countryCode] [number]".
^\+\d{1,3} \d+$"+45 12345678"The shipping address of the purchase. If no wares are shipped, leave this empty. If billing and shipping address is the same, then fill both properties with identical information.
ISO 3166-1 alpha-2 country code
2 <= length <= 2"DK"The local postal code of the address
1 <= length <= 16"1400"The city
1 <= length <= 50"København"The first address line. Most address only has a singular line.
1 <= length <= 50"Torvegade 45"Second address line. Only use if address contains multiple lines. Always start with line1.
1 <= length <= 50"2. th."Third address line. Only use if address contains multiple lines. Always start with line1 and line2.
1 <= length <= 50"Christianshavn"The billing address of the customer. Often the personal address of the customer or the business address of paying company. If billing and shipping address is the same, then fill both properties with identical information.
ISO 3166-1 alpha-2 country code
2 <= length <= 2"DK"The local postal code of the address
1 <= length <= 16"1400"The city
1 <= length <= 50"København"The first address line. Most address only has a singular line.
1 <= length <= 50"Torvegade 45"Second address line. Only use if address contains multiple lines. Always start with line1.
1 <= length <= 50"2. th."Third address line. Only use if address contains multiple lines. Always start with line1 and line2.
1 <= length <= 50"Christianshavn"{ "terminal": { "id": "0197c07b-3f6d-7be2-b848-702b08958128", "suppressAppNotifications": false, "switchBackTimeout": 0, "activityToResume": null, "surcharge": false, "dcc": false }, "transaction": { "pointOfSaleId": "01924737-9c18-71c0-ab1a-88698eaceabf", "type": "PAYMENT", "amount": 1000, "currency": "DKK", "notificationUrl": "https://example.com/notification", "reference": "store-sale-1", "attributes": { "orderId": "order-123", "cashRegisterId": "register-7" }, "customerId": "User159", "customer": { "firstName": "Peter", "lastName": "Nielsen", "birthdate": "2000-07-25", "email": "email@example.com", "phoneNumber": "+45 12345678", "shippingAddress": { "countryCode": "DK", "postalCode": "1400", "city": "København", "line1": "Torvegade 45" }, "billingAddress": { "countryCode": "DK", "postalCode": "1400", "city": "København", "line1": "Torvegade 45" } } }}