Issue:
FEATURE(connector): [Facilitapay] Add support for Pix Bank transfer

Documentation: https://sandbox-portal.facilitapay.com/#/docs

Resolution:
<think>
PR Context:
- Title: feat(connector): [Facilitapay] Add support for Pix Bank Transfers
- Merged: 2025-04-23T08:48:37Z
- Files changed: 30 files
- Commits: 30 commits

Implementation approach:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [x] New feature
- [ ] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [x] CI/CD

## Description
<!-- Describe your changes in detail -->

This PR does the following:

- Adds Facilitapay Connector configs
- Enables Facilitapay Connector in Core
  - Feature Matrix
  - Pix Bank Transfer (QRCode flow)
  - Does not support `Manual` capture
  - AccessToken flow
  - Requires 
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** feat(connector): [Facilitapay] Add support for Pix Bank Transfers (#7704)
Co-authored-by: hyperswitc
Files to modify:


**crates/api_models/src/enums.rs**
  Modify existing code

**crates/api_models/src/payments.rs**
  Modify existing code

**crates/api_models/src/payments/additional_info.rs**
  Modify existing code

**crates/common_enums/src/connector_enums.rs**
  Modify existing code

**crates/common_enums/src/enums.rs**
  Add:
    - enum: pub::BrazilStatesAbbreviation

**crates/connector_configs/src/connector.rs**
  Modify existing code

**crates/hyperswitch_connectors/src/connectors/facilitapay.rs**
  Add:
    - function: private::build_error_response
    - function: private::get_headers
    - function: private::get_url
    - function: private::get_request_body
    - function: private::build_request
    - impl: impl api::ConnectorCustomer for Facilitapay
    - mod: private::requests
    - mod: private::responses

**crates/hyperswitch_connectors/src/connectors/facilitapay/requests.rs**
  Add:
    - struct: pub::FacilitapayRouterData
    - struct: pub::FacilitapayAuthRequest
    - struct: pub::FacilitapayCredentials
    - struct: pub::FacilitapayCardDetails
    - struct: pub::CardTransactionRequest
    - struct: pub::PixTransactionRequest
    - struct: pub::FacilitapayPaymentsRequest
    - struct: pub::FacilitapayRefundRequest
    - struct: pub::FacilitapayCustomerRequest
    - struct: pub::FacilitapayPerson
    - enum: pub::FacilitapayTransactionRequest
    - enum: pub::DocumentType

**crates/hyperswitch_connectors/src/connectors/facilitapay/responses.rs**
  Add:
    - struct: pub::FacilitapayAuthResponse
    - struct: pub::FacilitapaySubject
    - struct: pub::FacilitapayCustomerResponse
    - struct: pub::PixInfo
    - struct: pub::CreditCardResponseInfo
    - struct: pub::FacilitapayPaymentsResponse
    - struct: pub::OwnerCompany
    - struct: pub::BankInfo
    - struct: pub::BankAccountDetail
    - struct: pub::TransactionData
    - struct: pub::RefundData
    - struct: pub::FacilitapayRefundResponse
    - enum: pub::SubjectKycStatus
    - enum: pub::FacilitapayPaymentStatus

**crates/hyperswitch_connectors/src/connectors/facilitapay/transformers.rs**
  Remove:
    - struct: pub::FacilitapayRouterData
    - struct: pub::FacilitapayPaymentsRequest
    - struct: pub::FacilitapayCard
    - impl: impl TryFrom<&FacilitapayRouterData<&PaymentsAuthorizeRouterData>> for PaymentMethodData::Card(req_card)
  Add:
    - function: private::from_auth_type
    - impl: impl TryFrom<&FacilitapayRouterData<&types::PaymentsAuthorizeRouterData>> for bank_transfer_data
    - impl: impl FacilitapayAuthRequest

**crates/hyperswitch_connectors/src/connectors/itaubank/transformers.rs**
  Modify existing code

**crates/hyperswitch_connectors/src/default_implementations.rs**
  Modify existing code

**crates/hyperswitch_connectors/src/default_implementations_v2.rs**
  Modify existing code

**crates/hyperswitch_connectors/src/utils.rs**
  Add:
    - function: private::foreign_try_from
    - impl: impl ForeignTryFrom<String> for BrazilStatesAbbreviation

**crates/hyperswitch_domain_models/src/payment_method_data.rs**
  Modify existing code

**crates/payment_methods/src/configs/payment_connector_required_fields.rs**
  Modify existing code

**crates/router/src/core/admin.rs**
  Modify existing code

**crates/router/src/core/payments.rs**
  Add:
    - function: private::get_connector_customer_id

**crates/router/src/types/api.rs**
  Modify existing code

**crates/router/src/types/transformers.rs**
  Modify existing code