pub struct Field71A {
pub code: String,
}
Expand description
Field 71: Charges and Fee Information
§Purpose
Specifies charge allocation and fee details for payment transactions. This field family determines which party bears transaction costs and provides detailed charge amounts for various fees associated with payment processing. Essential for transparent cost allocation and compliance with payment regulations.
§Field Options Overview
- Field 71A: Details of Charges (charge allocation code)
- Field 71F: Sender’s Charges (specific charge amounts)
- Field 71G: Receiver’s Charges (additional charge amounts)
§Business Context Applications
- Payment Processing: Charge allocation in MT 103 and other payment messages
- Cost Transparency: Clear identification of transaction costs
- Regulatory Compliance: Meeting charge disclosure requirements
- Customer Communication: Transparent fee structure communication
§Charge Allocation Principles
§Allocation Options (Field 71A)
- BEN: Beneficiary bears all charges
- OUR: Ordering customer bears all charges
- SHA: Shared charges (sender pays own bank, beneficiary pays others)
§Charge Types
- Correspondent Charges: Fees charged by intermediary banks
- Beneficiary Bank Charges: Fees charged by receiving bank
- Service Charges: Additional service fees
- Conversion Charges: Currency conversion fees
§Regional Considerations
- European Payments: SEPA charge regulations and transparency requirements
- US Payments: Federal Reserve and commercial bank fee structures
- Asian Markets: Local charge allocation practices
- Cross-Border: International payment fee coordination
§Error Prevention Guidelines
- Code Validation: Verify charge allocation codes are valid
- Amount Verification: Confirm charge amounts are reasonable
- Currency Consistency: Ensure charge currency matches context
- Disclosure Compliance: Meet regulatory charge disclosure requirements
§Related Fields Integration
- Field 32A: Value Date, Currency, Amount (transaction amount context)
- Field 33B: Currency/Instructed Amount (original amount before charges)
- Field 72: Sender to Receiver Information (charge instructions)
- Field 64: Closing Available Balance (net amount after charges)
§Compliance Framework
- Regulatory Requirements: Charge transparency and disclosure regulations
- Consumer Protection: Clear charge communication requirements
- Fee Regulation: Compliance with local fee regulation standards
- Audit Documentation: Complete charge allocation documentation
§See Also
-
Swift FIN User Handbook: Charge Field Specifications
-
Payment Regulations: Charge Transparency Requirements
-
Banking Fee Standards: International Charge Allocation
-
Customer Protection: Charge Disclosure Guidelines
Field 71A: Details of Charges
Specifies which party will bear the charges for the transaction. Mandatory field in payment messages for charge allocation transparency.
Fields§
§code: String
Charge allocation code
Format: 3!a - Three alphabetic characters Values: BEN (Beneficiary), OUR (Ordering customer), SHA (Shared) Error T08 if invalid code used
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Field71A
impl<'de> Deserialize<'de> for Field71A
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl SwiftField for Field71A
impl SwiftField for Field71A
Source§fn to_swift_string(&self) -> String
fn to_swift_string(&self) -> String
Source§fn format_spec() -> &'static str
fn format_spec() -> &'static str
impl StructuralPartialEq for Field71A
Auto Trait Implementations§
impl Freeze for Field71A
impl RefUnwindSafe for Field71A
impl Send for Field71A
impl Sync for Field71A
impl Unpin for Field71A
impl UnwindSafe for Field71A
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more