Invision Community 4: SEO, prepare for v5 and dormant account notifications Matt November 11, 2024Nov 11
Posted November 27, 20222 yr While its nice that Stripe offers payment by bank transfer via "Sofort", compared to other payment options the process is rather awful. Customers get charged immediately, but the order remains in a Pending state for multiple days. I lost count how many customers were contacting us as to why their money is gone but did not receive the product. It's especially infuriating for germans because "Sofort" in german means "Instant" - but its the exact opposite of instant. There are many ways to improve this, but at the very least I would suggest to properly communicate this with the customer. I added a warning via template hack. Would be nice if it were a default feature. Would likely save hundreds of support tickets a year without much effort. Edited November 27, 20222 yr by TyronX
November 27, 20222 yr Probably good to allow such a note for every payment option. If it’s filled, it shows, if not, it doesn’t show.
November 28, 20222 yr Agreed. It's not just SOFORT either, unfortunately it seems like the IPS team didn't test the Stripe options other than card.
November 30, 20222 yr On 11/27/2022 at 3:55 AM, TyronX said: While its nice that Stripe offers payment by bank transfer via "Sofort", compared to other payment options the process is rather awful. Customers get charged immediately, but the order remains in a Pending state for multiple days. I lost count how many customers were contacting us as to why their money is gone but did not receive the product. It's especially infuriating for germans because "Sofort" in german means "Instant" - but its the exact opposite of instant. There are many ways to improve this, but at the very least I would suggest to properly communicate this with the customer. I added a warning via template hack. Would be nice if it were a default feature. Would likely save hundreds of support tickets a year without much effort. In the image you posted, is that a custom plugin that displays that message or is it only there as an example?
November 30, 20222 yr On 11/27/2022 at 12:55 PM, TyronX said: ... I added a warning via template hack. ... He added this.
December 4, 20222 yr Author On 11/30/2022 at 7:48 AM, realspezz said: In the image you posted, is that a custom plugin that displays that message or is it only there as an example? It's a template hack as mentioned. In nexus/front/checkout/paymentForm I replaced <input type="radio" {{if (string) $input->value == (string) $k or ( isset( $input->options['userSuppliedInput'] ) and !\in_array( $input->value, array_keys( $input->options['options'] ) ) and $k == $input->options['userSuppliedInput'] )}}checked{{endif}} {{if $input->required === TRUE}}required{{endif}} {{if $input->disabled === TRUE or ( \is_array( $input->disabled ) and \in_array( $k, $input->disabled ) )}}disabled{{endif}} {{if isset( $input->options['toggles'][ $k ] ) and !empty( $input->options['toggles'][ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $input->options['toggles'][ $k ] )"}"{{endif}} id="elRadio_{$input->name}_{$k}" name="{$input->name}" value="{$k}"> with {{if $k==9}} <input type="radio" {{if (string) $input->value == (string) $k or ( isset( $input->options['userSuppliedInput'] ) and !\in_array( $input->value, array_keys( $input->options['options'] ) ) and $k == $input->options['userSuppliedInput'] )}}checked{{endif}} {{if $input->required === TRUE}}required{{endif}} {{if $input->disabled === TRUE or ( \is_array( $input->disabled ) and \in_array( $k, $input->disabled ) )}}disabled{{endif}} {{if isset( $input->options['toggles'][ $k ] ) and !empty( $input->options['toggles'][ $k ] )}}data-control="toggle" data-toggles="9-9_card,{expression="implode( ',', $input->options['toggles'][ $k ] )"}"{{endif}} id="elRadio_{$input->name}_{$k}" name="{$input->name}" value="{$k}"> {{else}} <input type="radio" {{if (string) $input->value == (string) $k or ( isset( $input->options['userSuppliedInput'] ) and !\in_array( $input->value, array_keys( $input->options['options'] ) ) and $k == $input->options['userSuppliedInput'] )}}checked{{endif}} {{if $input->required === TRUE}}required{{endif}} {{if $input->disabled === TRUE or ( \is_array( $input->disabled ) and \in_array( $k, $input->disabled ) )}}disabled{{endif}} {{if isset( $input->options['toggles'][ $k ] ) and !empty( $input->options['toggles'][ $k ] )}}data-control="toggle" data-toggles="{expression="implode( ',', $input->options['toggles'][ $k ] )"}"{{endif}} id="elRadio_{$input->name}_{$k}" name="{$input->name}" value="{$k}"> {{endif}} not sure if k==9 is the same for you. Might be a different value for you. You should be able to see it when you inspect the payment form html in your browser. and below {{endforeach}} I added this <div id="9-9_card" class="" style="display: none;"> <div style="display: block;"> <div data-role="errorMessage" class="ipsMessage ipsMessage_warning">Please be aware that Payment via SEPA / Klarna will withdraw the money right away, but it can take up to 14 working days for the payment to complete. On average it takes about 3 working days. Your order will be in a 'Pending' state for this duration.</div> </div></div>