Betalingsconcepttest splitsen: voorwaarden en omgeving instellen

Voltooi elke stap in deze zelfstudie voordat u een van de buildvragen uitvoert. Het ontbreken van één enkele stap is de gemeenschappelijkste reden de stroom onderbreekt midden-tutorial.

​1. Adobe Commerce-vereisten

  • Adobe Commerce 2.4.5 of later (op-gebouw of Commerce Cloud)
  • Toegang tot het Commerce-project instellen (u voegt een module toe onder app/code/)
  • Toegang tot Commerce Admin

Alleen Commerce Cloud: I/O-gebeurtenis inschakelen

Voeg het volgende toe aan .magento.env.yaml en stel in alvorens u de module toevoegt:

stage:
  global:
    ENABLE_EVENTING: true

Waarschuwing: dit stelt moet met succes beëindigen alvorens het I/O de modulegebiedsdeel van de Gebeurtenis kan oplossen.

​2. Commerce Admin-configuratie

Doe deze stappen voor iets anders. Het uitchecken van JavaScript is afhankelijk van exacte tekenreeksovereenkomsten.

2 bis. Onder rembours inschakelen met de exacte titel

Stores > Configuration > Sales > Payment Methods > Cash On Delivery Payment

  • Enabled: ja
  • Title: Cash (dit is de exacte tekenreeks die overeenkomt met het uitchecken door JavaScript)

Nota: als uw opslag een verschillende cash-on-delivery (COD) implementatie of titel gebruikt, pas payment-method-helper.js in de module van Commerce aan.

2 ter. Winkelkrediet inschakelen

Stores > Configuration > Customers > Customer Configuration > Store Credit Options

  • Enable Store Credit Functionality: ja

2 quater. Winkelkrediet toevoegen aan uw testklant

Customers > All Customers > [uw testklant] > Store Credit > Update Balance

Voeg ten minste $50 toe in winkelkrediet. U gaat testen met een bestelling onder $100 totaal.

2 quinquies. De Commerce-integratie maken

System > Integrations > Add New Integration

  • Name: Split Payment App Builder (of elke andere naam die u wilt)

  • Op het tabblad API minimaal verlenen:

    • Magento_Sales::actions (vereist voor het cash-received eindpunt)
    • Magento_Sales::cancel (vereist voor het cash-decline eindpunt)
    • Offerte- of cartbeheer (volledige of relevante subset)
    • Customer balance (volledige of relevante subset)

Selecteer Save en vervolgens Activate .

Exemplaar alle vier waarden; zij worden slechts eens getoond:

Waarde
Omgevingsvariabele
Consumentencode
COMMERCE_CONSUMER_KEY
Consumentengeheim
COMMERCE_CONSUMER_SECRET
Toegangstoken
COMMERCE_ACCESS_TOKEN
Toegangstoken geheim
COMMERCE_ACCESS_TOKEN_SECRET

Sla deze waarden veilig op. U hebt ze in elk App Builder .env -bestand nodig.

​3. Adobe Developer Console en App Builder

  • Toegang tot een Adobe Developer Console-organisatie
  • Een project van App Builder (nieuw of één u hergebruikt)
  • Een werkruimte geconfigureerd; de aanwijzingen gaan uit van Stage
  • Adobe I/O Events toegevoegd als een service aan de werkruimte
  • Commerce verbonden als gebeurtenisleverancier voor de werkruimte

De gebeurteniscode die wordt gebruikt in het proefdrukken van het concept is: com.adobe.commerce.observer.sales_order_place_before

Als u geen Commerce als gebeurtenisleverancier hebt verbonden, zie ​ Commerce vormen om gebeurtenissen aan Adobe I/O ​ in de gids van de Rekbaarheid van Commerce uit te zenden.

​4. Lokale ontwikkelomgeving

# Required versions
node --version    # 18.x or later
npm --version     # any recent version

# Adobe I/O CLI
npm install -g @adobe/aio-cli

# Authenticate
aio login

# Select your project and workspace
aio app use
# Confirm the org, project, and workspace shown are correct

​5. Twee projectfolders om te weten

In deze zelfstudie worden twee afzonderlijke hoofdmappen gebruikt. Houd ze apart.

het projectwortel van Commerce (uw Magento git bewaarplaats):

<commerce-root>/
└── app/code/Client/SplitPayment/   ← Module goes here

het projectwortel van App Builder (de split-payment-orchestrator omslag van het bronpakket, of een nieuw project u creeert):

split-payment-orchestrator/
├── app.config.yaml
├── package.json
├── .env                            ← Copy from .env.example, then fill in
└── actions/

​6. entiteit_id vergeleken met increment_id

altijd gebruik entity_id (numerieke gegevensbestand identiteitskaart), niet increment_id (bijvoorbeeld 000000042), in de vraag van REST.

Zoeken entity_id via de URL van de Commerce Admin volgorde:

/admin/sales/order/view/order_id/42/   →   entity_id = 42

Of van het simulatiescript:

node scripts/simulate-split-payment.mjs show 42

​7. De drempel van $100

De gesplitste betalings-UI en de drempelwaardetedoelorden $100.00 of minder. De stroom gedraagt zich als volgt:

  • bij of onder $100: de gespleten betaling UI verschijnt; de klant kan een geld plus de creditspleet van de opslagplaats plaatsen
  • boven $100: CheckoutPlugin werpt een fout bij de betalingsstap

Om te testen, bouw een karretje waarvan subtotal, het verschepen, en de belasting minder dan of gelijk aan $100 zijn (bijvoorbeeld, een product onder $90 zodat rederij en de belasting nog onder het maximum passen).

De drempelwaarde wordt opgeslagen in:

  • Commerce config: split_payment/general/threshold (standaardwaarde 100 in etc/config.xml )
  • App Builder-omgeving: PAYMENT_THRESHOLD=100 (moet overeenkomen met Commerce)

​8. Snelheid (alleen Commerce Cloud)

App Builder-acties roepen Commerce aan via REST (/rest/V1/split-payment/orders/...). Als uw Commerce Cloud-project snel gebruikmaakt van IP voegende op lijst van gewenste personen voeg op lijst van gewenste personen, moeten de IP-adressen van het runtimeegress van App Builder worden .

hoe te controleren: stel eerst het simulatiescript in werking (directe krulling met het ondertekenen OAuth). Als dat werkt maar de App Builder-actie 403 retourneert, wordt de aanvraag mogelijk snel geblokkeerd.

Gebruik de huidige documentatie van Adobe voor App Builder egress IP waaiers en voeg hen aan uw Snelle configuratie toe zoals nodig.

Controlelijst voor verificatie

Bevestig het volgende voordat u de build-vragen start:

  • [ ] Commerce-versie is 2.4.5 of hoger
  • [ ] I/O-gebeurtenis ingeschakeld (Commerce Cloud) en geïmplementeerd
  • [ ] Onder rembours is ingeschakeld waarbij de titel exact op Cash is ingesteld
  • [ ] Winkelkrediet is ingeschakeld
  • [ ] De testklant heeft minimaal $50 aan winkelkrediet
  • [ ] De Commerce-integratie wordt gemaakt en geactiveerd en alle vier OAuth-waarden worden opgeslagen
  • [ ] Voor het App Builder-project zijn de I/O Events-service en de Commerce-gebeurtenisprovider geconfigureerd
  • [ ] aio login is voltooid en de juiste werkruimte is geselecteerd met aio app use
  • [ ] Node.js 18 of hoger is geïnstalleerd en de aio CLI is geïnstalleerd
  • [ ] .env de dossiers worden voorbereid per ​ Gesplitste betaling POC: de verwijzing van milieuvariabelen ​ (en uw bronpakket, als u één gebruikt)

Gerelateerde gesplitste betalingen POC-middelen

recommendation-more-help
commerce-learn-help-home