---
title: "Create ACH mobile debit transaction"
method: POST
path: "/rest/v2/ach/mobile/transactions/debit"
tags: ["Ach Transactions"]
---

# Create ACH mobile debit transaction

`POST /rest/v2/ach/mobile/transactions/debit`

## Request

- The document declares no server URL.
- Auth: none declared. Required headers: `api-key`, `achmobilejwt`
- TypeScript: <https://skmtc.dev/xplorpay/apis/external-us-onboarding-workflow/docs/rest/v2/ach/mobile/transactions/debit/post.ts> (a function with typed inputs; its response is checked against the schema)

Create an ACH debit transaction of $1 or more using a mobile transaction token to transfer funds from the customer's bank account to the merchant's bank account.

## Headers

- `api-key` string, required
- `achmobilejwt` string, required

## Request body

- ClearentAchTransactionRequest
  - `type` 'CREDIT' | 'DEBIT', required: The transaction type.
  - `amount` string, required: The transaction amount.
  - `billing` Address: Contains the customer's billing address details.
    - `company` string: Company name associated with the billing address.
    - `street` string: Primary street address for the billing.
    - `street2` string: Secondary street address information, if available.
    - `city` string: City associated with the billing address.
    - `state` string: State or province of the billing address.
    - `zip` string: ZIP or postal code of the billing address.
    - `country` string: Country of the billing address.
    - `phone` string: Phone number associated with the billing address.
    - `first-name` string: First name of the billing contact.
    - `last-name` string: Last name of the billing contact.
  - `shipping` Address: Contains the customer's billing address details.
    - `company` string: Company name associated with the billing address.
    - `street` string: Primary street address for the billing.
    - `street2` string: Secondary street address information, if available.
    - `city` string: City associated with the billing address.
    - `state` string: State or province of the billing address.
    - `zip` string: ZIP or postal code of the billing address.
    - `country` string: Country of the billing address.
    - `phone` string: Phone number associated with the billing address.
    - `first-name` string: First name of the billing contact.
    - `last-name` string: Last name of the billing contact.
  - `invoice` string: The invoice number associated with the transaction.
  - `description` string: A short description of the transaction.
  - `comments` string: Additional remarks for the transaction.
  - `software-type` string: Name of the software type while submitting the transaction.
  - `software-type-version` string: Version of the software submitting the transaction.
  - `account-type` 'Checking' | 'Savings': The type of bank account.
  - `routing-number` string: The bank routing number associated with the account.
  - `account-number` string: The customer's bank account number.
  - `individual-name` string, required: The name of the individual associated with the bank account.
  - `validate-account` 'true' | 'false': Indicates whether to validate the bank account before processing.
  - `standard-entry-class-code` string: The ACH standard entry class (SEC) code for the transaction.
  - `id` string: A unique identifier for the transaction.
  - `tip-amount` string: The tip amount added to the transaction.
  - `purchase-order` string: The purchase order number for the transaction.
  - `email-receipt` string: Indicates whether to send an email receipt to the customer.
  - `email-address` string: The customer's email address.
  - `customer-id` string: A merchant-defined identifier for the customer.
  - `order-id` string: A merchant-defined identifier for the order.
  - `client-ip` string: The IP address of the client initiating the transaction.
  - `billing-is-shipping` string: Indicates whether the billing and shipping addresses are the same.
  - `create-token` string: Indicates whether to create a reusable transaction token.
  - `token-description` string: A description associated with the created token.
  - `check-field` string: Field used for duplicate transaction validation.
  - `check-field-mid` boolean: Indicates whether to include the merchant ID in duplicate checking.
  - `platform-fees` PlatformFee[]: Platform or service fees applied to the transaction.
    - `fee-name` 'DealManager' | 'FillMyBook': The name of the fee applied to the transaction.

## Response `200`

Successful Transaction

- AchTransaction: This model represents the ach transaction in the response
  - `type` 'Debit' | 'Credit', required: Type of the ACH transaction.
  - `amount` string: The transaction amount.
  - `status` 'Pending' | 'Settling' | 'Settled' | 'Returned' | 'Writing' | 'Declined' | 'Not_Confirmed' | 'Sent' | 'Rejected' | 'Funded' | 'Partially_Funded' | 'Completed': Current status of the ACH transaction. Possible values: Pending, Settling, Settled, Returned.
  - `routing-number` string, required: Bank routing number associated with the transaction.
  - `account-number` string, required: Last four digits of the bank account number.
  - `account-type` 'Checking' | 'Savings', required: Type of bank account.
  - `standard-entry-class-code` 'PPD', required: ACH Standard Entry Class (SEC) code. For example, PPD.
  - `individual-name` string: Name associated with the bank account.
  - `id` string: Unique identifier of the ACH transaction.
  - `check-status` 'Pending' | 'Rejected' | 'Debit Sent' | 'Cancelled' | 'Credit Sent' | 'Unprocessed': Check status of the ACH transaction. Possible values: Pending, Rejected, Debit Sent, Cancelled.
  - `funding-status` 'Pending' | 'No Credit' | 'Credit Sent' | 'Chargeback' | 'Debit Sent' | 'Unprocessed': Funding status of the ACH transaction. Possible values: Pending, No Credit, Credit Sent, Chargeback.
  - `invoice` string: Invoice number associated with the transaction.
  - `check-number` string: Check number used for duplicate transaction validation.
  - `billing` Address: Contains the customer's billing address details.
    - `company` string: Company name associated with the billing address.
    - `street` string: Primary street address for the billing.
    - `street2` string: Secondary street address information, if available.
    - `city` string: City associated with the billing address.
    - `state` string: State or province of the billing address.
    - `zip` string: ZIP or postal code of the billing address.
    - `country` string: Country of the billing address.
    - `phone` string: Phone number associated with the billing address.
    - `first-name` string: First name of the billing contact.
    - `last-name` string: Last name of the billing contact.
  - `shipping` Address: Contains the customer's billing address details.
    - `company` string: Company name associated with the billing address.
    - `street` string: Primary street address for the billing.
    - `street2` string: Secondary street address information, if available.
    - `city` string: City associated with the billing address.
    - `state` string: State or province of the billing address.
    - `zip` string: ZIP or postal code of the billing address.
    - `country` string: Country of the billing address.
    - `phone` string: Phone number associated with the billing address.
    - `first-name` string: First name of the billing contact.
    - `last-name` string: Last name of the billing contact.
  - `purchase-order` string: Purchase order number.
  - `order-id` string: A merchant-defined order identifier.
  - `status-change-date` string: Date and time when the transaction status last changed (UTC).
  - `customer-id` string: A merchant-defined customer identifier.
  - `email-address` string: The customer's email address.
  - `description` string: Short description of the transaction.
  - `comments` string: Additional comments associated with the transaction.
  - `billing-is-shipping` 'true' | 'false': Indicates whether the billing and shipping addresses are the same.
  - `display-message` string: A message describing the transaction status.
  - `provider-transaction-id` string: Transaction identifier assigned by the ACH provider.
  - `trace-number` string: ACH trace number associated with a settled or returned transaction.
  - `settled-date` string: Date and time when the transaction was settled (UTC).
  - `returned-date` string: Date and time when the transaction was returned (UTC).
  - `returned-code` string: NACHA return code for a returned transaction.
  - `returned-message` string: The description of the return reason.
  - `ach-token` AchTokenResponse: Tokenized ACH account information.
    - `token-id` string: Unique identifier of the ACH token.
    - `times-used` integer: Number of times the token has been used in an ACH transaction.
    - `last-used` string: Date and time when the token was last used (UTC).
    - `merchant-id` string: The merchant's unique identification number associated with the token.
    - `routing-number` string: Bank routing number
    - `account-number` string: Masked or last four digits of the bank account number.
    - `account-type` 'Checking' | 'Savings': Type of the bank account. Possible values: Checking, Savings.
    - `individual-name` string: Name associated with the bank account.
    - `token-description` string: A brief description of the ACH token.
    - `created` string: Date and time when the token was created (UTC).
    - `updated` string: Date and time when the token was last updated (UTC).
    - `customer-key` string: Unique customer key associated with the token.
    - `default` boolean: Indicates whether this token is the default for the card number.
  - `merchant-id` string: The merchant identifier associated with the token.
  - `terminal-id` string: Identifier of the terminal or API key used to create the transaction.
  - `software-type` string: Name of the software application that submitted the transaction.
  - `paya-authorization` string: Authorization reference returned by the Paya.
  - `processing-type` string: Processing type of the transaction.
  - `external-transaction-reference` string: Identifies the transaction reference provided by the requester and must be unique per requester.
  - `execution-date` string: Date when the ACH transaction is executed.
  - `token-id` string: Identifier for the ACH payment token.
  - `create-date` string: Date when the ACH transaction was created.
  - `micr-data` string: Contains the MICR data printed on the check.
  - `image-front-edoc-id` string: eDocs document ID for the front image of the check.
  - `image-back-edoc-id` string: eDocs document ID for the back image of the check.
  - `image-front` string: Check's front image as Base64.
  - `image-back` string: Check's back image as Base64.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Business Exception
- `403`: Forbidden
- `404`: Not Found
- `500`: Internal server error

---

[API](https://skmtc.dev/xplorpay/apis/external-us-onboarding-workflow.md) - [All operations](https://skmtc.dev/xplorpay/apis/external-us-onboarding-workflow/llms.txt) - [OpenAPI document](https://skmtc.dev/xplorpay/apis/external-us-onboarding-workflow/revisions/f37077c24b66?raw)
