Как быстро подключиться к международной платежной системе Stripe

Java

Введение в международные платежи Stripe

Полоса, основанная двумя братьями в своих 20-х годах, Патрик Коллисон и Джон Коллисон, обеспечивает онлайн платежные решения для компаний. Полоса взимается 2,9 процента каждой транзакции плюс плата за обработку в 30 центов в компании, которые он служит.

Многие китайские продавцы хотят использовать Stripe для создания веб-сайтов и сбора платежей. Stripe теперь называется «PayPal в эпоху мобильных устройств». В число обслуживаемых в настоящее время клиентов входят такие известные компании, как facebook, Twitter, Shopify, Kickstarter, Target, Wish, Digitalocean, Pinterest, Docker и Sap. Stripe также имеет большое количество индивидуальных клиентов и продавцов малого и среднего бизнеса. более 100 000 компаний по всему миру пользуются услугами Stripe, годовой объем транзакций на платформе превысил 1 миллиард долларов. В последние годы Stripe быстро развивается, и его доля на зарубежных рынках довольно высока. Stripe предлагает удобные для просмотра и использования способы оплаты, простой дизайн, простые в использовании платежи на месте и все, что вам нужно для создания быстрой и эффективной мобильной коммерции.

Представляем полосу

Stripe фокусируется на решении проблемы онлайн-платежей. Продукты Stripe охватывают все аспекты онлайн-платежей. В настоящее время он разделен на три основных продукта (Payments, Subscription, Connect) и три небольших продукта (Sigma, Atlas, Radar).

Payments

Платежи — это первый и самый основной продукт Stripe. Платежи предоставляют API и наборы инструментов, которые позволяют разработчикам разрабатывать собственные потоки платежей. Платежи принимают кредитные карты и распространенные сетевые способы оплаты (дебет ACH, биткойн, alipay, WeChat Pay), а при предоставлении клиенту токена, совместимого с PCI-DSS, конфиденциальная информация не будет проходить через сервер клиента (исключение). Stripe стремится упростить проблемы разработчиков, интегрируя платежи так быстро, как одна строка кода javascript (включая пользовательский интерфейс).

Subscription

Подписка на решить проблему заключается в том, насколько эффективным обрабатывающим цикл выставление счетов (повторяющиеся счеты). Полоса нашла много болей в биллинговом цикле и дает комплексное решение. Подписка может автоматически рассчитать количество периода скидки после отмены, плана пробации и поддержки на основе использования (на основе использования). Для бизнес-пользователей поддерживает в ценовой ценовой цене (базовая цена + абонента). Другим больным пунктом является период оплаты срок действия кредитной карты, информация о подписке может автоматически обновляться с новой картой после истечения с истекцией старой карты, работая с сетями кредитных карт, чтобы избежать платежей по кредитным картам.

Connect

Целевой группой сервиса Connect является Marketplace или Platform (по аналогии с Taobao, eBay, Eventtrib.). Платежные требования для этого типа платформы — связать покупателей с продавцами, в том числе один на один (например, Uber), еще один (например, заказ Taobao поступает от разных компаний), больше ко многим (например, Google Play). HBO, SHOWTIME и другие дополнительные услуги), фонд временный (типа окончания концерта, аналогичен роли Alipay). При оплате платформы в США это будет связано с налоговыми правовыми вопросами, и Connect уведомит платформу о соответствующих законах в определенных критических условиях определенных пользователей.

Sigma

Sigma — это продукт для анализа данных, основанный на всех данных, предоставленных на Stripe. Пользователям SIGMA (предприятиям) не нужно устанавливать сложный конвейер для анализа собственных платежных данных, а напрямую через веб-интерфейс Stripe и операторы SQL для комплексного анализа данных, быстрого и точного принятия бизнес-решений.

Atlas

Чтобы помочь большему количеству людей быстро создавать компании, Atlas берет на себя ответственность за все этапы создания компании одновременно. После того, как вы зарегистрируетесь в Atlas и внесете единовременный взнос, Stripe зарегистрирует для вас компанию в штате Делавэр в течение недели, откроет корпоративный банковский счет в Silicon Valley Bank и предоставит бесплатные юридические услуги, а также дополнительные юридические и налоговые услуги. . Благодаря предыдущему приобретению Indie Hackers Atlas также предоставляет предпринимательское сообщество, чтобы помочь пользователям, начинающим бизнес, быстро приступить к работе.

Radar

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

Интеграция полосовых платежей

Прежде чем интегрировать платеж Stripe, нам нужно понять платформу управления Stripe.

  1. платформа управления регистрацией,Адрес регистрации тестовой среды
  2. После успеха платформа управления сгенерирует для нас секретный ключ.
  3. Принесите этот ключ, когда вы запросите, тогда деньги будут переведены на ваш зарегистрированный счет платформы управления
  4. Привязав карту к платформе управления, вы можете выполнять такие операции, как снятие средств.

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

Мы выбрали одну из самых простых методов интеграции, которые заключаются в том, чтобы интегрировать страницу Chekcout Slipe, которая требует только несколько строк кода для интеграции возможностей платежей полосы. Примерный процесс представлен диаграммой последовательности следующим образом:

Страница CheckOut page Stripe предоставляется, нам не нужно вносить изменения. Как показано на следующих страницах.

Не говорите ерунды и сразу переходите к коду.Я использую Java для интеграции.Код для генерации Session выглядит следующим образом

 1@GetMapping("/pay")
2@ResponseBody
3public Map<String,String>  pay(HttpServletRequest httpRequest, HttpServletResponse httpResponse){
4    Map<String,String> resultMap = new HashMap<>();
5    try {
6        Stripe.apiKey = privateKey;
7        Map<String, Object> params = new HashMap<String, Object>();
8        ArrayList<String> paymentMethodTypes = new ArrayList<>();
9        paymentMethodTypes.add("card");
10        params.put("payment_method_types", paymentMethodTypes);
11        ArrayList<HashMap<String, Object>> lineItems = new ArrayList<>();
12        HashMap<String, Object> lineItem = new HashMap<String, Object>();
13        lineItem.put("name", "胡鹏飞测试商品");
14        lineItem.put("description", "这是一个测试单描述");
15        lineItem.put("amount", 500); // 支付金额
16        lineItem.put("currency", "usd"); //支付币种
17        lineItem.put("quantity", 1);
18        lineItems.add(lineItem);
19        params.put("line_items", lineItems);
20        //TODO 必须使用https 返回的回调地址
21        String uuid = UUID.randomUUID().toString();
22        params.put("client_reference_id", uuid);//业务系统唯一标识 即订单唯一编号
23        log.info("uuid:{}",uuid);
24        params.put("success_url", URLUtils.getBaseURl(httpRequest)+"/paySuccess");// 支付成功跳转页面
25        params.put("cancel_url",  URLUtils.getBaseURl(httpRequest)+"/payError");// 支付失败跳转页面
26        Session session = Session.create(params);
27        String sessionId = session.getId();
28        log.info("sessionId :{}",session.getId());
29        resultMap.put("sessionId",sessionId);
30    } catch (StripeException e) {
31        e.printStackTrace();
32    }
33    return resultMap;
34}

Среди них я не давал фронтенду передавать деловую информацию, писал ее в фоновом режиме, просто для удобства звонка. Вы можете видеть, что сгенерированный sessionId передается внешнему интерфейсу, а затем внешний интерфейс выполняет следующие вызовы. Вы можете сразу перейти на страницу оформления заказа для оплаты.

1stripe.redirectToCheckout({
2    sessionId: data.sessionId
3}).then(function (result) {
4    console.log(result);
5});

До сих пор мы интегрировали функцию оплаты Stripe с помощью этих нескольких строк кода. На самом деле Stripe поддерживает гораздо больше функций. Как мы уже говорили выше, он также поддерживает оплату подписки. Конечно, мы также не можем использовать его страницу оформления заказа, но Наш Пользовательская страница немного хлопотна, поэтому я не буду ее здесь представлять. Соответствующие документы перечислены ниже.

В коде GitHub также есть информация об интерфейсах, таких как возвраты и обратные вызовы.Я не буду представлять их здесь по одному.Вы можете зайти на github и вытащить код, чтобы проверить его.

Если вам интересно, можете обратить внимание на мой новый паблик аккаунт и поискать [Сумка с сокровищами программиста]. Или просто отсканируйте код ниже.

кодовый адрес

Релевантная информация