> ## Documentation Index
> Fetch the complete documentation index at: https://docs.synctera.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create autopay configuration

> > 🚧 Beta
> This is a Beta endpoint. Feedback from the community is welcome. We may make breaking changes to this endpoint.

Create an autopay configuration for a lending account. Only one active autopay
configuration can exist per lending account.




## OpenAPI

````yaml openapi-v1.json post /autopay_configs
openapi: 3.0.3
info:
  description: >-
    This is the official reference documentation for Synctera APIs. If you need
    something specific or have a question, <a class='text-blue-600'
    href='https://synctera.com/contact-us' target='_blank'
    rel='noreferrer'>contact us</a>.</p>
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  title: Synctera API
  version: 1.187.0
servers:
  - description: Production
    url: https://api.synctera.com/v1
  - description: Sandbox (no real world financial impact)
    url: https://api-sandbox.synctera.com/v1
security:
  - bearerAuth: []
tags:
  - description: |
      Requests to create and manage Rewards
    name: Rewards (beta)
  - description: Requests to generate simulated webhooks
    name: Card Webhook Simulations
  - description: >-
      Testing endpoints to simulate in-store cash deposits. Available in sandbox
      environments only.
    name: In-Store Cash Deposit Simulations
  - description: Create and manage spending controls
    name: Spend Controls (beta)
  - description: Rates
    name: Rates
  - description: Requests to create and manage webhooks
    name: Webhooks
  - description: Tenant Config
    name: Tenant Config
  - description: FDX authentication and data transfer using Plaid Core Exchange
    name: Plaid Core Exchange (beta)
  - description: Create and manage disputes
    name: Disputes
  - description: Requests to simulate card payments
    name: Card Simulations
  - description: >-
      Aggregated write-off amounts for lending accounts, computed from posted
      transactions.
    name: Write Off Amounts
  - description: |
      Manage fee products and fee configs for automated fee collection
    name: Fee Products
  - description: Apple Pay APIs
    name: Apple Pay
  - description: Lending Config
    name: Lending Config
  - description: Payments related to lending accounts
    name: Payments
  - description: Manage negative balance processes
    name: Negative Balance
  - description: Configuration for mapping LoanPro events to Payola transaction parameters
    name: LoanPro Transaction Event Config
  - description: Requests to generate simulated transactions
    name: Cash Transaction Simulations (alpha)
  - description: Create and manage transactions
    name: Transactions (beta)
  - description: Autopay payment records for billing periods
    name: Autopays
  - description: Create and manage accounts
    name: Accounts
  - description: |
      Requests to create and manage batch payments
    name: Batch Payments (alpha)
  - description: Billing rates
    name: Billing Rates
  - description: Bank Delinquency Configuration
    name: Bank Delinquency Configuration
  - description: >-
      Rules that map a posted payment transaction (bank/partner + transaction
      attributes) to a regulatory payment code. NULL match columns act as
      wildcards.
    name: Payment Code Configuration
  - description: Create and manage Synctera Pay templates
    name: SyncteraPay
  - description: |
      Manage reward products and reward configs for automated cashback rewards
    name: Reward Products
  - description: Requests to create and manage card disputes
    name: Card Disputes
  - description: >-
      Per bank/partner account-type mapping to FFIEC collateral codes used for
      regulatory call report furnishment.
    name: Collateral Code Configuration
  - description: Bulk card issuance
    name: Bulk Issuance
  - description: Autopay configuration management for lending accounts
    name: Autopay Configs
  - description: Request to create and manage exclusions
    name: Statements
  - description: Create and manage barcodes for in-store cash deposits
    name: In-Store Cash Deposits
  - description: Customer Service Details for disputes and billing inquiries
    name: Customer Service Details
  - description: Create a credit application.
    name: Applications (beta)
  - description: Requests to generate simulated transactions
    name: Card Transaction Simulations
  - description: Billing period summaries
    name: Billing Period Summaries
  - description: Requests to issue and manage cards
    name: Cards
  - description: Push and pull from cards
    name: External Cards
  - description: |
      Requests to create and manage fees
    name: Fees (beta)
paths:
  /autopay_configs:
    summary: Autopay Configurations
    post:
      tags:
        - Autopay Configs
      summary: Create autopay configuration
      description: >
        > 🚧 Beta

        > This is a Beta endpoint. Feedback from the community is welcome. We
        may make breaking changes to this endpoint.


        Create an autopay configuration for a lending account. Only one active
        autopay

        configuration can exist per lending account.
      operationId: createAutopayConfig
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/autopay_config_create_request'
        description: Autopay configuration to create
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/autopay_config'
          description: Autopay configuration created successfully
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '409':
          $ref: '#/components/responses/already_exists'
        '500':
          $ref: '#/components/responses/internal_server_error'
components:
  schemas:
    autopay_config_create_request:
      description: >
        Request to create an autopay configuration.

        Exactly one of person_id or business_id must be provided to identify the
        customer who owns this autopay.

        The customer must have an owner relationship (PRIMARY_ACCOUNT_HOLDER,
        ACCOUNT_HOLDER, or JOINT_ACCOUNT_HOLDER)

        with both the lending account and any internal payment source accounts.
      properties:
        business_id:
          description: |
            The business ID that owns this autopay configuration.
            Mutually exclusive with person_id - exactly one must be provided.
          example: b2c3d4e5-f6a7-8901-bcde-f12345678901
          format: uuid
          type: string
        config:
          $ref: '#/components/schemas/autopay_config_data'
        lending_account_id:
          description: The lending account ID to configure autopay for
          example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
          format: uuid
          type: string
        person_id:
          description: |
            The person ID who owns this autopay configuration.
            Mutually exclusive with business_id - exactly one must be provided.
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
          format: uuid
          type: string
        tenant:
          $ref: '#/components/schemas/tenant_id'
      required:
        - config
        - lending_account_id
      type: object
    autopay_config:
      description: Autopay configuration for a lending account
      properties:
        business_id:
          description: >-
            The business ID that owns this autopay configuration (mutually
            exclusive with person_id)
          example: b2c3d4e5-f6a7-8901-bcde-f12345678901
          format: uuid
          type: string
        config:
          $ref: '#/components/schemas/autopay_config_data'
        creation_time:
          description: Timestamp when the configuration was created
          example: '2024-01-15T10:30:00Z'
          format: date-time
          type: string
        id:
          description: Unique identifier for the autopay configuration
          example: 2d0f7601-ecc6-48b4-b82f-5d64fa84628b
          format: uuid
          type: string
        last_updated_time:
          description: Timestamp when the configuration was last updated
          example: '2024-01-15T10:30:00Z'
          format: date-time
          type: string
        lending_account_id:
          description: The lending account ID this configuration belongs to
          example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
          format: uuid
          type: string
        person_id:
          description: >-
            The person ID who owns this autopay configuration (mutually
            exclusive with business_id)
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
          format: uuid
          type: string
        status:
          $ref: '#/components/schemas/autopay_config_status'
        tenant:
          $ref: '#/components/schemas/tenant_id'
      required:
        - config
        - creation_time
        - id
        - last_updated_time
        - lending_account_id
        - status
        - tenant
      type: object
    autopay_config_data:
      description: >
        Autopay configuration settings.

        When autopay_type is SCHEDULED, amount_rule must be CURRENT_BALANCE and
        timing_rule must be DAILY.

        When autopay_type is STATEMENT, timing_rule must be ON_DUE_DATE or
        DAYS_BEFORE_DUE.
      properties:
        amount_rule:
          $ref: '#/components/schemas/autopay_amount_rule'
        autopay_type:
          $ref: '#/components/schemas/autopay_type'
        description_template:
          $ref: '#/components/schemas/autopay_description_template'
        failure_policy:
          $ref: '#/components/schemas/autopay_failure_policy'
        payment_configs:
          $ref: '#/components/schemas/autopay_payment_configs'
        payment_method:
          $ref: '#/components/schemas/autopay_payment_method'
        rule_configs:
          $ref: '#/components/schemas/autopay_rule_configs'
        timing_rule:
          $ref: '#/components/schemas/autopay_timing_rule'
      required:
        - amount_rule
        - autopay_type
        - failure_policy
        - payment_method
        - timing_rule
      type: object
    tenant_id:
      description: |
        The id of the tenant containing the resource.
      example: abcdef_ghijkl
      type: string
    autopay_config_status:
      description: Status of the autopay configuration
      enum:
        - ACTIVE
        - DISABLED
        - PAUSED
      type: string
    error:
      description: Synctera error responses in API v1 implement a custom error schema.
      properties:
        code:
          description: >
            A machine-readable string that identifies the error for programmatic
            use.
          example: BAD_REQUEST_BODY
          type: string
        detail:
          description: |
            A human-readable string explaining this particular error.
          example: 'Missing required fields: first_name, dob'
          type: string
        status:
          description: HTTP status code for this response
          example: 400
          type: integer
      title: Synctera error response
      type: object
    autopay_amount_rule:
      description: |
        Rule for calculating the autopay amount:
        - MINIMUM_DUE: Pay the minimum payment due
        - STATEMENT_BALANCE: Pay the full statement balance
        - CURRENT_BALANCE: Pay the current account balance
        - FIXED_AMOUNT: Pay a fixed amount
      enum:
        - CURRENT_BALANCE
        - FIXED_AMOUNT
        - MINIMUM_DUE
        - STATEMENT_BALANCE
      type: string
    autopay_type:
      description: >
        Controls when autopay is triggered:

        - STATEMENT: triggered once per billing cycle when a statement is
        created

        - SCHEDULED: triggered on a recurring cadence via EOD orchestration;
        requires amount_rule=CURRENT_BALANCE and timing_rule=DAILY
      enum:
        - SCHEDULED
        - STATEMENT
      type: string
    autopay_description_template:
      description: >
        Go template for payment description. Used for ACH addenda and internal
        transfer memo.

        Supports template variables:

        - {{.Last4AccountId}}: Last 4 characters of the lending account UUID

        - {{.BillingPeriodEndDate}}: End date of the billing period (YYYY-MM-DD)

        - {{.PaymentAmount}}: Payment amount formatted as currency (e.g.,
        "$50.00")

        Default: "Autopay"
      example: Autopay for account ending in {{.Last4AccountId}}
      type: string
    autopay_failure_policy:
      description: Policy for handling autopay failures
      enum:
        - NO_RETRY
      type: string
    autopay_payment_configs:
      description: Payment method-specific configurations
      properties:
        ach:
          $ref: '#/components/schemas/ach_payment_config'
        internal_transfer:
          $ref: '#/components/schemas/internal_transfer_payment_config'
      type: object
    autopay_payment_method:
      description: >
        Payment method for autopay:

        - ACH: Pull funds from an external account via ACH debit

        - INTERNAL_TRANSFER: Transfer funds from a Synctera platform account
        (generally the customer's own account)
      enum:
        - ACH
        - INTERNAL_TRANSFER
      type: string
    autopay_rule_configs:
      description: Rule-specific configurations
      properties:
        current_balance:
          $ref: '#/components/schemas/current_balance_config'
        days_before_due:
          $ref: '#/components/schemas/days_before_due_config'
        fixed_amount:
          $ref: '#/components/schemas/fixed_amount_config'
        minimum_due:
          $ref: '#/components/schemas/minimum_due_config'
        statement_balance:
          $ref: '#/components/schemas/statement_balance_config'
      type: object
    autopay_timing_rule:
      description: >
        Rule for when the autopay should fire. The valid set depends on
        autopay_type:

        - STATEMENT autopays use ON_DUE_DATE or DAYS_BEFORE_DUE (anchored to the
        billing due date).

        - SCHEDULED autopays use DAILY (future cadences like WEEKLY/BIWEEKLY
        will be added here).
      enum:
        - DAILY
        - DAYS_BEFORE_DUE
        - ON_DUE_DATE
      type: string
    ach_payment_config:
      description: Configuration specific to ACH payment method
      properties:
        external_account_id:
          description: The external account ID to debit via ACH
          example: 8f5b4c62-f5a0-4e68-9669-19dbc7a74d8e
          format: uuid
          type: string
        is_same_day:
          description: Whether to send as same-day ACH (default false)
          example: true
          type: boolean
        sec_code:
          description: Standard Entry Class Code (WEB, CCD, or PPD). Default is WEB.
          enum:
            - CCD
            - PPD
            - WEB
          example: WEB
          type: string
      required:
        - external_account_id
      type: object
    internal_transfer_payment_config:
      description: Configuration specific to internal transfer payment method
      properties:
        source_account_id:
          description: The internal Synctera platform account ID to transfer funds from
          example: 8f5b4c62-f5a0-4e68-9669-19dbc7a74d8e
          format: uuid
          type: string
        subtype:
          description: >-
            Transaction subtype for the internal transfer (default
            "autopay_payment")
          example: autopay_payment
          type: string
      required:
        - source_account_id
      type: object
    current_balance_config:
      description: Configuration for current balance amount rule
      type: object
    days_before_due_config:
      description: Configuration for days before due timing rule
      properties:
        offset_days:
          description: Number of days before the due date to schedule the autopay
          example: 3
          maximum: 30
          minimum: 1
          type: integer
      required:
        - offset_days
      type: object
    fixed_amount_config:
      description: Configuration for fixed amount autopay rule
      properties:
        amount:
          description: Fixed amount to pay in cents (e.g. $100.00 is 10000)
          example: 10000
          format: int64
          type: integer
      required:
        - amount
      type: object
    minimum_due_config:
      description: Configuration for minimum due amount rule
      type: object
    statement_balance_config:
      description: Configuration for statement balance amount rule
      type: object
  responses:
    bad_request:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Bad request
    unauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Unauthorized
    forbidden:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Forbidden
    already_exists:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Resource already exists
    internal_server_error:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
      description: Internal server error
  securitySchemes:
    bearerAuth:
      bearerFormat: api_key
      scheme: bearer
      type: http

````