1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/cn-src-wechat-pay

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

wechat-pay

微信支付 — простой и удобный.

Использование

  1. Имена параметров максимально соответствуют официальным документам, поэтому можно сразу использовать их без дополнительных пояснений.
  2. Предоставлен интерфейс с минимальным набором параметров, не нужно беспокоиться о большом количестве параметров.
  3. Поддерживаются неизвестные поля ответа и значения перечисления, которые могут появиться в результате изменений API от WeChat.
  4. Уведомления от WeChat реализованы с использованием Spring Event, что упрощает использование.
  5. Wiremock — это веб-сервер для эмуляции запросов, который может быть полезен для создания полной среды эмуляции.

Предварительные условия использования

  1. Зарегистрируйте публичный аккаунт WeChat и бизнес-аккаунт.
  2. Получите ID публичного аккаунта (appid) и ID бизнес-аккаунта (mchId).
  3. Войдите в бизнес-аккаунт и настройте параметры безопасности API:
    • API 秘钥 (mchKey);
    • скачайте сертификат API (требуется для возврата средств).
  4. В бизнес-аккаунте перейдите в раздел «Продукты» и настройте каталог платежей.
  5. В разделе «Транзакции» настройте URL уведомлений (рекомендуется использовать пример: http://your_host/public/wechat/pay/refund_notify).
  6. Если вы находитесь на этапе разработки и тестирования, вам может потребоваться инструмент для обхода NAT и доменное имя ICP. Рекомендуется использовать natapp.cn.
  7. В каталоге samples есть примеры использования. Код, подобный System.getenv("wechat.pay.appId"), предназначен для получения конфиденциальной информации из переменных среды JVM. Вы можете настроить эти параметры извне и не изменять код примеров для запуска. Для разработчиков, использующих IDEA, рекомендуется плагин EnvFile для настройки конфиденциальных данных извне.

Координаты Maven

<dependency>
    <groupId>cn.javaer.wechat</groupId>
    <artifactId>wechat-pay</artifactId>
    <version>LATEST</version>
</dependency>

<dependency>
    <groupId>cn.javaer.wechat</groupId>
    <artifactId>wechat-spring-boot-starter-pay</artifactId>
    <version>LATEST</version>
</dependency>

Обычное использование

  1. Запустите веб-сервис для приёма уведомлений о результатах, чтобы протестировать его, запустите run-wiremock.sh для запуска сервера эмуляции, который будет принимать уведомления о результатах и отвечать на запросы.
  2. Пример использования:
WeChatPayConfigurator configurator = new WeChatPayConfigurator();
configurator.setAppId("");
configurator.setMchId("");
configurator.setMchKey("");
configurator.setPaymentNotifyUrl("http://your_host/public/wechat/pay/payment_notify");
configurator.setCertificatePath("");

WeChatPayService weChatPayService = new WeChatPayService(configurator);
// weChatPayService вызывает соответствующие методы.

Интеграция с Spring и Spring Boot

  • Интеграция Spring: настройте WeChatPayController и WeChatPayServiceFactoryBean, см. автоматическую настройку в wechat-spring-boot-starter-pay.
  • Spring Boot интеграция: настройте:
wechat.pay.appId=
wechat.pay.mchId=
wechat.pay.mchKey=
wechat.pay.paymentNotifyUrl=http://your_host/public/wechat/pay/payment_notify
wechat.pay.certificatePath=

Пример использования:

// Вызов интерфейса
@Autowired
private WeChatPayService weChatPayService
// Получение уведомлений о результатах
@Component
public class SamplePayEvent {

    /**
     * Уведомление о платеже.
     *
     * @param event PaymentNotifyEvent
     */
    @EventListener
    public void paymentNotifyEvent(final PaymentNotifyEvent event) {
        System.out.println(event);
    }

    /**
     * Уведомление об отмене платежа.
     *
     * @param event RefundNotifyEvent
     */
    @EventListener
    public void refundNotifyEvent(final RefundNotifyEvent event) {
        System.out.println(event);
    }
}

Введение

Вичат пэй — простой и удобный, интеграция с Spring Boot. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/cn-src-wechat-pay.git
git@api.gitlife.ru:oschina-mirror/cn-src-wechat-pay.git
oschina-mirror
cn-src-wechat-pay
cn-src-wechat-pay
master