Stripe POS Direct Payment
It is now possible to have a point of sale a2c link on an app ask users for payment directly in the app via the Stripe payment service
Firstly against the company that is in use on the POS link make sure the setting ‘Stripe API Secret Key’ has the customers secret key for stripe set in it otherwise it will error when trying to charge the customer and the order will not be created.
Callback / App URL Format
The app and Callback URL must follow the format specified in the Point of Sale (v2) Blog post make sure to use the updated POS callback url which is as follows:
https://oms.custom-gateway.net/v2/order-it/pos-unbranded/callback-v2/?k=...
otherwise follow the format specified in the previously mentioned blog post.
Stripe Callback parameters
Once you have your base POS callback url setup in order for it to use stripe you need to add on the following parameters:
Parameter | Values | Default | Description | Required (Y/N) |
---|---|---|---|---|
payment | stripe | N/A | The payment service for the POS to use | Y |
stripe_key | Alpha numeric string | N/A | Your Stripe API key | Y |
stripe_logo | https link to a logo image | https://stripe.com/img/documentation/checkout/marketplace.png | Logo to use at the top of the stripe popup | N |
statement_descriptor | 22 characters, cannot use the special characters <, >, ‘, or “, and must not consist solely of numbers | N/A | The descriptor to appear on customer’s statements | N |
These parameters must be encoded in the same way describe in the Point of Sale (v2) Blog post using %26 for ampersands or alternatively a tool such as https://meyerweb.com/eric/tools/dencoder/ can be used to encode the entire URL.
Order details
The stripe POS callback will do its own form to collect the customers details so the option for the app to do it is not required as it will just get overwritten by what stripe sets.
The price used in the stripe popup is the RRP price of the product in CPP and the company name at the top of the stripe popup is the name of the company used within the app link
Process
For understanding of what is going on the process that happens when the stripe POS is used is as Follows:
- Order is placed via Personalisation App
- Product state details and URL parameters are sent to OMS read and if stripe is set as the payment parameter the app is redirected to a page which loads the stripe Payment popup
- Once the stripe details are filled in and the pay button is clicked we charge the card and redirect the process back to the regular V2 Callback so any callback function such as the receipt can be displayed
Demonstration
Here is a demonstration of the Stripe setup using our own testing API details: