Synchrony Financial · Capability

Synchrony Financial Retail Credit

Unified retail credit capability combining Synchrony's credit authorization and Quickscreen preapproval APIs. Enables merchants to offer instant credit decisions, process purchases on credit, handle payments, and manage refunds and reversals across web, mobile, and point-of-sale channels.

Run with Naftiko Synchrony FinancialRetail CreditCredit AuthorizationConsumer FinancePayments

What You Can Do

POST
Submit preapproval — Run a Quickscreen preapproval to offer instant credit to a customer.
/v1/preapprovals
POST
Submit application — Submit a full credit card application for instant decision.
/v1/applications
GET
Get application decision — Retrieve the decision for a submitted credit application.
/v1/applications/{applicationId}
POST
Create purchase — Authorize a purchase transaction on a Synchrony credit account.
/v1/purchases
POST
Create preauthorization — Place an authorization hold on a Synchrony credit account.
/v1/preauthorizations
POST
Create payment — Process a payment to a customer's Synchrony credit account.
/v1/payments
POST
Create refund — Process a refund to a customer's Synchrony credit account.
/v1/refunds
POST
Create reversal — Reverse or void a prior Synchrony credit transaction.
/v1/reversals

MCP Tools

submit-credit-preapproval

Run a soft-pull Quickscreen preapproval to instantly offer credit to a customer by name and address.

submit-credit-application

Submit a full Synchrony credit card application for an instant credit decision.

get-application-decision

Retrieve the credit decision for a previously submitted application.

read-only idempotent
authorize-purchase

Authorize a retail credit purchase transaction on a Synchrony account.

create-preauthorization

Place an authorization hold on a Synchrony credit account for future capture.

process-payment

Process a payment to reduce a customer's Synchrony credit balance.

process-refund

Refund a prior Synchrony credit transaction to the customer's account.

reverse-transaction

Void or reverse a prior Synchrony credit transaction before settlement.

idempotent

APIs Used

synchrony-credit-auth synchrony-quickscreen

Capability Spec

retail-credit.yaml Raw ↑
naftiko: "1.0.0-alpha1"

info:
  label: "Synchrony Financial Retail Credit"
  description: >-
    Unified retail credit capability combining Synchrony's credit authorization
    and Quickscreen preapproval APIs. Enables merchants to offer instant credit
    decisions, process purchases on credit, handle payments, and manage refunds
    and reversals across web, mobile, and point-of-sale channels.
  tags:
    - Synchrony Financial
    - Retail Credit
    - Credit Authorization
    - Consumer Finance
    - Payments
  created: "2026-05-03"
  modified: "2026-05-03"

binds:
  - namespace: env
    keys:
      SYNCHRONY_API_TOKEN: SYNCHRONY_API_TOKEN

capability:
  consumes:
    - import: synchrony-credit-auth
      location: ./shared/credit-authorization.yaml
    - import: synchrony-quickscreen
      location: ./shared/quickscreen-apply.yaml

  exposes:
    - type: rest
      port: 8080
      namespace: synchrony-retail-credit-api
      description: "Unified REST API for Synchrony retail credit operations."
      resources:
        - path: /v1/preapprovals
          name: preapprovals
          description: "Soft-pull credit preapproval checks."
          operations:
            - method: POST
              name: submit-preapproval
              description: "Run a Quickscreen preapproval to offer instant credit to a customer."
              call: "synchrony-quickscreen.submit-preapproval"
              with:
                merchantId: "rest.merchantId"
                firstName: "rest.firstName"
                lastName: "rest.lastName"
                zipCode: "rest.zipCode"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/applications
          name: applications
          description: "Full credit card application submissions."
          operations:
            - method: POST
              name: submit-application
              description: "Submit a full credit card application for instant decision."
              call: "synchrony-quickscreen.submit-application"
              with:
                merchantId: "rest.merchantId"
                offerId: "rest.offerId"
                firstName: "rest.firstName"
                lastName: "rest.lastName"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/applications/{applicationId}
          name: application-decision
          description: "Credit application decisions."
          operations:
            - method: GET
              name: get-application-decision
              description: "Retrieve the decision for a submitted credit application."
              call: "synchrony-quickscreen.get-application-decision"
              with:
                applicationId: "rest.applicationId"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/purchases
          name: purchases
          description: "Credit purchase authorizations."
          operations:
            - method: POST
              name: create-purchase
              description: "Authorize a purchase transaction on a Synchrony credit account."
              call: "synchrony-credit-auth.create-purchase"
              with:
                merchantId: "rest.merchantId"
                accountNumber: "rest.accountNumber"
                amount: "rest.amount"
                channel: "rest.channel"
                merchantOrderId: "rest.merchantOrderId"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/preauthorizations
          name: preauthorizations
          description: "Credit hold preauthorizations."
          operations:
            - method: POST
              name: create-preauthorization
              description: "Place an authorization hold on a Synchrony credit account."
              call: "synchrony-credit-auth.create-preauthorization"
              with:
                merchantId: "rest.merchantId"
                accountNumber: "rest.accountNumber"
                amount: "rest.amount"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/payments
          name: payments
          description: "Credit account payments."
          operations:
            - method: POST
              name: create-payment
              description: "Process a payment to a customer's Synchrony credit account."
              call: "synchrony-credit-auth.create-payment"
              with:
                merchantId: "rest.merchantId"
                accountNumber: "rest.accountNumber"
                amount: "rest.amount"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/refunds
          name: refunds
          description: "Credit transaction refunds."
          operations:
            - method: POST
              name: create-refund
              description: "Process a refund to a customer's Synchrony credit account."
              call: "synchrony-credit-auth.create-refund"
              with:
                merchantId: "rest.merchantId"
                originalTransactionId: "rest.originalTransactionId"
                amount: "rest.amount"
              outputParameters:
                - type: object
                  mapping: "$."

        - path: /v1/reversals
          name: reversals
          description: "Transaction reversals and voids."
          operations:
            - method: POST
              name: create-reversal
              description: "Reverse or void a prior Synchrony credit transaction."
              call: "synchrony-credit-auth.create-reversal"
              with:
                merchantId: "rest.merchantId"
                originalTransactionId: "rest.originalTransactionId"
              outputParameters:
                - type: object
                  mapping: "$."

    - type: mcp
      port: 9090
      namespace: synchrony-retail-credit-mcp
      transport: http
      description: "MCP server for AI-assisted retail credit management using Synchrony Financial APIs."
      tools:
        - name: submit-credit-preapproval
          description: "Run a soft-pull Quickscreen preapproval to instantly offer credit to a customer by name and address."
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "synchrony-quickscreen.submit-preapproval"
          with:
            merchantId: "tools.merchantId"
            firstName: "tools.firstName"
            lastName: "tools.lastName"
            zipCode: "tools.zipCode"
          outputParameters:
            - type: object
              mapping: "$."

        - name: submit-credit-application
          description: "Submit a full Synchrony credit card application for an instant credit decision."
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "synchrony-quickscreen.submit-application"
          with:
            merchantId: "tools.merchantId"
            offerId: "tools.offerId"
            firstName: "tools.firstName"
            lastName: "tools.lastName"
          outputParameters:
            - type: object
              mapping: "$."

        - name: get-application-decision
          description: "Retrieve the credit decision for a previously submitted application."
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: "synchrony-quickscreen.get-application-decision"
          with:
            applicationId: "tools.applicationId"
          outputParameters:
            - type: object
              mapping: "$."

        - name: authorize-purchase
          description: "Authorize a retail credit purchase transaction on a Synchrony account."
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "synchrony-credit-auth.create-purchase"
          with:
            merchantId: "tools.merchantId"
            accountNumber: "tools.accountNumber"
            amount: "tools.amount"
            channel: "tools.channel"
            merchantOrderId: "tools.merchantOrderId"
          outputParameters:
            - type: object
              mapping: "$."

        - name: create-preauthorization
          description: "Place an authorization hold on a Synchrony credit account for future capture."
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "synchrony-credit-auth.create-preauthorization"
          with:
            merchantId: "tools.merchantId"
            accountNumber: "tools.accountNumber"
            amount: "tools.amount"
          outputParameters:
            - type: object
              mapping: "$."

        - name: process-payment
          description: "Process a payment to reduce a customer's Synchrony credit balance."
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "synchrony-credit-auth.create-payment"
          with:
            merchantId: "tools.merchantId"
            accountNumber: "tools.accountNumber"
            amount: "tools.amount"
          outputParameters:
            - type: object
              mapping: "$."

        - name: process-refund
          description: "Refund a prior Synchrony credit transaction to the customer's account."
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "synchrony-credit-auth.create-refund"
          with:
            merchantId: "tools.merchantId"
            originalTransactionId: "tools.originalTransactionId"
            amount: "tools.amount"
          outputParameters:
            - type: object
              mapping: "$."

        - name: reverse-transaction
          description: "Void or reverse a prior Synchrony credit transaction before settlement."
          hints:
            readOnly: false
            destructive: true
            idempotent: true
          call: "synchrony-credit-auth.create-reversal"
          with:
            merchantId: "tools.merchantId"
            originalTransactionId: "tools.originalTransactionId"
          outputParameters:
            - type: object
              mapping: "$."