peachpayments/magento2-graphql-plugin

桃花支付托管模块,用于支持Magento 2的GraphQl。

安装次数: 5,041

依赖项: 1

建议者: 0

安全性: 0

星标: 0

分支: 0

类型:magento2-module

1.0.0 2023-04-13 07:59 UTC

This package is auto-updated.

Last update: 2024-09-17 10:21:18 UTC


README

安装

通过运行以下命令安装此模块,与桃花支付托管支付模块一起安装:

composer require peachpayments/magento2-graphql-plugin

GraphQL

为了允许GraphQL流程,使用核心Magento的setPaymentMethodOnCartplaceOrder方法。

在返回成功的订单ID后,使用getPeachHostedRedirectUrl方法将客户重定向到结算页面。在此阶段,订单应为待处理状态。从form_data中解析JSON对象,并将其作为_POST参数提交到指定的form_link URL。

在客户返回您指定的return_url后,调用getPeachHostedOrderStatus方法以获取成功(1)或拒绝(2)状态。如果状态码为3,请定期重试。

示例


# Set Peach Payments as payment method
mutation setPaymentMethodOnCart($cartId: String!){
  setPaymentMethodOnCart(input: {
      cart_id: $cartId
      payment_method: {
          code: "peachpayments_hosted_card"
      }
  }) {
    cart {
      selected_payment_method {
        code
      }
    }
  }
}

# Place order
mutation placeOrder($cartId: String!) {
  placeOrder(input: {cart_id: $cartId}) {
    order {
      order_number
    }
  }
}

# Get redirect URL and data
query getPeachHostedRedirectUrl($cartId: String!){
  getPeachHostedRedirectUrl(input: {
    cart_id: $cartId,
    return_url: "https://my.app.pwa/payment/welcome-back.html"
  }) {
    form_data
    form_link
  }
}

# Get status by order increment ID
query getPeachHostedOrderStatus($orderNumber: String!){
  getPeachHostedOrderStatus(input: { order_number: $orderNumber }) {
    status
  }
}

# Get order details, used for confirmation page
query getPeachHostedOrderDetailsData($cartId: String!) {
    getPeachHostedOrderDetailsData(cart_id: $cartId) {
        id
        ...OrderConfirmationPageFragment
    }
}