Skip to content

Express Checkout PR 4: Order Confirmation & Placement#95

Open
daniellzl wants to merge 8 commits intodl260302/express-checkout-pr3-shipping-totalsfrom
dl260302/express-checkout-pr4-confirmation
Open

Express Checkout PR 4: Order Confirmation & Placement#95
daniellzl wants to merge 8 commits intodl260302/express-checkout-pr3-shipping-totalsfrom
dl260302/express-checkout-pr4-confirmation

Conversation

@daniellzl
Copy link
Copy Markdown
Collaborator

@daniellzl daniellzl commented Mar 18, 2026

Tech Spec

Summary

  • readCheckout API (affirmAPI.js): reads checkout details from Affirm via GET /v2/checkout/{id}
  • ExpressConfirmation controller route: reads checkout from Affirm API, applies shipping/billing address, sets shipping method, sets customer email, recalculates basket, authorizes with Affirm, creates order, places order, sends confirmation email, cleans up AffirmExpressCart Custom Object

PR Stack (4 of 4)

  1. PR 1: Infrastructure & Configuration
  2. PR 2: UUID Generation + Checkout Object + UI
  3. PR 3: Shipping & Totals Endpoint
  4. PR 4 (this): Order Confirmation & Placement

Implements Step 4 of the Affirm Express Checkout Integration Guide.

Test plan

  • Verify full Express Checkout flow end-to-end (button click through order confirmation)
  • Verify shipping/billing addresses are correctly applied from Affirm checkout data
  • Verify order is created and placed successfully
  • Verify AffirmExpressCart Custom Object is cleaned up after order placement
  • Verify error handling for failed checkout reads and authorization

daniellzl and others added 2 commits March 18, 2026 09:15
Implements Step 4 of the Affirm Express Checkout Integration Guide:
- readCheckout API (affirmAPI.js): reads checkout details from Affirm
- ExpressConfirmation controller route: applies shipping/billing from Affirm
  checkout data, authorizes, creates order, places order, sends confirmation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Separate service entry for the v2 checkout read endpoint, distinct from
the v1 transaction read service. Provides independent monitoring and
configuration in Business Manager.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown

@virginiac32 virginiac32 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you add tests for the changes made in the 4 PRs?

};
}
};
/**
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unrelated to this change, but the auth() function should take a new orderId field so that the order id can be updated during auth call

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants