Загрузите счет-фактуру Stripe через Java с определенным языком

#java #spring-boot #stripe-payments

Вопрос:

Я работаю над приложением Spring Boot с интеграцией Stripe для управления платежами.

Когда пользователь имеет дело с оплатой, счет-фактура генерируется с помощью Stripe. Приложение загружает этот счет из Stripe, чтобы скопировать его в облачном провайдере с помощью API S3. Все это работает правильно.

Меня беспокоит то, что пользователи приложений могут выбирать другой язык.

При загрузке накладной с полосой через панель управления полосами накладная автоматически создается на языке, определенном в веб-браузере. Я хотел бы иметь возможность «настроить» язык при загрузке счета-фактуры через API в зависимости от настроек пользователя.

Вот как выглядит мой текущий код:

 public void copyInvoice(Etude etude, String invoiceName, URL invoiceURL, String bucketName) {      
        var invoiceTmp = new File(System.getProperty("java.io.tmpdir")   invoiceName);
        try {
            var defaultLocale = Locale.getDefault();
            log.debug("copyInvoice - defaultLocale : {}", defaultLocale);
            FileUtils.copyURLToFile(invoiceDTO.getUrl(), invoiceTmp);
            var s3 = this.getCredentials();
            s3.putObject(new PutObjectRequest(bucketName, "invoices/"   invoiceName, invoiceTmp));
            invoiceTmp.delete();
        } catch (IOException e) {
            log.error("copyInvoice, IOException exception when copying invoice from Stripe", e);
        }
    }
 

При попытке с моей стороны сгенерированный счет, загруженный этим кодом, всегда на английском языке, даже если связанный клиент в полосе установлен как французский, страна счета-фактуры-FR (счет-фактура), а моя локаль JVM по умолчанию-fr_FR.

Заранее спасибо за все предложения и советы !

Ответ №1:

К сожалению, невозможно определить язык при получении PDF-файла из счета-фактуры. Язык определяется локализацией браузера и не может быть установлен с помощью API.

Комментарии:

1. Спасибо за обратную связь, Пол. Может быть, есть что-то, о чем стоит подумать для будущих улучшений.